[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] fenfire ./TODO-loom org/fenfire/loom/Loom.java ...
From: |
Benja Fallenstein |
Subject: |
[Gzz-commits] fenfire ./TODO-loom org/fenfire/loom/Loom.java ... |
Date: |
Tue, 04 Mar 2003 10:48:16 -0500 |
CVSROOT: /cvsroot/fenfire
Module name: fenfire
Changes by: Benja Fallenstein <address@hidden> 03/03/04 10:48:15
Modified files:
. : TODO-loom
org/fenfire/loom: Loom.java SimpleView.java SimpleView.test
WheelView.java WheelView.test
Log message:
first mouse support
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/TODO-loom.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/loom/Loom.java.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/loom/SimpleView.java.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/loom/SimpleView.test.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/loom/WheelView.java.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/loom/WheelView.test.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
Patches:
Index: fenfire/TODO-loom
diff -u fenfire/TODO-loom:1.12 fenfire/TODO-loom:1.13
--- fenfire/TODO-loom:1.12 Tue Mar 4 10:16:23 2003
+++ fenfire/TODO-loom Tue Mar 4 10:48:15 2003
@@ -15,7 +15,9 @@
- README documenting how you can use this so far
- fix interpolation
- - make mouse work
+ - make mouse work better-- figure out how
+ - currently clicking on literal rotates to it,
+ clicking on node makes it focus
- better colours
- views proportional to window size
Index: fenfire/org/fenfire/loom/Loom.java
diff -u fenfire/org/fenfire/loom/Loom.java:1.6
fenfire/org/fenfire/loom/Loom.java:1.7
--- fenfire/org/fenfire/loom/Loom.java:1.6 Tue Mar 4 10:03:54 2003
+++ fenfire/org/fenfire/loom/Loom.java Tue Mar 4 10:48:15 2003
@@ -148,6 +148,8 @@
public void chg() {}
};
final Binder b = new Binder() {
+ Screen screen;
+
public void keystroke(String s) {
System.out.println("Keystroke: "+s);
if(s.equals("Up"))
@@ -168,8 +170,23 @@
AbstractUpdateManager.chg();
}
- public void mouse(MouseEvent m) {}
- public void setScreen(Screen s) {}
+ public void mouse(MouseEvent m) {
+ if(m.getID() != m.MOUSE_CLICKED) return;
+
+ VobScene vs = screen.getVobSceneForEvents();
+ int cs = vs.coords.getCSAt(0, m.getX(), m.getY(),
+ null);
+ if(cs < 0) return;
+ Object key = vs.matcher.getKey(cs);
+ if(key instanceof Resource) {
+ cursor.set((Resource)key);
+ AbstractUpdateManager.chg();
+ } else if(key instanceof Literal) {
+ cursor.set(cursor.focus, 1, (Literal)key);
+ AbstractUpdateManager.chg();
+ }
+ }
+ public void setScreen(Screen s) { this.screen = s; }
public void timeout(Object id) {}
public void windowClosed() {
System.exit(0);
Index: fenfire/org/fenfire/loom/SimpleView.java
diff -u fenfire/org/fenfire/loom/SimpleView.java:1.3
fenfire/org/fenfire/loom/SimpleView.java:1.4
--- fenfire/org/fenfire/loom/SimpleView.java:1.3 Tue Mar 4 06:17:19 2003
+++ fenfire/org/fenfire/loom/SimpleView.java Tue Mar 4 10:48:15 2003
@@ -61,6 +61,7 @@
int midx = sc.size.width/2, midy = sc.size.height/2;
int cs = sc.orthoBoxCS(into, c.focus, 0, midx-sizex/2, midy-sizey/2,
1, 1, sizex, sizey);
+ sc.coords.activate(cs);
nodeView.render(sc, cs, c.focus, null, 0);
int before = c.getRotationIndex(1);
@@ -72,6 +73,7 @@
Statement stmt = (Statement)j.next();
RDFNode node = stmt.getObject();
int cs2 = sc.orthoBoxCS(into, node, 0, x, y, 1, 1, sizex, sizey);
+ sc.coords.activate(cs2);
nodeView.render(sc, cs2, node, stmt.getPredicate(), 1);
sc.map.put(conn, cs, cs2);
y += sizey + gapy;
@@ -85,6 +87,7 @@
Statement stmt = (Statement)j.next();
RDFNode node = stmt.getSubject();
int cs2 = sc.orthoBoxCS(into, node, 0, x, y, 1, 1, sizex, sizey);
+ sc.coords.activate(cs2);
nodeView.render(sc, cs2, node, stmt.getPredicate(), -1);
sc.map.put(conn, cs2, cs);
y += sizey + gapy;
Index: fenfire/org/fenfire/loom/SimpleView.test
diff -u fenfire/org/fenfire/loom/SimpleView.test:1.5
fenfire/org/fenfire/loom/SimpleView.test:1.6
--- fenfire/org/fenfire/loom/SimpleView.test:1.5 Tue Mar 4 07:28:39 2003
+++ fenfire/org/fenfire/loom/SimpleView.test Tue Mar 4 10:48:15 2003
@@ -55,6 +55,11 @@
return [t,r,s,v,u,w].index(self.get(r1)) \
- [t,r,s,v,u,w].index(self.get(r2))
+def isActivated(scene, cs):
+ pt = scene.coords.transformPoint(cs, 0, 0, None)
+ return scene.coords.getCSAt(0, pt.x, pt.y, None) == cs
+
+
def testNullRotation():
r.addProperty(p, s)
r.addProperty(p, t)
@@ -118,6 +123,11 @@
# distances on both sides should be equal
# this works only if all nodes are same size... XXX
assert (ps.x - pr.x) == (pr.x - pw.x)
+
+ # Test that all node coordinate systems are activated
+ # (clickable).
+ for x in (cs_r, cs_s, cs_t, cs_u, cs_v, cs_w):
+ assert isActivated(vs, x)
# Test that SimpleView calls its NodeView
# with all the correct parameters.
Index: fenfire/org/fenfire/loom/WheelView.java
diff -u fenfire/org/fenfire/loom/WheelView.java:1.3
fenfire/org/fenfire/loom/WheelView.java:1.4
--- fenfire/org/fenfire/loom/WheelView.java:1.3 Tue Mar 4 06:17:19 2003
+++ fenfire/org/fenfire/loom/WheelView.java Tue Mar 4 10:48:15 2003
@@ -65,6 +65,7 @@
int midx = sc.size.width/2, midy = sc.size.height/2;
int cs = sc.orthoBoxCS(into, c.focus, 0, midx-sizex/2, midy-sizey/2,
1, 1, sizex, sizey);
+ sc.coords.activate(cs);
nodeView.render(sc, cs, c.focus, null, 0);
int totpos = c.getConnections(1).size();
@@ -89,6 +90,7 @@
midx+x(cura, r)-sizex/2,
midy+y(cura, r)-sizey/2,
1, 1, sizex, sizey);
+ sc.coords.activate(cs2);
nodeView.render(sc, cs2, node, stmt.getPredicate(), 1);
sc.map.put(conn, cs, cs2);
cura+=rota;
@@ -105,6 +107,7 @@
midx+x(cura, r)-sizex/2,
midy+y(cura, r)-sizey/2,
1, 1, sizex, sizey);
+ sc.coords.activate(cs2);
nodeView.render(sc, cs2, node, stmt.getPredicate(), -1);
sc.map.put(conn, cs2, cs);
cura+=rota;
Index: fenfire/org/fenfire/loom/WheelView.test
diff -u fenfire/org/fenfire/loom/WheelView.test:1.5
fenfire/org/fenfire/loom/WheelView.test:1.6
--- fenfire/org/fenfire/loom/WheelView.test:1.5 Tue Mar 4 07:28:39 2003
+++ fenfire/org/fenfire/loom/WheelView.test Tue Mar 4 10:48:15 2003
@@ -88,6 +88,11 @@
vs.coords.transformPoints3(cs, [0.0, 0.0, 0.0], tmp)
return (tmp[2])
+def isActivated(scene, cs):
+ pt = scene.coords.transformPoint(cs, 0, 0, None)
+ return scene.coords.getCSAt(0, pt.x, pt.y, None) == cs
+
+
def testWheel():
r.addProperty(p, s)
r.addProperty(p, t)
@@ -137,6 +142,11 @@
assert angle(pr, pu) == 2*math.pi/8*2
assert angle(pr, pw) == math.pi
assert angle(pr, pt) == 2*math.pi - angle(pr, pv)
+
+ # Test that all node coordinate systems are activated
+ # (clickable).
+ for x in (cs_r, cs_s, cs_t, cs_u, cs_v, cs_w):
+ assert isActivated(vs, x)
# Test that WheelView calls its NodeView
# with all the correct parameters.
- [Gzz-commits] fenfire ./TODO-loom org/fenfire/loom/Loom.java ...,
Benja Fallenstein <=
- [Gzz-commits] fenfire ./TODO-loom org/fenfire/loom/Loom.java ..., Benja Fallenstein, 2003/03/04
- [Gzz-commits] fenfire ./TODO-loom org/fenfire/loom/Loom.java ..., Benja Fallenstein, 2003/03/08
- [Gzz-commits] fenfire ./TODO-loom org/fenfire/loom/Loom.java ..., Benja Fallenstein, 2003/03/10
- [Gzz-commits] fenfire ./TODO-loom org/fenfire/loom/Loom.java ..., Benja Fallenstein, 2003/03/11
- [Gzz-commits] fenfire ./TODO-loom org/fenfire/loom/Loom.java ..., Benja Fallenstein, 2003/03/13