Author: clopes
Date: 2012-06-05 08:56:22 -0700 (Tue, 05 Jun 2012)
New Revision: 29454

Added:
   
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/handler/HandleGraphGraphics.java
Modified:
   
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/HandlerFactory.java
   
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/XGMMLNetworkReader.java
Log:
Fixes #1062 (XGMML Import: Network view visual properties imported as CyTable 
attributes)

Modified: 
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/HandlerFactory.java
===================================================================
--- 
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/HandlerFactory.java
        2012-06-05 15:44:46 UTC (rev 29453)
+++ 
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/HandlerFactory.java
        2012-06-05 15:56:22 UTC (rev 29454)
@@ -32,6 +32,7 @@
 import org.cytoscape.io.internal.read.xgmml.handler.HandleGraph;
 import org.cytoscape.io.internal.read.xgmml.handler.HandleGraphAttribute;
 import org.cytoscape.io.internal.read.xgmml.handler.HandleGraphDone;
+import org.cytoscape.io.internal.read.xgmml.handler.HandleGraphGraphics;
 import org.cytoscape.io.internal.read.xgmml.handler.HandleListAttribute;
 import org.cytoscape.io.internal.read.xgmml.handler.HandleListAttributeDone;
 import org.cytoscape.io.internal.read.xgmml.handler.HandleNode;
@@ -111,10 +112,12 @@
                        final Object[][] tbl = {
                                        // Initial state. It's all noise until 
we see our <graph> tag
                                        { NONE, "graph", GRAPH, new 
HandleGraph() },
+                                       { GRAPH, "graphics", NET_GRAPHICS, new 
HandleGraphGraphics() },
+                                       { NET_GRAPHICS, "att", NET_GRAPHICS, 
new HandleGraphGraphics() },
                                        { GRAPH, "att", NET_ATT, new 
HandleGraphAttribute() },
+                                       // RDF
                                        { NET_ATT, "rdf", RDF, null },
-                                       // RDF tags -- most of the data for the 
RDF tags comes from the
-                                       // CData
+                                       // RDF tags -- most of the data for the 
RDF tags comes from the CData
                                        { RDF, "description", RDF_DESC, new 
HandleRDF() },
                                        { RDF_DESC, "type", RDF_DESC, null },
                                        { RDF_DESC, "description", RDF_DESC, 
null },
@@ -125,7 +128,7 @@
                                        { RDF_DESC, "format", RDF_DESC, null },
                                        // Sub-graphs
                                        { NET_ATT, "graph", GRAPH, new 
HandleGraph() },
-                                       // Handle nodes
+                                       // Nodes
                                        { GRAPH, "node", NODE, new HandleNode() 
},
                                        { NODE_GRAPH, "node", NODE, new 
HandleNode() },
                                        { NODE, "graphics", NODE_GRAPHICS, new 
HandleNodeGraphics() },
@@ -133,7 +136,7 @@
                                        { NODE_ATT, "graph", NODE_GRAPH, new 
HandleNodeGraph() },
                                        { NODE_GRAPH, "att", NET_ATT, new 
HandleGraphAttribute() },
                                        { NODE_GRAPHICS, "att", NODE_GRAPHICS, 
new HandleNodeGraphics() },
-                                       // Handle edges
+                                       // Edges
                                        { GRAPH, "edge", EDGE, new HandleEdge() 
},
                                        { NODE_GRAPH, "edge", EDGE, new 
HandleEdge() },
                                        { EDGE, "att", EDGE_ATT, new 
HandleEdgeAttribute() },

Modified: 
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/XGMMLNetworkReader.java
===================================================================
--- 
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/XGMMLNetworkReader.java
    2012-06-05 15:44:46 UTC (rev 29453)
+++ 
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/XGMMLNetworkReader.java
    2012-06-05 15:56:22 UTC (rev 29454)
@@ -116,7 +116,7 @@
                final Map<String, String> atts = 
readDataMgr.getGraphicsAttributes(edge);
                setVisualProperties(netView, edgeView, atts);
                
-               // TODO Edge bend
+               // TODO 2.x edge bends
 //             if (readDataMgr.getAttributeNS(attr, "curved", CY_NAMESPACE) != 
null) {
 //                     String value = readDataMgr.getAttributeNS(attr, 
"curved", CY_NAMESPACE);
 //                     if (value.equals("STRAIGHT_LINES")) {

Added: 
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/handler/HandleGraphGraphics.java
===================================================================
--- 
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/handler/HandleGraphGraphics.java
                           (rev 0)
+++ 
core3/impl/trunk/io-impl/impl/src/main/java/org/cytoscape/io/internal/read/xgmml/handler/HandleGraphGraphics.java
   2012-06-05 15:56:22 UTC (rev 29454)
@@ -0,0 +1,32 @@
+package org.cytoscape.io.internal.read.xgmml.handler;
+
+import org.cytoscape.io.internal.read.xgmml.ParseState;
+import org.xml.sax.Attributes;
+import org.xml.sax.SAXException;
+
+public class HandleGraphGraphics extends AbstractHandler {
+
+       @Override
+       public ParseState handle(String tag, Attributes atts, ParseState 
current) throws SAXException {
+               if (atts == null)
+                       return current;
+               
+               manager.attState = current;
+               ParseState nextState = current;
+
+               if (tag.equals("graphics")) {
+               manager.addGraphicsAttributes(manager.getCurrentNetwork(), 
atts);
+        } else if (tag.equals("att")) {
+                       String name = 
atts.getValue(AttributeValueUtil.ATTR_NAME);
+            String value = atts.getValue(AttributeValueUtil.ATTR_VALUE);
+            
+            if (name != null && value != null)
+               manager.addGraphicsAttribute(manager.getCurrentNetwork(), name, 
value);
+        }
+
+               if (nextState != ParseState.NONE)
+                       return nextState;
+
+               return current;
+       }
+}

-- 
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.

Reply via email to