Author: scooter
Date: 2012-09-12 17:25:52 -0700 (Wed, 12 Sep 2012)
New Revision: 30363
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/customgraphics/CustomGraphicsManager.java
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/customgraphicsmgr/internal/CustomGraphicsManagerImpl.java
Log:
CyCustomGraphicsFactory listeners are implemented.
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
2012-09-13 00:18:41 UTC (rev 30362)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/CyActivator.java
2012-09-13 00:25:52 UTC (rev 30363)
@@ -83,6 +83,7 @@
import org.cytoscape.view.model.CyNetworkViewManager;
import org.cytoscape.view.model.VisualLexicon;
import org.cytoscape.view.presentation.RenderingEngineManager;
+import org.cytoscape.view.presentation.customgraphics.CyCustomGraphicsFactory;
import org.cytoscape.view.presentation.property.values.BendFactory;
import org.cytoscape.view.presentation.property.values.HandleFactory;
import org.cytoscape.view.vizmap.VisualMappingManager;
@@ -477,17 +478,23 @@
// TODO: When the CustomGraphicsFactory service stuff is set
up, just
// register these as services
NullCustomGraphicsFactory nullFactory = new
NullCustomGraphicsFactory(customGraphicsManager);
- customGraphicsManager.addCustomGraphicsFactory(nullFactory);
+ customGraphicsManager.addCustomGraphicsFactory(nullFactory, new
Properties());
URLImageCustomGraphicsFactory imageFactory = new
URLImageCustomGraphicsFactory(customGraphicsManager);
- customGraphicsManager.addCustomGraphicsFactory(imageFactory);
+ customGraphicsManager.addCustomGraphicsFactory(imageFactory,
new Properties());
GradientOvalFactory ovalFactory = new
GradientOvalFactory(customGraphicsManager);
- customGraphicsManager.addCustomGraphicsFactory(ovalFactory);
+ customGraphicsManager.addCustomGraphicsFactory(ovalFactory, new
Properties());
GradientRoundRectangleFactory rectangleFactory =
new GradientRoundRectangleFactory(customGraphicsManager);
-
customGraphicsManager.addCustomGraphicsFactory(rectangleFactory);
+
customGraphicsManager.addCustomGraphicsFactory(rectangleFactory, new
Properties());
+
+ // Now register our service listener so that app writers can
+ // provide their own CustomGraphics factory methods
+ registerServiceListener(bc, customGraphicsManager,
+ "addCustomGraphicsFactory",
"removeCustomGraphicsFactory",
+ CyCustomGraphicsFactory.class);
}
/**
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/customgraphics/CustomGraphicsManager.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/customgraphics/CustomGraphicsManager.java
2012-09-13 00:18:41 UTC (rev 30362)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/customgraphics/CustomGraphicsManager.java
2012-09-13 00:25:52 UTC (rev 30363)
@@ -2,6 +2,7 @@
import java.net.URL;
import java.util.Collection;
+import java.util.Map;
import java.util.Properties;
import java.util.Set;
import java.util.SortedSet;
@@ -11,8 +12,8 @@
public interface CustomGraphicsManager {
- void addCustomGraphicsFactory(CyCustomGraphicsFactory factory);
- void removeCustomGraphicsFactory(CyCustomGraphicsFactory factory);
+ void addCustomGraphicsFactory(CyCustomGraphicsFactory factory, Map
props);
+ void removeCustomGraphicsFactory(CyCustomGraphicsFactory factory, Map
props);
CyCustomGraphicsFactory getCustomGraphicsFactory(Class<? extends
CyCustomGraphics> cls);
CyCustomGraphicsFactory getCustomGraphicsFactory(String className);
Collection<CyCustomGraphicsFactory> getAllCustomGraphicsFactories();
Modified:
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/customgraphicsmgr/internal/CustomGraphicsManagerImpl.java
===================================================================
---
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/customgraphicsmgr/internal/CustomGraphicsManagerImpl.java
2012-09-13 00:18:41 UTC (rev 30362)
+++
core3/impl/trunk/ding-impl/ding-presentation-impl/src/main/java/org/cytoscape/ding/customgraphicsmgr/internal/CustomGraphicsManagerImpl.java
2012-09-13 00:25:52 UTC (rev 30363)
@@ -57,6 +57,7 @@
private final File imageHomeDirectory;
private final Map<CyCustomGraphics, Boolean> isUsedCustomGraphics;
private final Map<String, CyCustomGraphicsFactory> factoryMap;
+ private final Map<CyCustomGraphicsFactory, Map> factoryPropsMap;
private final DialogTaskManager taskManager;
private final CyEventHelper eventHelper;
@@ -83,7 +84,7 @@
this.applicationManager = applicationManager;
this.isUsedCustomGraphics = new HashMap<CyCustomGraphics,
Boolean>();
this.factoryMap = new HashMap<String,
CyCustomGraphicsFactory>();
- // Add build-in factories?
+ this.factoryPropsMap = new HashMap<CyCustomGraphicsFactory,
Map>();
if (properties == null)
throw new NullPointerException("Property object is
null.");
@@ -110,14 +111,16 @@
public static CustomGraphicsManagerImpl getInstance() { return
instance; }
- public void addCustomGraphicsFactory(CyCustomGraphicsFactory factory) {
+ public void addCustomGraphicsFactory(CyCustomGraphicsFactory factory,
Map props) {
if (factory == null) return;
factoryMap.put(factory.getSupportedClass().getName(), factory);
+ factoryPropsMap.put(factory, props);
}
- public void removeCustomGraphicsFactory(CyCustomGraphicsFactory
factory) {
+ public void removeCustomGraphicsFactory(CyCustomGraphicsFactory
factory, Map props) {
if (factory == null) return;
factoryMap.remove(factory.getSupportedClass());
+ factoryPropsMap.remove(factory);
}
public CyCustomGraphicsFactory getCustomGraphicsFactory(Class<? extends
CyCustomGraphics> cls) {
--
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.