Author: rozagh
Date: 2012-09-07 10:27:16 -0700 (Fri, 07 Sep 2012)
New Revision: 30335
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/CyActivator.java
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
Log:
fixes #1427 registering services for GlobalTableBrowser other than
CytoPanelComponent in the CyActivator and registering CytoPanelCompnent class
service when the first unassigned table is added to the manager. Unregistering
the service when all of the tables are removed.
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/CyActivator.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/CyActivator.java
2012-09-07 16:42:05 UTC (rev 30334)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/CyActivator.java
2012-09-07 17:27:16 UTC (rev 30335)
@@ -1,5 +1,6 @@
package org.cytoscape.browser.internal;
+import java.awt.event.ActionListener;
import java.util.Properties;
import org.cytoscape.application.CyApplicationManager;
@@ -11,8 +12,13 @@
import org.cytoscape.model.CyNetworkTableManager;
import org.cytoscape.model.CyNode;
import org.cytoscape.model.CyTableManager;
+import org.cytoscape.model.events.TableAboutToBeDeletedListener;
+import org.cytoscape.model.events.TableAddedListener;
+import org.cytoscape.model.events.TablePrivacyChangedListener;
import org.cytoscape.service.util.AbstractCyActivator;
import org.cytoscape.service.util.CyServiceRegistrar;
+import org.cytoscape.session.events.SessionAboutToBeSavedListener;
+import org.cytoscape.session.events.SessionLoadedListener;
import org.cytoscape.task.TableCellTaskFactory;
import org.cytoscape.task.TableColumnTaskFactory;
import org.cytoscape.task.destroy.DeleteTableTaskFactory;
@@ -51,7 +57,14 @@
registerAllServices(bc,nodeTableBrowser, new Properties());
registerAllServices(bc,edgeTableBrowser, new Properties());
registerAllServices(bc,networkTableBrowser, new Properties());
- registerAllServices(bc,globalTableBrowser, new Properties());
+ //registerAllServices(bc,globalTableBrowser, new Properties());
+ Properties globalTableProp = new Properties();
+ registerService(bc, globalTableBrowser, ActionListener.class,
globalTableProp);
+ registerService(bc, globalTableBrowser,
SessionLoadedListener.class, globalTableProp);
+ registerService(bc, globalTableBrowser,
SessionAboutToBeSavedListener.class, globalTableProp);
+ registerService(bc, globalTableBrowser,
TableAboutToBeDeletedListener.class, globalTableProp);
+ registerService(bc, globalTableBrowser,
TableAddedListener.class, globalTableProp);
+ registerService(bc, globalTableBrowser,
TablePrivacyChangedListener.class, globalTableProp);
registerServiceListener(bc,popupMenuHelper,"addTableColumnTaskFactory","removeTableColumnTaskFactory",TableColumnTaskFactory.class);
registerServiceListener(bc,popupMenuHelper,"addTableCellTaskFactory","removeTableCellTaskFactory",TableCellTaskFactory.class);
Modified:
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
===================================================================
---
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
2012-09-07 16:42:05 UTC (rev 30334)
+++
core3/impl/trunk/table-browser-impl/src/main/java/org/cytoscape/browser/internal/GlobalTableBrowser.java
2012-09-07 17:27:16 UTC (rev 30335)
@@ -4,10 +4,12 @@
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
+import java.util.Properties;
import javax.swing.SwingUtilities;
import org.cytoscape.application.CyApplicationManager;
+import org.cytoscape.application.swing.CytoPanelComponent;
import org.cytoscape.browser.internal.TableChooser.GlobalTableComboBoxModel;
import org.cytoscape.equations.EquationCompiler;
import org.cytoscape.event.CyEventHelper;
@@ -43,7 +45,7 @@
CyApplicationManager applicationManager, CyEventHelper
eventHelper){//, final MapGlobalToLocalTableTaskFactory
mapGlobalTableTaskFactoryService) {
super(tabTitle, tableManager, networkTableManager,
serviceRegistrar, compiler, networkManager,
deleteTableTaskFactoryService,
guiTaskManagerServiceRef, popupMenuHelper, applicationManager, eventHelper);
-
+
tableChooser = new TableChooser();
tableChooser.addActionListener(this);
tableChooser.setMaximumSize(SELECTOR_SIZE);
@@ -84,6 +86,7 @@
tableChooser.setEnabled(false);
// The last table is deleted, refresh the
browser table (this is a special case)
deleteTable(cyTable);
+ serviceRegistrar.unregisterService(this,
CytoPanelComponent.class);
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
@@ -108,7 +111,10 @@
final GlobalTableComboBoxModel comboBoxModel =
(GlobalTableComboBoxModel) tableChooser.getModel();
comboBoxModel.addAndSetSelectedItem(newTable);
}
-
+
+ if (tableChooser.getItemCount() == 1)
+ serviceRegistrar.registerService(this,
CytoPanelComponent.class, new Properties());
+
if (tableChooser.getItemCount() != 0)
tableChooser.setEnabled(true);
}
--
You received this message because you are subscribed to the Google Groups
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/cytoscape-cvs?hl=en.