[531477] [Activity Explorer] Activity Explorer becomes "Process Map"
after a restart with null session
Bug 531477
Change-Id: I3d3f2737373bbbd73f8f09b9344f3eeb7f605719
Signed-off-by: Ali AKAR <ali.akar82@gmail.com>
diff --git a/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/ActivityExplorerEditor.java b/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/ActivityExplorerEditor.java
index 6983334..a2906b1 100644
--- a/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/ActivityExplorerEditor.java
+++ b/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/ActivityExplorerEditor.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006, 2017 THALES GLOBAL SERVICES.
+ * Copyright (c) 2006, 2018 THALES GLOBAL SERVICES.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -19,6 +19,7 @@
import org.eclipse.amalgam.explorer.activity.ui.api.editor.input.ActivityExplorerEditorInput;
import org.eclipse.amalgam.explorer.activity.ui.api.editor.pages.CommonActivityExplorerPage;
import org.eclipse.amalgam.explorer.activity.ui.api.editor.pages.DocumentationActivityExplorerPage;
+import org.eclipse.amalgam.explorer.activity.ui.api.editor.pages.MessagePage;
import org.eclipse.amalgam.explorer.activity.ui.api.editor.pages.OverviewActivityExplorerPage;
import org.eclipse.amalgam.explorer.activity.ui.api.manager.ActivityExplorerManager;
import org.eclipse.amalgam.explorer.activity.ui.internal.extension.point.manager.ActivityExplorerExtensionManager;
@@ -27,14 +28,18 @@
import org.eclipse.amalgam.explorer.activity.ui.internal.util.ActivityExplorerLoggerService;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
+import org.eclipse.jface.dialogs.IPageChangedListener;
+import org.eclipse.jface.dialogs.PageChangedEvent;
import org.eclipse.jface.util.IPropertyChangeListener;
import org.eclipse.jface.util.PropertyChangeEvent;
import org.eclipse.jface.viewers.ILabelDecorator;
import org.eclipse.sirius.business.api.session.Session;
import org.eclipse.sirius.business.api.session.SessionListener;
-import org.eclipse.sirius.business.api.session.SessionStatus;
import org.eclipse.sirius.ui.business.api.session.IEditingSession;
import org.eclipse.sirius.ui.business.api.session.SessionUIManager;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.CTabFolder;
+import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.ControlEvent;
import org.eclipse.swt.events.ControlListener;
import org.eclipse.swt.graphics.Image;
@@ -53,670 +58,686 @@
import org.eclipse.ui.views.properties.IPropertySheetPage;
import org.eclipse.ui.views.properties.tabbed.ITabbedPropertySheetPageContributor;
import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
-import org.osgi.framework.Bundle;
-import org.osgi.framework.FrameworkUtil;
/**
* Base class to implement Activity Explorer.
*/
-public class ActivityExplorerEditor extends SharedHeaderFormEditor implements ITabbedPropertySheetPageContributor,
- IPropertyChangeListener, IActivityExplorerEditorSessionListener, ISaveablesSource {
+public class ActivityExplorerEditor extends SharedHeaderFormEditor implements ITabbedPropertySheetPageContributor, IPropertyChangeListener, IActivityExplorerEditorSessionListener, ISaveablesSource {
- /**
- * Editor ID.
- */
- public static final String ID = "org.eclipse.amalgam.explorer.activity.ui.editor.activityExplorerEditor"; //$NON-NLS-1$
- /**
- * Part listener to detect editor activation.
- */
- private IPartListener _partListener;
+ /**
+ * Editor ID.
+ */
+ public static final String ID = "org.eclipse.amalgam.explorer.activity.ui.editor.activityExplorerEditor"; //$NON-NLS-1$
- /**
- * Property Sheet page.
- */
- private TabbedPropertySheetPage _propertySheetPage;
-
- /**
- * Hold active page at updating the editor
- */
- private int backToActivePage = 0;
+ /**
+ * Part listener to detect editor activation.
+ */
+ private IPartListener _partListener;
- public ActivityExplorerEditor() {
- ActivityExplorerManager.INSTANCE.setEditor(this);
- ActivityExplorerManager.INSTANCE.addActivityExplorerEditorListener(this);
- _partListener = new ActivityExplorerEditorPartListener(this);
- }
+ /**
+ * Property Sheet page.
+ */
+ private TabbedPropertySheetPage _propertySheetPage;
- @Override
- public void setFocus() {
- super.setFocus();
- getContainer().setFocus();
- ActivityExplorerManager.INSTANCE.setEditor(this);
- }
-
- /**
- * @see org.eclipse.ui.forms.editor.FormEditor#addPages()
- */
- @Override
- protected void addPages() {
- try {
-
- // set editor in the Activity Explorer Manager
- ActivityExplorerManager.INSTANCE.setEditor(this);
-
- // Add other Pages (plug-ins contribution)
- createContributedPages();
-
- } catch (PartInitException exception) {
- StringBuilder loggerMessage = new StringBuilder("ActivityExplorerEditor.addPages(..) _ "); //$NON-NLS-1$
- loggerMessage.append(exception.getMessage());
-
- ActivityExplorerLoggerService.getInstance().log(IStatus.ERROR, loggerMessage.toString(), exception);
-
- } catch (Exception exception) {
- StringBuilder loggerMessage = new StringBuilder("ActivityExplorerEditor.addPages(..) _ "); //$NON-NLS-1$
- loggerMessage.append(exception.getMessage());
-
- ActivityExplorerLoggerService.getInstance().log(IStatus.WARNING, loggerMessage.toString(), exception);
-
- }
-
- // Add a control listener to force reflow
- getContainer().addControlListener(new ControlListener() {
- public void controlMoved(ControlEvent cevent) {
- // Do nothing.
-
- }
-
- public void controlResized(ControlEvent cevent) {
- IFormPage activePageInstance = ActivityExplorerEditor.this.getActivePageInstance();
- IManagedForm managedForm = activePageInstance.getManagedForm();
- managedForm.reflow(true);
- }
-
- });
- // Refresh dirty state when the part is activated : open time for
- // instance.
- getHeaderForm().dirtyStateChanged();
- ActivityExplorerActivator.getDefault().getPreferenceStore().addPropertyChangeListener(this);
-
- // because the pages is update later
- pages.remove(null);
-
- }
-
- /**
- * Returns all pages in the Editor
- *
- * @return Vector<AbstractActivityExplorerPage>
- */
- @SuppressWarnings("unchecked")
- public Vector<CommonActivityExplorerPage> getPages() {
- Vector<CommonActivityExplorerPage> result = new Vector<CommonActivityExplorerPage>(pages.size());
- for (Object obj : pages) {
- if (obj instanceof CommonActivityExplorerPage) {
- result.add((CommonActivityExplorerPage) obj);
- }
- }
- return result;
- }
-
- /**
- * Remove all Pages contained in this editor.
- */
- public void removeAllPages() {
- /*
- * Removing first active page leads to reactivate (i.e, create the content if it wasn't) the next active one
- * The next will be deleted. For performance reasons we don't allow recreating page content
- * that will be deleted just after. see the behavior of the editor in org.eclipse.ui.forms.editor.FormEditor.pageChange(int) when the current page change:
- * That fixe bug: 487226
- */
- backToActivePage = getActivePage();
- int count = super.getPageCount();
- for (int i = count - 1; i >= 0; i--) {
- if (i != backToActivePage) {
- this.removePage(i);
- }
- }
- /*
- * As all page are removed before, the remaining is the first page
- * which it index is 0
- */
- this.removePage(0);
- }
-
- /**
- * Create and Insert Contributed pages in the editor
- */
- private void createContributedPages() throws PartInitException {
- List<CommonActivityExplorerPage> contributedPages = ActivityExplorerExtensionManager.getAllPages();
- Collections.sort(contributedPages);
- addOverviewPage(contributedPages);
- addContributedPages(contributedPages);
- }
-
- private void addContributedPages(List<CommonActivityExplorerPage> contributedPages) {
- for (CommonActivityExplorerPage page : contributedPages) {
- if ((page instanceof IVisibility) && !(page.getPosition() == 0)) {
- try {
- if (page.isVisible()) {
- addNewPage(page);
- }
- } catch (Throwable e) {
-
- StringBuilder loggerMessage = new StringBuilder(
- "ActivityExplorerEditor.addContributedPages(..) _ "); //$NON-NLS-1$
- loggerMessage
- .append("An error was occured at the evaluation of the predicat or the adding of page ") //$NON-NLS-1$
- .append(page.getId());
- loggerMessage.append(". Refer to the exception stack for more details"); //$NON-NLS-1$
-
- ActivityExplorerLoggerService.getInstance().log(IStatus.ERROR, loggerMessage.toString(), e);
- }
- }
- }
- }
-
- /**
- * Find a first visible overview page which it index is 0
- *
- * @param contributedPages
- * @throws PartInitException
- */
- private void addOverviewPage(List<CommonActivityExplorerPage> contributedPages) throws PartInitException {
- OverviewActivityExplorerPage overviewPage = null;
-
- for (CommonActivityExplorerPage page : contributedPages) {
-
- try {
- // Force to accept only overview page at the index 0.
- if (page.getPosition() == 0) {
-
- // bug 485652: check the visibility
- if ((page instanceof OverviewActivityExplorerPage) && (page.isVisible())) {
- overviewPage = (OverviewActivityExplorerPage) page;
- break;
- } else {
- // Log visibile pages with index 0 which are not
- // Overview pages
- if (page.isVisible()) {
- StringBuilder loggerMessage = new StringBuilder(
- "ActivityExplorerEditor.addOverviewPage(..) _ "); //$NON-NLS-1$
- loggerMessage.append("Page ").append(page.getId()); //$NON-NLS-1$
- loggerMessage
- .append(" is not an overview page. Only overview pages are allowed to index 0"); //$NON-NLS-1$
-
- ActivityExplorerLoggerService.getInstance().log(IStatus.WARNING, loggerMessage.toString(),
- null);
- }
- }
- } else {
- // Focus only on pages with index 0.
- // The list is sorted, if the first page has an index
- // different from 0, we stop.
- break;
- }
- } catch (Throwable e) {
- // Unknown errors from contributions
- StringBuilder loggerMessage = new StringBuilder("ActivityExplorerEditor.addOverviewPage(..) _ "); //$NON-NLS-1$
- loggerMessage.append("An error was occured at the evaluation of the predicat of page ") //$NON-NLS-1$
- .append(page.getId());
- loggerMessage.append(". Refer to the exception stack for more details"); //$NON-NLS-1$
-
- ActivityExplorerLoggerService.getInstance().log(IStatus.ERROR, loggerMessage.toString(), e);
- }
- }
-
- // Add the overview page
- if (overviewPage != null) {
- overviewPage.initialize(this);
- } else {
- // default page
- overviewPage = new OverviewActivityExplorerPage(this);
- }
-
- addPage(overviewPage);
- }
-
- /**
- * Create a documentation page.
- *
- * @return a not <code>null</code> instance.
- */
- protected IFormPage createDocumentationPage() {
- return new DocumentationActivityExplorerPage(this);
- }
-
- /**
- * Get or create the main Overview page
- *
- * @return a not <code>null</code> instance.
- */
- @Deprecated
- protected OverviewActivityExplorerPage getOrCreateOverviewActivityExplorerPage() {
- List<CommonActivityExplorerPage> contributedPages = ActivityExplorerExtensionManager.getAllPages();
- Collections.sort(contributedPages);
- if (!contributedPages.isEmpty()) {
- CommonActivityExplorerPage page = contributedPages.get(0);
- if ((page instanceof OverviewActivityExplorerPage) && (page.getPosition() == 0)) {
- page.initialize(this);
- return (OverviewActivityExplorerPage) page;
- }
- }
- return new OverviewActivityExplorerPage(this);
- }
-
- /**
- * @see org.eclipse.ui.forms.editor.FormEditor#dispose()
- */
- @Override
- public void dispose() {
- ActivityExplorerManager.INSTANCE.removeActivityExplorerEditorListener(this);
-
- // Dispose the editor from part listener
- if (null != _partListener) {
- ((ActivityExplorerEditorPartListener) _partListener).dispose();
- }
-
- // If the editor is not initialized yet, the editorSite may be null
- // (i.e, at restarting time)
- IEditorSite editorSite = getEditorSite();
- if (editorSite != null) {
- // Dispose the property sheet page.
- if (null != _propertySheetPage) {
- _propertySheetPage.dispose();
- _propertySheetPage = null;
- }
- // Unregister Sirius session listener.
- unregisterSession();
- // Remove part listener.
- if (null != _partListener) {
- editorSite.getPage().removePartListener(_partListener);
- _partListener = null;
- // Remove preference listener
- ActivityExplorerActivator.getDefault().getPreferenceStore().removePropertyChangeListener(this);
-
- super.dispose();
- }
- }
-
- if (null != getEditorInput()) {
- getEditorInput().dispose();
- }
-
- }
-
- /**
- * @see org.eclipse.ui.part.EditorPart#doSave(org.eclipse.core.runtime.IProgressMonitor)
- */
- @Override
- public void doSave(IProgressMonitor monitor) {
- // Ignore. This method is not called because ActivityExplorerEditor implements ISaveablesSource.
- // All saves will go through the ISaveablesSource / Saveable protocol.
- }
-
- /**
- * @param obj
- * @return the bundle containing the object's class or the class's name if it's not contained in a bundle
- */
- private String getBundleId(Object obj) {
- Bundle bundle = FrameworkUtil.getBundle(obj.getClass());
- if (bundle != null)
- {
- return bundle.getSymbolicName();
+ /**
+ * Hold active page at updating the editor
+ */
+ private int backToActivePage = 0;
+
+ protected IFormPage messagePage;
+
+ public ActivityExplorerEditor() {
+ ActivityExplorerManager.INSTANCE.setEditor(this);
+ ActivityExplorerManager.INSTANCE.addActivityExplorerEditorListener(this);
+ _partListener = new ActivityExplorerEditorPartListener(this);
}
- return obj.getClass().getCanonicalName();
- }
- /**
- * @see org.eclipse.ui.part.EditorPart#doSaveAs()
- */
- @Override
- public void doSaveAs() {
- // Do nothing.
- }
+ @Override
+ public void setFocus() {
+ super.setFocus();
+ getContainer().setFocus();
+ ActivityExplorerManager.INSTANCE.setEditor(this);
+ }
- /**
- * {@inheritDoc}
- */
- @SuppressWarnings("rawtypes")
- @Override
- public Object getAdapter(Class adapter) {
- if (IPropertySheetPage.class.equals(adapter)) {
- return getOrCreatePropertySheetPage();
- }
- return super.getAdapter(adapter);
- }
+ /**
+ * @see org.eclipse.ui.forms.editor.FormEditor#addPages()
+ */
+ @Override
+ protected void addPages() {
+ try {
- public static final String PROPERTIES_CONTRIBUTOR = "org.eclipse.amalgam.explorer.activity.ui.editor.properties"; //$NON-NLS-1$
+ // set editor in the Activity Explorer Manager
+ ActivityExplorerManager.INSTANCE.setEditor(this);
- /**
- * {@inheritDoc}
- */
- public String getContributorId() {
- return getSite().getId();// PROPERTIES_CONTRIBUTOR;
- }
+ // Add other Pages (plug-ins contribution)
+ createContributedPages();
- /**
- * @see org.eclipse.ui.part.EditorPart#getEditorInput()
- */
- @Override
- public ActivityExplorerEditorInput getEditorInput() {
- return (ActivityExplorerEditorInput) super.getEditorInput();
- }
+ } catch (PartInitException exception) {
+ StringBuilder loggerMessage = new StringBuilder("ActivityExplorerEditor.addPages(..) _ "); //$NON-NLS-1$
+ loggerMessage.append(exception.getMessage());
- /**
- * Get or create (first call) the property sheet page.
- */
- private IPropertySheetPage getOrCreatePropertySheetPage() {
- if ((null == _propertySheetPage)) {
- _propertySheetPage = new TabbedPropertySheetPage(this) {
- /**
- * {@inheritDoc}
- */
- @SuppressWarnings("synthetic-access")
- @Override
- public void dispose() {
- super.dispose();
- _propertySheetPage = null;
- }
+ ActivityExplorerLoggerService.getInstance().log(IStatus.ERROR, loggerMessage.toString(), exception);
- /**
- * {@inheritDoc}
- */
- @Override
- public void init(IPageSite pageSite) {
- super.init(pageSite);
- pageSite.setSelectionProvider(ActivityExplorerEditor.this.getEditorSite().getSelectionProvider());
- }
- };
- }
- return _propertySheetPage;
- }
+ } catch (Exception exception) {
+ StringBuilder loggerMessage = new StringBuilder("ActivityExplorerEditor.addPages(..) _ "); //$NON-NLS-1$
+ loggerMessage.append(exception.getMessage());
- /**
- * @see org.eclipse.ui.part.WorkbenchPart#getPartName()
- */
- @Override
- public String getPartName() {
- return getEditorInput().getName();
- }
+ ActivityExplorerLoggerService.getInstance().log(IStatus.WARNING, loggerMessage.toString(), exception);
+ }
- /**
- * Get property sheet page accessor.
- *
- * @return <code>null</code> if the property sheet view is not displayed.
- */
- public TabbedPropertySheetPage getPropertySheetPage() {
- return _propertySheetPage;
- }
+ // Add a control listener to force reflow
+ getContainer().addControlListener(new ControlListener() {
+ public void controlMoved(ControlEvent cevent) {
+ // Do nothing.
+ }
- /**
- * @see org.eclipse.ui.forms.editor.FormEditor#init(org.eclipse.ui.IEditorSite,
- * org.eclipse.ui.IEditorInput)
- */
- @Override
- public void init(IEditorSite site, IEditorInput input) throws PartInitException {
+ public void controlResized(ControlEvent cevent) {
+ IFormPage activePageInstance = ActivityExplorerEditor.this.getActivePageInstance();
+ IManagedForm managedForm = activePageInstance.getManagedForm();
+ managedForm.reflow(true);
+ }
+ });
+ // Refresh dirty state when the part is activated : open time for
+ // instance.
+ getHeaderForm().dirtyStateChanged();
+ ActivityExplorerActivator.getDefault().getPreferenceStore().addPropertyChangeListener(this);
- /*
- * TODO Delete
- *
- IStatus status = ((ActivityExplorerEditorInput) input).getStatus();
- if (!status.isOK()) {
- throw new PartInitException(status);
- }
- */
+ // because the pages is update later
+ pages.remove(null);
- super.init(site, input);
+ }
- getEditorSite().getPage().addPartListener(_partListener);
-
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public boolean isDirty() {
- Saveable[] saveables = getSaveables();
- for (Saveable saveable : saveables) {
- if (saveable.isDirty()) {
- return true;
+ /**
+ * Returns all pages in the Editor
+ *
+ * @return Vector<AbstractActivityExplorerPage>
+ */
+ public Vector<CommonActivityExplorerPage> getPages() {
+ Vector<CommonActivityExplorerPage> result = new Vector<CommonActivityExplorerPage>(pages.size());
+ for (Object obj : pages) {
+ if (obj instanceof CommonActivityExplorerPage) {
+ result.add((CommonActivityExplorerPage) obj);
}
}
+ return result;
+ }
+
+ /**
+ * Remove all Pages contained in this editor.
+ */
+ public void removeAllPages() {
+ /*
+ * Removing first active page leads to reactivate (i.e, create the content if it wasn't) the next active one
+ * The next will be deleted. For performance reasons we don't allow recreating page content
+ * that will be deleted just after. see the behavior of the editor in org.eclipse.ui.forms.editor.FormEditor.pageChange(int) when the current page change:
+ * That fixe bug: 487226
+ */
+ backToActivePage = getActivePage();
+ int count = super.getPageCount();
+ for (int i = count - 1; i >= 0; i--) {
+ if (i != backToActivePage) {
+ this.removePage(i);
+ }
+ }
+ /*
+ * As all page are removed before, the remaining is the first page
+ * which it index is 0
+ */
+ this.removePage(0);
+ }
+
+ /**
+ * Create and Insert Contributed pages in the editor
+ */
+ private void createContributedPages() throws PartInitException {
+ List<CommonActivityExplorerPage> contributedPages = ActivityExplorerExtensionManager.getAllPages();
+ Collections.sort(contributedPages);
+ addOverviewPage(contributedPages);
+ addContributedPages(contributedPages);
+ }
+
+ private void addContributedPages(List<CommonActivityExplorerPage> contributedPages) {
+ for (CommonActivityExplorerPage page : contributedPages) {
+ if ((page instanceof IVisibility) && page.getPosition() != 0) {
+ try {
+ if (page.isVisible()) {
+ addNewPage(page);
+ }
+ } catch (Exception e) {
+
+ StringBuilder loggerMessage = new StringBuilder(
+ "ActivityExplorerEditor.addContributedPages(..) _ "); //$NON-NLS-1$
+ loggerMessage
+ .append("An error was occured at the evaluation of the predicat or the adding of page ") //$NON-NLS-1$
+ .append(page.getId());
+ loggerMessage.append(". Refer to the exception stack for more details"); //$NON-NLS-1$
+
+ ActivityExplorerLoggerService.getInstance().log(IStatus.ERROR, loggerMessage.toString(), e);
+ }
+ }
+ }
+ }
+
+ /**
+ * Find a first visible overview page which it index is 0
+ *
+ * @param contributedPages
+ * @throws PartInitException
+ */
+ private void addOverviewPage(List<CommonActivityExplorerPage> contributedPages) throws PartInitException {
+ OverviewActivityExplorerPage overviewPage = null;
+
+ for (CommonActivityExplorerPage page : contributedPages) {
+
+ try {
+ // Force to accept only overview page at the index 0.
+ if (page.getPosition() == 0) {
+
+ // bug 485652: check the visibility
+ if ((page instanceof OverviewActivityExplorerPage) && (page.isVisible())) {
+ overviewPage = (OverviewActivityExplorerPage) page;
+ break;
+ } else {
+ // Log visibile pages with index 0 which are not
+ // Overview pages
+ if (page.isVisible()) {
+ StringBuilder loggerMessage = new StringBuilder(
+ "ActivityExplorerEditor.addOverviewPage(..) _ "); //$NON-NLS-1$
+ loggerMessage.append("Page ").append(page.getId()); //$NON-NLS-1$
+ loggerMessage
+ .append(" is not an overview page. Only overview pages are allowed to index 0"); //$NON-NLS-1$
+
+ ActivityExplorerLoggerService.getInstance().log(IStatus.WARNING, loggerMessage.toString(),
+ null);
+ }
+ }
+ } else {
+ // Focus only on pages with index 0.
+ // The list is sorted, if the first page has an index
+ // different from 0, we stop.
+ break;
+ }
+ } catch (Exception e) {
+ // Unknown errors from contributions
+ StringBuilder loggerMessage = new StringBuilder("ActivityExplorerEditor.addOverviewPage(..) _ "); //$NON-NLS-1$
+ loggerMessage.append("An error was occured at the evaluation of the predicat of page ") //$NON-NLS-1$
+ .append(page.getId());
+ loggerMessage.append(". Refer to the exception stack for more details"); //$NON-NLS-1$
+ ActivityExplorerLoggerService.getInstance().log(IStatus.ERROR, loggerMessage.toString(), e);
+ }
+ }
+
+ if(overviewPage == null){
+ Session session = getEditorInput().getSession();
+ if(session != null){
+ overviewPage = new OverviewActivityExplorerPage(this);
+ }else{
+ setMessagePage(createNullSessionPage());
+ }
+ }
+
+ // Initialize and add the overview page
+ if (overviewPage != null) {
+ overviewPage.initialize(this);
+ addPage(overviewPage);
+ }
+ }
+
+ protected IFormPage createNullSessionPage() {
+ return new MessagePage(this, "Authentication failed!\nContent access has failed at session opening, you can try to open session.", "Message");
+ }
+
+ protected IFormPage getMessagePage() {
+ return messagePage;
+ }
+
+ protected void setMessagePage(IFormPage messagePage) {
+ if (!isDisposed()) {
+ // Remove old message page if present
+ if (this.messagePage != null) {
+ int pageIndex = this.messagePage.getIndex();
+ /*
+ * !! Important Note !! Before removing the page, get it's selectable user interface and set page
+ * control to null. The page control will not be disposed in MultiPageEditorPart#removePage(int).
+ */
+ if (pageIndex >= 0 && pageIndex < pages.size()) {
+ CTabItem item = ((CTabFolder) getContainer()).getItem(pageIndex);
+ if (item != null) {
+ item.setControl(null);
+ }
+ }
+ // Call remove page
+ removePage(pageIndex);
+ }
+
+ // Add new message page if not null
+ if (messagePage != null) {
+ try {
+ addPage(messagePage);
+ if (getActivePage() == -1) {
+ setActivePage(0);
+ }
+ } catch (PartInitException ex) {
+ ActivityExplorerLoggerService.getInstance().log(IStatus.ERROR, ex.getMessage(), ex);
+ }
+ }
+ }
+ this.messagePage = messagePage;
+ }
+
+ protected synchronized void finishCreatePages() {
+ if (!isDisposed() && getMessagePage() != null) {
+ // Remove previously displayed message page
+ setMessagePage(null);
+
+ // Try to create actual pages
+ createPages();
+
+ // Activate first page if no other page is already active
+ if (getActivePage() == -1) {
+ setActivePage(0);
+ }
+ }
+
+ }
+
+ protected boolean isDisposed() {
+ return pages == null;
+ }
+
+ /**
+ * Create a documentation page.
+ *
+ * @return a not <code>null</code> instance.
+ */
+ protected IFormPage createDocumentationPage() {
+ return new DocumentationActivityExplorerPage(this);
+ }
+
+ /**
+ * Get or create the main Overview page
+ *
+ * @return a not <code>null</code> instance.
+ */
+ @Deprecated
+ protected OverviewActivityExplorerPage getOrCreateOverviewActivityExplorerPage() {
+ List<CommonActivityExplorerPage> contributedPages = ActivityExplorerExtensionManager.getAllPages();
+ Collections.sort(contributedPages);
+ if (!contributedPages.isEmpty()) {
+ CommonActivityExplorerPage page = contributedPages.get(0);
+ if ((page instanceof OverviewActivityExplorerPage) && (page.getPosition() == 0)) {
+ page.initialize(this);
+ return (OverviewActivityExplorerPage) page;
+ }
+ }
+ return new OverviewActivityExplorerPage(this);
+ }
+
+ /**
+ * @see org.eclipse.ui.forms.editor.FormEditor#dispose()
+ */
+ @Override
+ public void dispose() {
+ ActivityExplorerManager.INSTANCE.removeActivityExplorerEditorListener(this);
+
+ // Dispose the editor from part listener
+ if (null != _partListener) {
+ ((ActivityExplorerEditorPartListener) _partListener).dispose();
+ }
+
+ // If the editor is not initialized yet, the editorSite may be null
+ // (i.e, at restarting time)
+ IEditorSite editorSite = getEditorSite();
+ if (editorSite != null) {
+ // Dispose the property sheet page.
+ if (null != _propertySheetPage) {
+ _propertySheetPage.dispose();
+ _propertySheetPage = null;
+ }
+
+ // Remove part listener.
+ if (null != _partListener) {
+ editorSite.getPage().removePartListener(_partListener);
+ _partListener = null;
+ // Remove preference listener
+ ActivityExplorerActivator.getDefault().getPreferenceStore().removePropertyChangeListener(this);
+
+ super.dispose();
+ }
+ }
+
+ if (null != getEditorInput()) {
+ getEditorInput().dispose();
+ }
+ }
+
+ /**
+ * @see org.eclipse.ui.part.EditorPart#doSave(org.eclipse.core.runtime.IProgressMonitor)
+ */
+ @Override
+ public void doSave(IProgressMonitor monitor) {
+ // Ignore. This method is not called because ActivityExplorerEditor implements ISaveablesSource.
+ // All saves will go through the ISaveablesSource / Saveable protocol.
+ }
+
+ /**
+ * @see org.eclipse.ui.part.EditorPart#doSaveAs()
+ */
+ @Override
+ public void doSaveAs() {
+ // Do nothing.
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @SuppressWarnings("rawtypes")
+ @Override
+ public Object getAdapter(Class adapter) {
+ if (IPropertySheetPage.class.equals(adapter)) {
+ return getOrCreatePropertySheetPage();
+ }
+ return super.getAdapter(adapter);
+ }
+
+ public static final String PROPERTIES_CONTRIBUTOR = "org.eclipse.amalgam.explorer.activity.ui.editor.properties"; //$NON-NLS-1$
+
+ /**
+ * {@inheritDoc}
+ */
+ public String getContributorId() {
+ return getSite().getId();
+ }
+
+ /**
+ * @see org.eclipse.ui.part.EditorPart#getEditorInput()
+ */
+ @Override
+ public ActivityExplorerEditorInput getEditorInput() {
+ return (ActivityExplorerEditorInput) super.getEditorInput();
+ }
+
+ /**
+ * Get or create (first call) the property sheet page.
+ */
+ private IPropertySheetPage getOrCreatePropertySheetPage() {
+ if ((null == _propertySheetPage)) {
+ _propertySheetPage = new TabbedPropertySheetPage(this) {
+ /**
+ * {@inheritDoc}
+ */
+ @SuppressWarnings("synthetic-access")
+ @Override
+ public void dispose() {
+ super.dispose();
+ _propertySheetPage = null;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void init(IPageSite pageSite) {
+ super.init(pageSite);
+ pageSite.setSelectionProvider(ActivityExplorerEditor.this.getEditorSite().getSelectionProvider());
+ }
+ };
+ }
+ return _propertySheetPage;
+ }
+
+ /**
+ * @see org.eclipse.ui.part.WorkbenchPart#getPartName()
+ */
+ @Override
+ public String getPartName() {
+ return getEditorInput().getName();
+ }
+
+ /**
+ * Get property sheet page accessor.
+ *
+ * @return <code>null</code> if the property sheet view is not displayed.
+ */
+ public TabbedPropertySheetPage getPropertySheetPage() {
+ return _propertySheetPage;
+ }
+
+ /**
+ * @see org.eclipse.ui.forms.editor.FormEditor#init(org.eclipse.ui.IEditorSite,
+ * org.eclipse.ui.IEditorInput)
+ */
+ @Override
+ public void init(IEditorSite site, IEditorInput input) throws PartInitException {
+ super.init(site, input);
+ getEditorSite().getPage().addPartListener(_partListener);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean isDirty() {
+ Saveable[] saveables = getSaveables();
+ for (Saveable saveable : saveables) {
+ if (saveable.isDirty()) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * @see org.eclipse.ui.part.EditorPart#isSaveAsAllowed()
+ */
+ @Override
+ public boolean isSaveAsAllowed() {
+ // Not applicable in this editor.
return false;
- }
+ }
- /**
- * @see org.eclipse.ui.part.EditorPart#isSaveAsAllowed()
- */
- @Override
- public boolean isSaveAsAllowed() {
- // Not applicable in this editor.
- return false;
- }
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public Image getTitleImage() {
+ ILabelDecorator decorator = PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator();
+ return decorator.decorateImage(super.getTitleImage(), getEditorInput().getSession());
+ }
- /**
- * Unregister the session listener and set the session to <code>null</code>.
- */
- private void unregisterSession() {
- ActivityExplorerEditorInput editorInput = getEditorInput();
- if (null != editorInput) {
- Session session = editorInput.getSession();
- if (null != session) {
- session = null;
- }
- }
- }
+ private int addNewPage(IFormPage page) {
+ int index = 0;
- /**
- * {@inheritDoc}
- */
- @Override
- public Image getTitleImage() {
- ILabelDecorator decorator = PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator();
- Image decoratedImage = decorator.decorateImage(super.getTitleImage(), getEditorInput().getSession());
+ page.initialize(this);
- return decoratedImage;
- }
+ try {
+ index = addPage(page);
+ } catch (PartInitException e) {
+ StringBuilder loggerMessage = new StringBuilder("ActivityExplorerEditor.addNewPage(..) _ "); //$NON-NLS-1$
+ loggerMessage.append(e.getMessage());
- /**
- * {@inheritDoc}
- */
- @Override
- protected void setTitleImage(Image titleImage) {
- super.setTitleImage(titleImage);
- }
+ ActivityExplorerLoggerService.getInstance().log(IStatus.ERROR, loggerMessage.toString(), e);
+ }
+ return index;
+ }
- private int addNewPage(IFormPage page) {
- int index = 0;
+ /**
+ * Get the previous page
+ *
+ * @param current
+ * @return the previous page or null
+ */
+ public IFormPage getPreviousPage(IFormPage current) {
+ IFormPage previousPage = null;
+ int i = pages.indexOf(current);
+ if (i > -1) {
+ ListIterator<? extends Object> it = pages.listIterator(i);
+ if (it.hasPrevious()) {
+ Object prev = it.previous();
+ if (prev instanceof IFormPage) {
+ previousPage = (IFormPage) prev;
+ }
+ }
+ }
+ return previousPage;
+ }
- page.initialize(this);
+ /**
+ * Get the next page
+ *
+ * @param current
+ * @return the next page or null
+ */
+ public IFormPage getNextPage(IFormPage current) {
+ IFormPage nextPage = null;
+ int i = pages.indexOf(current);
+ if (i > -1) {
+ ListIterator<Object> it = pages.listIterator(i + 1);
+ if (it.hasNext()) {
+ Object obj = it.next();
+ if (obj instanceof IFormPage) {
+ nextPage = (IFormPage) obj;
+ }
+ }
- try {
- index = addPage(page);
- } catch (PartInitException e) {
- StringBuilder loggerMessage = new StringBuilder("ActivityExplorerEditor.addNewPage(..) _ "); //$NON-NLS-1$
- loggerMessage.append(e.getMessage());
+ }
+ return nextPage;
+ }
- ActivityExplorerLoggerService.getInstance().log(IStatus.ERROR, loggerMessage.toString(), e);
- }
- return index;
- }
+ /**
+ * Update the editor Remove and Create pages
+ */
+ @Deprecated
+ public void updateEditorPages(int activatedPage) {
+ updateEditorPages();
+ }
- /**
- * Get the previous page
- *
- * @param current
- * @return the previous page or null
- */
- @SuppressWarnings("unchecked")
- public IFormPage getPreviousPage(IFormPage current) {
- IFormPage previousPage = null;
- int i = pages.indexOf(current);
- if (i > -1) {
- ListIterator<? extends Object> it = pages.listIterator(i);
- if (it.hasPrevious()) {
- Object prev = it.previous();
- if (prev instanceof IFormPage) {
- previousPage = (IFormPage) prev;
- }
- }
- }
- return previousPage;
- }
+ protected void updateEditorPages() {
+ removeAllPages();
+ addPages();
+ if (backToActivePage > 0 && backToActivePage < this.getPageCount()) {
+ setActivePage(backToActivePage);
+ } else {
+ // Set active page if the backToActivePage is out of the range
+ setActivePage(0);
+ }
+ setPartName(getPartName());
+ }
- /**
- * Get the next page
- *
- * @param current
- * @return the next page or null
- */
- @SuppressWarnings("unchecked")
- public IFormPage getNextPage(IFormPage current) {
- IFormPage nextPage = null;
- int i = pages.indexOf(current);
- if (i > -1) {
- ListIterator<Object> it = pages.listIterator(i + 1);
- if (it.hasNext()) {
- Object obj = it.next();
- if (obj instanceof IFormPage) {
- nextPage = (IFormPage) obj;
- }
- }
+ /**
+ * Handle property change.<br>
+ *
+ * @param event
+ * @param value
+ * @param property
+ * @return boolean
+ */
+ protected boolean doPropertyChange(PropertyChangeEvent event, boolean value, String property) {
+ boolean result = false;
+ if (ActivityExplorerExtensionManager.isPage(property)) {
+ this.updateEditorPages(0);
+ result = true;
+ }
+ return result;
+ }
- }
- return nextPage;
- }
+ @Override
+ public void propertyChange(org.eclipse.jface.util.PropertyChangeEvent event) {
+ String property = event.getProperty();
+ boolean value = (Boolean.valueOf(event.getNewValue().toString()));
+ if (doPropertyChange(event, value, property) && ActivityExplorerManager.INSTANCE.getEditor() != null) {
+ ActivityExplorerManager.INSTANCE.getEditor().getActivePageInstance().getManagedForm().reflow(true);
+ }
- /**
- * Update the editor Remove and Create pages
- */
- @Deprecated
- public void updateEditorPages(int activatedPage) {
- updateEditorPages();
- }
-
- protected void updateEditorPages() {
- removeAllPages();
- addPages();
- if (backToActivePage > 0 && backToActivePage < this.getPageCount()) {
- setActivePage(backToActivePage);
- } else {
- //Set active page if the backToActivePage is out of the range
- setActivePage(0);
- }
- setPartName(getPartName());
- }
+ }
- /**
- * Handle property change.<br>
- *
- * @param event
- * @param value
- * @param property
- * @return boolean
- */
- protected boolean doPropertyChange(PropertyChangeEvent event, boolean value, String property) {
- boolean result = false;
- if (ActivityExplorerExtensionManager.isPage(property)) {
- this.updateEditorPages(0);
- result = true;
- }
- return result;
- }
+ @Override
+ public void executeRequest(int request, Session newSession) {
- @Override
- public void propertyChange(org.eclipse.jface.util.PropertyChangeEvent event) {
- String property = event.getProperty();
- boolean value = (Boolean.valueOf(event.getNewValue().toString()));
- if (doPropertyChange(event, value, property)) {
- if (ActivityExplorerManager.INSTANCE.getEditor() != null) {
- ActivityExplorerManager.INSTANCE.getEditor().getActivePageInstance().getManagedForm().reflow(true);
- }
- }
+ ActivityExplorerEditorInput editorInput = getEditorInput();
- }
+ if (editorInput != null) {
+ Session session = editorInput.getSession();
+ switch (request) {
+ case SessionListener.CLOSING:
+ if (session != null && session.equals(newSession)) {
+ Runnable runnable = new Runnable() {
+ public void run() {
+ close(false);
+ ActivityExplorerManager.INSTANCE
+ .removeActivityExplorerEditorListener(ActivityExplorerEditor.this);
+ }
+ };
+ run(runnable);
+ }
+ break;
+ case SessionListener.SELECTED_VIEWS_CHANGE_KIND:
+ if (session != null && session.equals(newSession) && newSession.isOpen()) {
+ Runnable runnable = new Runnable() {
+ public void run() {
+ updateEditorPages();
+ }
+ };
+ run(runnable);
+ }
+ break;
+ case SessionListener.REPRESENTATION_CHANGE:
+ if (session != null && session.equals(newSession) && newSession.isOpen()) {
+ _editorDirtyStateChanged();
+ }
+ break;
+ case SessionListener.OPENED:
+ if(newSession != null && newSession.equals(session)){
+ Runnable runnable = new Runnable() {
+ public void run() {
+ setPartName(getPartName());
+ finishCreatePages();
+ }
+ };
+ run(runnable);
+ }
+ break;
+ case SessionListener.DIRTY:
+ case SessionListener.SYNC:
+ case SessionListener.SEMANTIC_CHANGE: // Listening to changes to
+ // mark
+ if (session != null && session.equals(newSession) && newSession.isOpen()) {
+ _editorDirtyStateChanged();
+ }
+ break;
+ case SessionListener.REPLACED:
+ if (session != null && session.equals(newSession) && newSession.isOpen()) {
+ _editorDirtyStateChanged();
+ }
+ break;
+ }
+ } else {
+ // Remove the editors with no editor input
+ ActivityExplorerManager.INSTANCE.removeActivityExplorerEditorListener(this);
+ }
+ }
- @Override
- public void executeRequest(int request, Session session) {
+ private void _editorDirtyStateChanged() {
+ Runnable runnable = new Runnable() {
+ public void run() {
+ IManagedForm headerForm = getHeaderForm();
+ if (headerForm != null)
+ headerForm.dirtyStateChanged();
+ }
+ };
+ run(runnable);
+ }
- ActivityExplorerEditorInput editorInput = getEditorInput();
-
- if (editorInput != null) {
- Session session2 = editorInput.getSession();
- switch (request) {
- case SessionListener.CLOSING:
- if (session2 != null && session2.equals(session)) {
- Runnable runnable = new Runnable() {
- public void run() {
- close(false);
- ActivityExplorerManager.INSTANCE
- .removeActivityExplorerEditorListener(ActivityExplorerEditor.this);
- }
- };
- run(runnable);
- }
- break;
- case SessionListener.SELECTED_VIEWS_CHANGE_KIND:
- if (session2 != null && session2.equals(session) && session.isOpen()) {
- Runnable runnable = new Runnable() {
- public void run() {
- updateEditorPages();
- }
- };
- run(runnable);
- }
- break;
- case SessionListener.REPRESENTATION_CHANGE:
- if (session2 != null && session2.equals(session) && session.isOpen()) {
- _editorDirtyStateChanged();
- }
- break;
- case SessionListener.OPENED:
- break;
- case SessionListener.DIRTY:
- case SessionListener.SYNC:
- case SessionListener.SEMANTIC_CHANGE: // Listening to changes to
- // mark
- if (session2 != null && session2.equals(session) && session.isOpen()) {
- _editorDirtyStateChanged();
- }
- break;
- case SessionListener.REPLACED:
- if (session2 != null && session2.equals(session) && session.isOpen()) {
- _editorDirtyStateChanged();
- }
- break;
- }
- } else {
- // Remove the editors with no editor input
- ActivityExplorerManager.INSTANCE.removeActivityExplorerEditorListener(this);
- }
- }
-
- private void _editorDirtyStateChanged() {
- Runnable runnable = new Runnable() {
- public void run() {
- IManagedForm headerForm = getHeaderForm();
- if (headerForm != null)
- headerForm.dirtyStateChanged();
- }
- };
- run(runnable);
- }
-
- protected void run(Runnable runnable) {
- if (null != runnable) {
- Display display = Display.getCurrent();
- if (null == display) {
- PlatformUI.getWorkbench().getDisplay().asyncExec(runnable);
- } else {
- runnable.run();
- }
- }
- }
-
+ protected void run(Runnable runnable) {
+ if (null != runnable) {
+ Display display = Display.getCurrent();
+ if (null == display) {
+ PlatformUI.getWorkbench().getDisplay().asyncExec(runnable);
+ } else {
+ runnable.run();
+ }
+ }
+ }
/*
* (non-Javadoc)
@@ -737,11 +758,10 @@
IEditingSession uiSession = SessionUIManager.INSTANCE.getOrCreateUISession(session);
if (uiSession instanceof ISaveablesSource) {
return (ISaveablesSource) uiSession;
- } else {
+ }
// IEditingSession instance does not implement ISaveablesSource.
throw new ClassCastException(String.format(Messages.ActivityExplorerEditor_IEditingSessionRetrieval_ShouldAlsoImplementISaveablesSource, IEditingSession.class.getSimpleName(),
ISaveablesSource.class.getSimpleName()));
- }
}
return null;
}
diff --git a/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/input/ActivityExplorerEditorInput.java b/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/input/ActivityExplorerEditorInput.java
index 2dd5519..eec8bcc 100644
--- a/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/input/ActivityExplorerEditorInput.java
+++ b/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/input/ActivityExplorerEditorInput.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006, 2016 THALES GLOBAL SERVICES.
+ * Copyright (c) 2006, 2018 THALES GLOBAL SERVICES.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -122,6 +122,10 @@
EObject project = getRootSemanticElement();
if (null != project) {
result = EObjectLabelProviderHelper.getText(project);
+ }else if(getFile() != null){
+ String fileExtension = getFile().getFileExtension();
+ String fileName = getFile().getName();
+ result = fileName.substring(0, fileName.indexOf(fileExtension)-1);
}
return result;
}
diff --git a/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/pages/MessagePage.java b/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/pages/MessagePage.java
new file mode 100644
index 0000000..a528c98
--- /dev/null
+++ b/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/api/editor/pages/MessagePage.java
@@ -0,0 +1,75 @@
+/*******************************************************************************
+ * Copyright (c) 2006, 2018 THALES GLOBAL SERVICES.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thales - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.amalgam.explorer.activity.ui.api.editor.pages;
+
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.ui.forms.IManagedForm;
+import org.eclipse.ui.forms.editor.FormEditor;
+import org.eclipse.ui.forms.editor.FormPage;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+
+public class MessagePage extends FormPage {
+
+ private static final int FORM_BODY_MARGIN_HEIGHT = 0;
+ private static final int FORM_BODY_MARGIN_WIDTH = 0;
+ private static final int FORM_BODY_MARGIN_TOP = 12;
+ private static final int FORM_BODY_MARGIN_BOTTOM = 12;
+ private static final int FORM_BODY_MARGIN_LEFT = 6;
+ private static final int FORM_BODY_MARGIN_RIGHT = 6;
+ private static final int FORM_BODY_HORIZONTAL_SPACING = 20;
+ private static final int FORM_BODY_VERTICAL_SPACING = 17;
+
+ protected String message;
+
+ public MessagePage(FormEditor formEditor, String message) {
+ this(formEditor, message, ""); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+
+ public MessagePage(FormEditor formEditor, String message, String title) {
+ super(formEditor, "007", title); //$NON-NLS-1$ //$NON-NLS-2$
+ this.message = message;
+ }
+
+ @Override
+ protected void createFormContent(final IManagedForm managedForm) {
+ // Create single columned page layout
+ Composite body = managedForm.getForm().getBody();
+ body.setLayout(createFormBodyGridLayout(false, 1));
+
+ // Display message indicating that editor input is being loaded
+ FormToolkit toolkit = managedForm.getToolkit();
+ Label label = toolkit.createLabel(body, message);
+ label.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ }
+
+ private GridLayout createFormBodyGridLayout(boolean makeColumnsEqualWidth, int numColumns) {
+ GridLayout layout = new GridLayout();
+
+ layout.marginHeight = FORM_BODY_MARGIN_HEIGHT;
+ layout.marginWidth = FORM_BODY_MARGIN_WIDTH;
+
+ layout.marginTop = FORM_BODY_MARGIN_TOP;
+ layout.marginBottom = FORM_BODY_MARGIN_BOTTOM;
+ layout.marginLeft = FORM_BODY_MARGIN_LEFT;
+ layout.marginRight = FORM_BODY_MARGIN_RIGHT;
+
+ layout.horizontalSpacing = FORM_BODY_HORIZONTAL_SPACING;
+ layout.verticalSpacing = FORM_BODY_VERTICAL_SPACING;
+
+ layout.makeColumnsEqualWidth = makeColumnsEqualWidth;
+ layout.numColumns = numColumns;
+
+ return layout;
+ }
+}
diff --git a/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/internal/session/listeners/ActivityExplorerSessionListener.java b/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/internal/session/listeners/ActivityExplorerSessionListener.java
index 6bdad18..6a8ddf7 100644
--- a/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/internal/session/listeners/ActivityExplorerSessionListener.java
+++ b/plugins/org.eclipse.amalgam.explorer.activity.ui/src/org/eclipse/amalgam/explorer/activity/ui/internal/session/listeners/ActivityExplorerSessionListener.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006, 2016 THALES GLOBAL SERVICES.
+ * Copyright (c) 2006, 2018 THALES GLOBAL SERVICES.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -10,11 +10,8 @@
*******************************************************************************/
package org.eclipse.amalgam.explorer.activity.ui.internal.session.listeners;
-import java.lang.ref.WeakReference;
-
import org.eclipse.amalgam.explorer.activity.ui.api.manager.ActivityExplorerManager;
import org.eclipse.sirius.business.api.session.Session;
-import org.eclipse.sirius.business.api.session.SessionListener;
import org.eclipse.sirius.business.api.session.SessionManagerListener;
import org.eclipse.sirius.viewpoint.description.Viewpoint;
@@ -24,54 +21,27 @@
public class ActivityExplorerSessionListener implements SessionManagerListener {
@Override
- public void notify(Session sessionp, int notification) {
-
- WeakReference<Session> session = new WeakReference<Session>(sessionp);
-
- switch (notification) {
- case SessionListener.CLOSING:
- ActivityExplorerManager.INSTANCE.dispatchEvent(notification, session.get());
- break;
- case SessionListener.SELECTED_VIEWS_CHANGE_KIND:
- ActivityExplorerManager.INSTANCE.dispatchEvent(notification, session.get());
- break;
- case SessionListener.REPRESENTATION_CHANGE:
- ActivityExplorerManager.INSTANCE.dispatchEvent(notification, session.get());
- break;
- case SessionListener.OPENED:
- break;
- case SessionListener.DIRTY:
- case SessionListener.SYNC:
- case SessionListener.SEMANTIC_CHANGE: // Listening to changes to mark
- ActivityExplorerManager.INSTANCE.dispatchEvent(notification, session.get());
- break;
- case SessionListener.REPLACED:
- ActivityExplorerManager.INSTANCE.dispatchEvent(notification, session.get());
- break;
- }
+ public void notify(Session session, int notification) {
+ ActivityExplorerManager.INSTANCE.dispatchEvent(notification, session);
}
@Override
public void notifyAddSession(Session newSession) {
- // TODO Auto-generated method stub
-
+ // Do Nothing
}
@Override
public void notifyRemoveSession(Session removedSession) {
- // TODO Auto-generated method stub
-
+ // Do Nothing
}
@Override
public void viewpointSelected(Viewpoint selectedSirius) {
- // TODO Auto-generated method stub
-
+ // Do Nothing
}
@Override
public void viewpointDeselected(Viewpoint deselectedSirius) {
- // TODO Auto-generated method stub
-
+ // Do Nothing
}
}