Author: kono
Date: 2009-06-25 15:55:50 -0700 (Thu, 25 Jun 2009)
New Revision: 17100

Added:
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PickableObject.java
Modified:
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PNodeView.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingNetworkRenderer.java
   
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingPresentationFactory.java
Log:
Pickable object interface had been added.  This will be used to all objects 
which need user interactions.

Modified: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PNodeView.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PNodeView.java
    2009-06-25 20:55:38 UTC (rev 17099)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PNodeView.java
    2009-06-25 22:55:50 UTC (rev 17100)
@@ -1,5 +1,9 @@
 package org.cytoscape.view.presentation.processing;
 
 public interface PNodeView {
+       
+       public void scale();
+       
+       public void rotate();
 
 }

Added: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PickableObject.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PickableObject.java
                               (rev 0)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/PickableObject.java
       2009-06-25 22:55:50 UTC (rev 17100)
@@ -0,0 +1,7 @@
+package org.cytoscape.view.presentation.processing;
+
+public interface PickableObject {
+       
+       public void pick(float x, float y);
+
+}

Modified: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingNetworkRenderer.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingNetworkRenderer.java
   2009-06-25 20:55:38 UTC (rev 17099)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingNetworkRenderer.java
   2009-06-25 22:55:50 UTC (rev 17100)
@@ -1,5 +1,6 @@
 package org.cytoscape.view.presentation.processing.internal;
 
+import java.awt.Dimension;
 import java.awt.Image;
 import java.awt.print.Printable;
 import java.util.Properties;
@@ -13,9 +14,40 @@
 import org.cytoscape.view.presentation.NetworkRenderer;
 
 import processing.core.PApplet;
+import processing.core.PFont;
 
-public class ProcessingNetworkRenderer extends PApplet implements 
NetworkRenderer {
+public class ProcessingNetworkRenderer extends PApplet implements
+               NetworkRenderer {
 
+       /*
+        * Basic Processing settings
+        */
+       // Mode of renderer. For now, it is set to non-OpenGL version.
+       private static final String MODE = P3D;
+       private static final int FRAME_RATE = 30;
+
+       private final PFont defaultFont;
+
+       private Dimension windowSize;
+       private CyNetworkView view;
+       private CyNetwork network;
+
+       //
+       GraphRenderer renderer;
+
+       /**
+        * Constructor. Create a PApplet component based on the size given as
+        * parameter.
+        * 
+        * @param size
+        */
+       public ProcessingNetworkRenderer(Dimension size, CyNetworkView view) {
+               this.view = view;
+               this.windowSize = size;
+
+               defaultFont = createFont("SansSerif", 24);
+       }
+
        public Icon getDefaultIcon(VisualProperty vp) {
                // TODO Auto-generated method stub
                return null;
@@ -50,40 +82,33 @@
                // TODO Auto-generated method stub
                return null;
        }
-       
-       // Used for oveall rotation
-       float ang;
 
-       // Cube count-lower/raise to test P3D/OPENGL performance
-       int limit = 500;
-       private int windowSize;
-
-
-       public ProcessingNetworkRenderer(int size) {
-               this.windowSize = size;
-       }
-
        public void setup() {
-               size(400, 400);
-//             hint(ENABLE_OPENGL_4X_SMOOTH);
+               size(windowSize.width, windowSize.height, MODE);
+               hint(ENABLE_NATIVE_FONTS);
+               frameRate(FRAME_RATE);
+               // hint(ENABLE_OPENGL_4X_SMOOTH);
                noStroke();
-               noLoop();
+               textFont(defaultFont);
+
        }
 
+       float op = 0;
+
        public void draw() {
-               background(250, 0, 0);
-               fill(0, 200, 0, 90);
-               rect(10, 10, 100, 100);
+
+               background(0, 0, 0);
+               fill(200, 0, 0, 200);
+               text("Cytoscape Presentation", 100, 200);
+
        }
 
        public CyNetwork getSourceNetwork() {
-               // TODO Auto-generated method stub
-               return null;
+               return network;
        }
 
        public CyNetworkView getSourceView() {
-               // TODO Auto-generated method stub
-               return null;
+               return view;
        }
 
 }

Modified: 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingPresentationFactory.java
===================================================================
--- 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingPresentationFactory.java
       2009-06-25 20:55:38 UTC (rev 17099)
+++ 
csplugins/trunk/soc/kozo/processing-renderer/processing-rendering-engine/src/main/java/org/cytoscape/view/presentation/processing/internal/ProcessingPresentationFactory.java
       2009-06-25 22:55:50 UTC (rev 17100)
@@ -1,6 +1,9 @@
 package org.cytoscape.view.presentation.processing.internal;
 
+import static 
org.cytoscape.view.presentation.property.TwoDVisualLexicon.NETWORK_TITLE;
+
 import java.awt.BorderLayout;
+import java.awt.Component;
 import java.awt.Dimension;
 
 import javax.swing.JFrame;
@@ -15,6 +18,8 @@
 
 public class ProcessingPresentationFactory implements PresentationFactory,
                NetworkViewChangedListener {
+       
+       private static final Dimension DEFAULT_WINDOW_SIZE = new Dimension(400, 
400);
 
        public ProcessingPresentationFactory() {
 
@@ -27,16 +32,27 @@
        }
 
        public NetworkRenderer addPresentation(Object frame, CyNetworkView 
view) {
-               ProcessingNetworkRenderer presentation = new 
ProcessingNetworkRenderer(400);
+               // Check parameter
+               if ( view == null )
+                       throw new IllegalArgumentException("Cannot create 
presentation for null CyNetworkView.");
+               
                System.out.println("====== Creating Processing Dialog 
=========");
-               if(frame instanceof JFrame){
+               ProcessingNetworkRenderer presentation = null;
+               
+               if(frame instanceof Component){
+                       Component c = (Component) frame;
+                       final Dimension size = c.getSize();
+                       presentation = new 
ProcessingNetworkRenderer(DEFAULT_WINDOW_SIZE, view);
+                       
+                       String title = view.getVisualProperty(NETWORK_TITLE);
+                       
                        JFrame window = (JFrame)frame;
-                       window.setTitle("P Test 1");
+                       window.setTitle(title);
                        window.setLayout(new BorderLayout());
                        window.add(presentation, BorderLayout.CENTER);
                        presentation.init();
                        
-                       window.setPreferredSize(new Dimension(400, 400));
+                       window.setPreferredSize(DEFAULT_WINDOW_SIZE);
                        //window.add(presentation);
                        window.pack();
                        window.setLocationByPlatform(true);
@@ -49,7 +65,7 @@
        }
 
        public NetworkRenderer createPresentation(CyNetworkView view) {
-               return new ProcessingNetworkRenderer(400);
+               return new ProcessingNetworkRenderer(DEFAULT_WINDOW_SIZE, view);
        }
 
        public void visualPropertySet(VisualProperty vp, Object value) {


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