[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] fenfire/org/fenfire modules/pp/PPCanvasCursor.j...
From: |
Matti Katila |
Subject: |
[Gzz-commits] fenfire/org/fenfire modules/pp/PPCanvasCursor.j... |
Date: |
Tue, 08 Apr 2003 20:56:51 -0400 |
CVSROOT: /cvsroot/fenfire
Module name: fenfire
Changes by: Matti Katila <address@hidden> 03/04/08 20:56:51
Modified files:
org/fenfire/modules/pp: PPCanvasCursor.java PPCanvasNode.java
Pp.java UniquePaperVob.java
org/fenfire/view: SpatialPlane.java
Log message:
Seepra paper :) , fixes
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPCanvasCursor.java.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPCanvasNode.java.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/Pp.java.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/UniquePaperVob.java.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/SpatialPlane.java.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
Patches:
Index: fenfire/org/fenfire/modules/pp/PPCanvasCursor.java
diff -u fenfire/org/fenfire/modules/pp/PPCanvasCursor.java:1.7
fenfire/org/fenfire/modules/pp/PPCanvasCursor.java:1.8
--- fenfire/org/fenfire/modules/pp/PPCanvasCursor.java:1.7 Tue Apr 8
17:13:01 2003
+++ fenfire/org/fenfire/modules/pp/PPCanvasCursor.java Tue Apr 8 20:56:51 2003
@@ -23,7 +23,7 @@
/** XXX
*/
public class PPCanvasCursor implements BuoyViewMainNode {
-private static final String rcsid = "$Id: PPCanvasCursor.java,v 1.7 2003/04/08
21:13:01 mudyc Exp $";
+private static final String rcsid = "$Id: PPCanvasCursor.java,v 1.8 2003/04/09
00:56:51 mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) {
System.out.println("PPCanvasCursor::"+s); }
@@ -163,7 +163,7 @@
int zo = (int)(zoom * 100000);
int geometry = vs.orthoBoxCS(into, "FocusGeometry",0, zo,0, 1,1,
panx, pany);
- vs.map.put(new UniquePaperVob(URN5Namespace.instance.generateId()),
into, geometry);
+ vs.map.put(new UniquePaperVob(node.toString()), into, geometry);
(new SpatialPlane(PP.noteType, PP.contains)).renderAWT(vs, into,
geometry,
node,
nodeview, space.getModel(),hook);
}
@@ -196,7 +196,7 @@
- if (m_state[2] == e.BUTTON1_MASK){
+ if (m_state[2] == e.BUTTON1_MASK && e.getID() ==
MouseEvent.MOUSE_CLICKED){
float[] pt = new float[] { e.getX(), e.getY(), 0 };
Index: fenfire/org/fenfire/modules/pp/PPCanvasNode.java
diff -u fenfire/org/fenfire/modules/pp/PPCanvasNode.java:1.7
fenfire/org/fenfire/modules/pp/PPCanvasNode.java:1.8
--- fenfire/org/fenfire/modules/pp/PPCanvasNode.java:1.7 Tue Apr 8
17:13:01 2003
+++ fenfire/org/fenfire/modules/pp/PPCanvasNode.java Tue Apr 8 20:56:51 2003
@@ -21,7 +21,7 @@
import com.hp.hpl.mesa.rdf.jena.vocabulary.*;
public class PPCanvasNode implements NodeBuoyViewNodeType {
-private static final String rcsid = "$Id: PPCanvasNode.java,v 1.7 2003/04/08
21:13:01 mudyc Exp $";
+private static final String rcsid = "$Id: PPCanvasNode.java,v 1.8 2003/04/09
00:56:51 mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.out.println("PPCanvasNode::"+s);
}
@@ -109,7 +109,7 @@
int zo = (int)(buoyZoom * 100000);
int geometry = vs.orthoBoxCS(into, "FocusGeometry",0, zo,0, 1,1,
pan[0], pan[1]);
- vs.map.put(new UniquePaperVob(URN5Namespace.instance.generateId()),
into, geometry);
+ vs.map.put(new UniquePaperVob(node.toString()), into, geometry);
(new SpatialPlane(PP.noteType, PP.contains)).renderAWT(vs, into,
geometry,
node,
nodeview, space.getModel(),null);
}
Index: fenfire/org/fenfire/modules/pp/Pp.java
diff -u fenfire/org/fenfire/modules/pp/Pp.java:1.6
fenfire/org/fenfire/modules/pp/Pp.java:1.7
--- fenfire/org/fenfire/modules/pp/Pp.java:1.6 Tue Apr 8 17:13:01 2003
+++ fenfire/org/fenfire/modules/pp/Pp.java Tue Apr 8 20:56:51 2003
@@ -28,13 +28,14 @@
public class Pp implements BuoyLinkListener {
-public static final String rcsid = "$Id: Pp.java,v 1.6 2003/04/08 21:13:01
mudyc Exp $";
+public static final String rcsid = "$Id: Pp.java,v 1.7 2003/04/09 00:56:51
mudyc Exp $";
public static final boolean dbg = true;
protected static void p(String s) { if(dbg) pa(s); }
protected static void pa(String s) { System.out.println("Pp::"+s); }
+ private static Pp pp;
static public void main(String[] args) throws RemoteException,
RDFException {
- new Pp();
+ pp = new Pp();
}
private final GraphicsAPI api = GraphicsAPI.getInstance();
@@ -57,19 +58,26 @@
nodeview = new DefaultNodeView(space);
String paper = ppAct.newPaper();
- String note = ppAct.newNote(paper, 0,0, "A test note");
+ String n1 = ppAct.newNote(paper, 0,10, "A test note");
+ String n2 = ppAct.newNote(paper, 20,-100, "Foobar");
+ String n3 = ppAct.newNote(paper, -30,60, "BarFooo ugh");
+ String n4 = ppAct.newNote(paper, 40,80, "**SIGH**");
- String paper2 = ppAct.newPaper();
- String note2 = ppAct.newNote(paper2, -50,0, "A test note");
- ppAct.assocNotes(note, 1, note2);
+ paper = ppAct.newPaper();
+ String note = ppAct.newNote(paper, -50,0, "A test note");
+ ppAct.assocNotes(n1, 1, note);
- note = ppAct.newNote(paper, 50,50, "10 10");
- ppAct.assocNotes(note, 1, note2);
- note = ppAct.newNote(paper, -100,100, "-10 10");
- ppAct.assocNotes(note2, 1, note);
+ note = ppAct.newNote(ppAct.newPaper(), 100, 200, "Ibsum bara plum");
+ ppAct.assocNotes(n2, -1, note);
+ note = ppAct.newNote(ppAct.newPaper(), -100, -200, "Ibsum plum");
+ ppAct.assocNotes(n3, 1, note);
- accursed = space.getModel().getResource(note);
+ note = ppAct.newNote(ppAct.newPaper(), 10, 20, "Ibsum bara");
+ ppAct.assocNotes(n4, -1, note);
+
+
+ accursed = space.getModel().getResource(n1);
api.startUpdateManager(new Runnable() {
@@ -123,6 +131,21 @@
if (cs < 0) return;
// check if cs is some buoy if not call mainfocusviewnode...
+ Object obj = buoys.get(""+cs);
+ if (obj != null) {
+ Pair p = (Pair)obj;
+ if (((RDFNode)p.first).equals(accursed)) {
+ focus = adaptor.createMainNode(null, p.second, pp);
+ accursed = (RDFNode)p.second;
+ }
+ else {
+ focus = adaptor.createMainNode(null, p.first, pp);
+ accursed = (RDFNode)p.first;
+ }
+ AbstractUpdateManager.chg();
+ return;
+ }
+
if (focus.mouse(m, vs)) {
AbstractUpdateManager.setNoAnimation();
AbstractUpdateManager.chg();
@@ -204,6 +227,7 @@
}
buoys.put(""+buoyCS, linkId);
curVs.matcher.add(buoyCS, linkId);
+ curVs.activate(buoyCS);
float[] fl = new float[3];
c.getSqSize(buoyCS, fl);
Index: fenfire/org/fenfire/modules/pp/UniquePaperVob.java
diff -u fenfire/org/fenfire/modules/pp/UniquePaperVob.java:1.4
fenfire/org/fenfire/modules/pp/UniquePaperVob.java:1.5
--- fenfire/org/fenfire/modules/pp/UniquePaperVob.java:1.4 Tue Apr 8
17:13:01 2003
+++ fenfire/org/fenfire/modules/pp/UniquePaperVob.java Tue Apr 8 20:56:51 2003
@@ -7,20 +7,22 @@
import org.nongnu.libvob.util.ColorUtil;
import java.awt.*;
+import java.util.Random;
/** A vob which is a rectangular background and frame.
* Draws a filled (possibly with several colors) background rectangle,
* surrounded by a rectangle of the current foreground color.
*/
public class UniquePaperVob extends AbstractVob {
-public static final String rcsid = "$Id: UniquePaperVob.java,v 1.4 2003/04/08
21:13:01 mudyc Exp $";
+public static final String rcsid = "$Id: UniquePaperVob.java,v 1.5 2003/04/09
00:56:51 mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) {
System.out.println("UniquePaperVob::"+s); }
- private final Object uniqId;
+ private Random rand;
+ private final long seed;
public UniquePaperVob(Object uniqId) {
- this.uniqId = uniqId;
+ this.seed = uniqId.hashCode();
}
@@ -28,7 +30,7 @@
boolean fast,
Vob.RenderInfo info1,
Vob.RenderInfo info2) {
-
+ rand = new Random(seed);
Shape oldClip = g.getClip();
Color oldfg = g.getColor();
@@ -47,10 +49,59 @@
float zoom = ((float)(geom.x))/100000;
int gx = geom.x;
- //pa("Zoom: "+zoom);
- g.setColor(Color.orange);
- g.fillRect(mx, my, mw, mh);
+ // Make SEEPRA! ;)
+ float k = rand.nextFloat() * 2 -1;
+ float ratio = rand.nextFloat();
+ Color c1 = getUniqColor();
+ Color c2 = getUniqColor();
+
+ float a =(float) Math.PI * rand.nextFloat();
+ if (a > Math.PI/4 && a <= Math.PI *3f/4) {
+ // verticals..
+
+ float begin_x = mx - mw * 2 + (panx%mw)/zoom;
+ if (panx < 0) begin_x = mx - mw * 2 - (-panx%mw)/zoom;
+ begin_x += (pany/zoom)/Math.tan(a);
+
+ boolean black = true;
+
+ float end_x = mx+mw + Math.abs(mh/(float)Math.tan(a));
+ float linew = mw/(rand.nextInt()%5 + 3);
+ while (begin_x < end_x) {
+ int[] x = new int[4];
+ int[] y = new int[4];
+
+ //pa("foo"+begin_x+"/"+end_x);
+
+ x[0] = (int)(begin_x);
+ y[0] = (my+mh);
+
+ x[1] = (int)( begin_x + mh/Math.tan(a) );
+ y[1] = my;
+ if (black)
+ begin_x += Math.abs(zoom* ratio * linew);
+ else
+ begin_x += Math.abs(zoom* (1-ratio) * linew);
+ black = !black;
+
+ x[2] = (int)( begin_x + mh/Math.tan(a));
+ y[2] = my;
+ x[3] = (int)(begin_x);
+ y[3] = my+mh;
+
+ if (black) g.setColor(c1);
+ else g.setColor(c2);
+
+ g.fillPolygon(x,y,4);
+ }
+ } else {
+ // horizontals..
+ g.setColor(c1);
+ g.fillRect(mx, my, mw, mh);
+ }
+
+
int x = mx + mw/2 - (int)((mw*zoom)/4) + (int)(panx * zoom),
y = my + mh/2 - (int)((mh*zoom)/4) + (int)(pany * zoom),
@@ -67,6 +118,13 @@
g.setColor(oldfg);
g.setClip(oldClip);
}
+
+ private Color getUniqColor() {
+ float brigh = .8f;
+ return Color.getHSBColor(rand.nextFloat(), .4f +
(rand.nextFloat()*2-1)/8, brigh);
+ }
+
+
Vob glList;
Index: fenfire/org/fenfire/view/SpatialPlane.java
diff -u fenfire/org/fenfire/view/SpatialPlane.java:1.7
fenfire/org/fenfire/view/SpatialPlane.java:1.8
--- fenfire/org/fenfire/view/SpatialPlane.java:1.7 Tue Apr 8 17:13:01 2003
+++ fenfire/org/fenfire/view/SpatialPlane.java Tue Apr 8 20:56:51 2003
@@ -26,7 +26,7 @@
*/
public class SpatialPlane {
-public static final String rcsid = "$Id: SpatialPlane.java,v 1.7 2003/04/08
21:13:01 mudyc Exp $";
+public static final String rcsid = "$Id: SpatialPlane.java,v 1.8 2003/04/09
00:56:51 mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.out.println("SpatialPlane::"+s);
}
@@ -87,8 +87,8 @@
nodeview.getSize(n, bs, zoom);
Pair matchKey = new Pair(container, n);
int box = vs.orthoCS(0, matchKey, pt[2]-.5f,
- pt[0] + (pan[0] + coords[0]) * zoom,
- pt[1] + (pan[1] + coords[1]) * zoom,
+ pt[0] + (pan[0] - coords[0] - bs[0]) * zoom,
+ pt[1] + (pan[1] - coords[1] - bs[1]) * zoom,
bs[0], bs[1]);
nodeview.place(n, vs, box);