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