-package org.simantics.document.linking.ge;\r
-\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-\r
-import org.eclipse.jface.viewers.ISelection;\r
-import org.eclipse.jface.viewers.ISelectionChangedListener;\r
-import org.eclipse.jface.viewers.ISelectionProvider;\r
-import org.eclipse.jface.viewers.SelectionChangedEvent;\r
-\r
-/**\r
- * Selection Provider for providing slections from multiple GraphExplorers attached to the same site\r
- * .\r
- * @author Marko Luukkainen <marko.luukkainen@vtt.fi>\r
- *\r
- */\r
-public class MultiSelectionProvider implements ISelectionProvider, ISelectionChangedListener {\r
- \r
- private List<ISelectionProvider> selectionProviders = new ArrayList<ISelectionProvider>();\r
- private List<ISelectionChangedListener> listeners = new ArrayList<ISelectionChangedListener>();\r
- private ISelection selection;\r
- \r
- @Override\r
- public void addSelectionChangedListener(ISelectionChangedListener listener) {\r
- listeners.add(listener);\r
- \r
- }\r
- @Override\r
- public void removeSelectionChangedListener(\r
- ISelectionChangedListener listener) {\r
- listeners.remove(listener);\r
- \r
- }\r
- \r
- @Override\r
- public ISelection getSelection() {\r
- return selection;\r
- }\r
- \r
- @Override\r
- public void setSelection(ISelection selection) {\r
- this.selection = selection;\r
- // TODO : should we pass the selection to selectionProviders? \r
- }\r
- \r
- @Override\r
- public void selectionChanged(SelectionChangedEvent event) {\r
- this.selection = event.getSelection();\r
- SelectionChangedEvent fireEvent = new SelectionChangedEvent(this, selection);\r
- for (ISelectionChangedListener l : listeners) {\r
- l.selectionChanged(fireEvent);\r
- }\r
- \r
- }\r
- \r
- public void addSelectionProvider(ISelectionProvider provider) {\r
- selectionProviders.add(provider);\r
- provider.addSelectionChangedListener(this);\r
- }\r
- \r
- public void removeSelectionProvider(ISelectionProvider provider) {\r
- selectionProviders.remove(provider);\r
- provider.removeSelectionChangedListener(this);\r
- }\r
-\r
-}\r
+package org.simantics.document.linking.ge;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+
+/**
+ * Selection Provider for providing slections from multiple GraphExplorers attached to the same site
+ * .
+ * @author Marko Luukkainen <marko.luukkainen@vtt.fi>
+ *
+ */
+public class MultiSelectionProvider implements ISelectionProvider, ISelectionChangedListener {
+
+ private List<ISelectionProvider> selectionProviders = new ArrayList<ISelectionProvider>();
+ private List<ISelectionChangedListener> listeners = new ArrayList<ISelectionChangedListener>();
+ private ISelection selection;
+
+ @Override
+ public void addSelectionChangedListener(ISelectionChangedListener listener) {
+ listeners.add(listener);
+
+ }
+ @Override
+ public void removeSelectionChangedListener(
+ ISelectionChangedListener listener) {
+ listeners.remove(listener);
+
+ }
+
+ @Override
+ public ISelection getSelection() {
+ return selection;
+ }
+
+ @Override
+ public void setSelection(ISelection selection) {
+ this.selection = selection;
+ // TODO : should we pass the selection to selectionProviders?
+ }
+
+ @Override
+ public void selectionChanged(SelectionChangedEvent event) {
+ this.selection = event.getSelection();
+ SelectionChangedEvent fireEvent = new SelectionChangedEvent(this, selection);
+ for (ISelectionChangedListener l : listeners) {
+ l.selectionChanged(fireEvent);
+ }
+
+ }
+
+ public void addSelectionProvider(ISelectionProvider provider) {
+ selectionProviders.add(provider);
+ provider.addSelectionChangedListener(this);
+ }
+
+ public void removeSelectionProvider(ISelectionProvider provider) {
+ selectionProviders.remove(provider);
+ provider.removeSelectionChangedListener(this);
+ }
+
+}