[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: |
Wed, 09 Apr 2003 18:25:06 -0400 |
CVSROOT: /cvsroot/fenfire
Module name: fenfire
Changes by: Matti Katila <address@hidden> 03/04/09 18:25:06
Modified files:
org/fenfire/modules/pp: PPCanvasCursor.java PPCanvasNode.java
Pp.java
org/fenfire/view: SpatialPlane.java
Log message:
much better
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPCanvasCursor.java.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPCanvasNode.java.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/Pp.java.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/SpatialPlane.java.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
Patches:
Index: fenfire/org/fenfire/modules/pp/PPCanvasCursor.java
diff -u fenfire/org/fenfire/modules/pp/PPCanvasCursor.java:1.9
fenfire/org/fenfire/modules/pp/PPCanvasCursor.java:1.10
--- fenfire/org/fenfire/modules/pp/PPCanvasCursor.java:1.9 Wed Apr 9
07:49:05 2003
+++ fenfire/org/fenfire/modules/pp/PPCanvasCursor.java Wed Apr 9 18:25:05 2003
@@ -5,7 +5,7 @@
import org.fenfire.view.buoy.*;
import org.fenfire.util.*;
import org.fenfire.*;
-import org.fenfire.vocab.PP;
+import org.fenfire.vocab.*;
import org.nongnu.libvob.*;
import org.nongnu.libvob.gl.*;
import org.nongnu.libvob.impl.*;
@@ -23,7 +23,7 @@
/** XXX
*/
public class PPCanvasCursor implements BuoyViewMainNode {
-private static final String rcsid = "$Id: PPCanvasCursor.java,v 1.9 2003/04/09
11:49:05 mudyc Exp $";
+private static final String rcsid = "$Id: PPCanvasCursor.java,v 1.10
2003/04/09 22:25:05 mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) {
System.out.println("PPCanvasCursor::"+s); }
@@ -96,39 +96,28 @@
-
-
- private RDFNode node;
private NodePlacementHook hook;
private GraphicsAPI.Window window;
private Space space;
private NodeView nodeview;
- public PPCanvasCursor(RDFNode node,
- NodePlacementHook hook,
+ private Pp.Context context;
+ public PPCanvasCursor(NodePlacementHook hook,
GraphicsAPI.Window w,
- Space space, NodeView nv) {
- this.node = node;
+ Space space, NodeView nv,
+ Pp.Context context)
+ {
this.hook = hook;
this.window = w;
this.space = space;
this.nodeview = nv;
+ this.context = context;
- /*
- SimpleVStreamTexter sct = (SimpleVStreamTexter)space.getNodeTexter();
- Enfilade1DImpl enf = (Enfilade1DImpl)sct.getEnfilade(c, null);
- java.util.List enfList= enf.getList();
- Span1D span = (Span1D) enfList.get(0);
- NodeView cv;
- if (span instanceof TextSpan)
- cv = new TextNodeContentView();
- else
- cv = new PageSpanNodeView();
+ // center to the associated note/image/whatever..
+ RDFNode node = context.getAccursed();
float [] bs = new float[3];
- cv.getSize(c, ((ViewContext)new AbstractViewContext()), bs);
- panx = bs[0]/2;
- pany = bs[1]/2;
- */
-
+ nodeview.getSize(node, bs);
+ panx = ShortRDF.getInt(space.getModel(), node, SPATIAL.coordX) +
bs[0]/2;
+ pany = ShortRDF.getInt(space.getModel(), node, SPATIAL.coordY) +
bs[1]/2;
}
@@ -146,13 +135,7 @@
private int c2fCS = -1;
public void renderMain(VobScene vs, int into) {
- /*
- c2fCS = vs.coords.ortho(0, 0,0,0, 10,10);
- int c2fCSInv = vs.coords.ortho(0, 0,0,0, 10,10);
- vs.matcher.add(into, c2fCS, "C2F");
- vs.matcher.add(into, c2fCSInv, "C2FINV");
- */
-
+ RDFNode node = context.getAccursed();
if (GraphicsAPI.getInstance() instanceof GLAPI) {
c2fCS = vs.orthoCS(into, "C2F",0,0,0, 10,10);
int c2fCSInv = vs.orthoCS(into, "C2FINV",0,0,0, 10,10);
@@ -174,33 +157,58 @@
}
}
- public void keystroke(String s) {
- pa("Key occured: "+s);
- }
+ public void keystroke(String s)
+ { try {
+ pa("Key occured: '"+s+"'");
+
+
+ if (s.length() == 1) {
+ PPActions ppact = context.getPPActions();
+ String paper = context.getCurrentPaper();
+
+ ppact.newNote(paper, (int)panx, (int)pany, s);
+
+ AbstractUpdateManager.setNoAnimation();
+ AbstractUpdateManager.chg();
+ }
+
+ }catch (java.rmi.RemoteException e) {
+ pa("RemoteException: "+e);
+ }}
// Mouse press state
// x, y, buttons
private int [] m_state = null;
private float m_state_zoom = -1;
+ private float pan[] = new float[2];
public boolean mouse(MouseEvent e, VobScene oldVobScene) {
if (e.getID() == MouseEvent.MOUSE_PRESSED) {
m_state = new int[]{ e.getX(), e.getY(), e.getModifiers()};
m_state_zoom = zoom;
+ pan[0] = panx; pan[1] = pany;
return false;
}
if (m_state == null) throw new Error("Mouse state not found!");
-
+ // let's zoom!!
if (m_state[2] == e.BUTTON3_MASK) {
-
- // let's zoom!!
zoom = m_state_zoom * (float)
Math.exp((m_state[1] - e.getY())/150.0);
return true;
}
-
-
+ // Move by dragging with button 1
+ if (m_state[2] == e.BUTTON1_MASK && e.getID() ==
MouseEvent.MOUSE_DRAGGED) {
+ if (GraphicsAPI.getInstance() instanceof GLAPI) {
+ ;
+ } else {
+ panx = pan[0] - (m_state[0] - e.getX())/zoom;
+ pany = pan[1] - (m_state[1] - e.getY())/zoom;
+ }
+ return true;
+ }
+
+ // Move around by clicking
if (m_state[2] == e.BUTTON1_MASK && e.getID() ==
MouseEvent.MOUSE_CLICKED){
float[] pt = new float[] { e.getX(), e.getY(), 0 };
@@ -236,15 +244,6 @@
// XXX current = current.h(d.contains);
AbstractUpdateManager.chg();
}
- return false;
- }
-
- if (m_state[2] == e.BUTTON3_MASK) {
- zoom = m_state_zoom * (float)
- Math.exp((m_state[0] - e.getY())/150.0);
-
- pa("Zoom: " + zoom);
- AbstractUpdateManager.chg();
return false;
}
Index: fenfire/org/fenfire/modules/pp/PPCanvasNode.java
diff -u fenfire/org/fenfire/modules/pp/PPCanvasNode.java:1.9
fenfire/org/fenfire/modules/pp/PPCanvasNode.java:1.10
--- fenfire/org/fenfire/modules/pp/PPCanvasNode.java:1.9 Wed Apr 9
07:49:06 2003
+++ fenfire/org/fenfire/modules/pp/PPCanvasNode.java Wed Apr 9 18:25:05 2003
@@ -21,17 +21,20 @@
import com.hp.hpl.mesa.rdf.jena.vocabulary.*;
public class PPCanvasNode implements NodeBuoyViewNodeType {
-private static final String rcsid = "$Id: PPCanvasNode.java,v 1.9 2003/04/09
11:49:06 mudyc Exp $";
+private static final String rcsid = "$Id: PPCanvasNode.java,v 1.10 2003/04/09
22:25:05 mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.out.println("PPCanvasNode::"+s);
}
private Space space;
private GraphicsAPI.Window win;
private NodeView nodeview;
- public PPCanvasNode(Space s, GraphicsAPI.Window w, NodeView nodeview) {
+ private Pp.Context context;
+ public PPCanvasNode(Space s, GraphicsAPI.Window w,
+ NodeView nodeview, Pp.Context context) {
this.space = s;
this.win = w;
this.nodeview = nodeview;
+ this.context = context;
}
/** The zoom to be used for the buoys.
@@ -123,7 +126,8 @@
}
public BuoyViewMainNode createMainNode(RDFNode node, Object content,
NodePlacementHook hook) {
- return new PPCanvasCursor(node, hook, win, space, nodeview);
+ context.setAccursed(node);
+ return new PPCanvasCursor(hook, win, space, nodeview, context);
}
Index: fenfire/org/fenfire/modules/pp/Pp.java
diff -u fenfire/org/fenfire/modules/pp/Pp.java:1.9
fenfire/org/fenfire/modules/pp/Pp.java:1.10
--- fenfire/org/fenfire/modules/pp/Pp.java:1.9 Wed Apr 9 10:05:42 2003
+++ fenfire/org/fenfire/modules/pp/Pp.java Wed Apr 9 18:25:05 2003
@@ -6,6 +6,7 @@
import org.fenfire.util.*;
import org.fenfire.view.*;
import org.fenfire.view.buoy.*;
+import org.fenfire.vocab.*;
import org.nongnu.libvob.*;
import org.nongnu.libvob.impl.*;
@@ -28,7 +29,7 @@
public class Pp implements BuoyLinkListener {
-public static final String rcsid = "$Id: Pp.java,v 1.9 2003/04/09 14:05:42
mudyc Exp $";
+public static final String rcsid = "$Id: Pp.java,v 1.10 2003/04/09 22:25:05
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); }
@@ -97,7 +98,7 @@
nodeview = new DefaultNodeView(space);
adaptor.nodes = new NodeBuoyViewNodeType[]{
- new PPCanvasNode(space, scr.window, nodeview)};
+ new PPCanvasNode(space, scr.window, nodeview, new
Pp.Context())};
adaptor.nodeLinkers = new BuoyNodeViewLinker[]{
new PPLinker(space)};
@@ -123,8 +124,9 @@
Screen screen;
public void keystroke(String s) {
- pa("Keystroke: "+s);
- AbstractUpdateManager.chg();
+ if (s.equals("Ctrl-Q")) System.exit(12765);
+
+ focus.keystroke(s);
}
public void mouse(MouseEvent m) {
VobScene vs = screen.getVobSceneForEvents();
@@ -164,9 +166,22 @@
// --------------------------------------------------
// WievContext
- public class PPView implements NodeView.Context {
+ public class Context implements NodeView.Context {
public void nodeIsToBePlaced(RDFNode node, NodeView nv) {
+ pa("view context is not implemented");
// do nothing
+ }
+
+ public RDFNode getAccursed() { return accursed; }
+ public void setAccursed(RDFNode node) { accursed = node; }
+
+ public PPActions getPPActions() { return ppAct; }
+ public String getCurrentPaper() {
+ RDFNode paper = getAccursed();
+ if (ShortRDF.isNodeType(space.getModel(), getAccursed(),
PP.noteType)) {
+ paper = ShortRDF.getSubj(space.getModel(), getAccursed(),
PP.contains);
+ }
+ return paper.toString();
}
}
Index: fenfire/org/fenfire/view/SpatialPlane.java
diff -u fenfire/org/fenfire/view/SpatialPlane.java:1.8
fenfire/org/fenfire/view/SpatialPlane.java:1.9
--- fenfire/org/fenfire/view/SpatialPlane.java:1.8 Tue Apr 8 20:56:51 2003
+++ fenfire/org/fenfire/view/SpatialPlane.java Wed Apr 9 18:25:05 2003
@@ -26,7 +26,7 @@
*/
public class SpatialPlane {
-public static final String rcsid = "$Id: SpatialPlane.java,v 1.8 2003/04/09
00:56:51 mudyc Exp $";
+public static final String rcsid = "$Id: SpatialPlane.java,v 1.9 2003/04/09
22:25:05 mudyc Exp $";
public static boolean dbg = false;
private static void pa(String s) { System.out.println("SpatialPlane::"+s);
}
@@ -65,6 +65,8 @@
float[] pt = vs.coords.transformPoints3(into, new float[3], null);
pt[0] += size[0]/2;
pt[1] += size[1]/2;
+ if (size[0] < 10 || size[1] <10) return;
+
float[] pan = new float[]{1,1};
vs.coords.getSqSize(geom, pan);
@@ -87,8 +89,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] - bs[0]) * zoom,
- pt[1] + (pan[1] - coords[1] - bs[1]) * zoom,
+ pt[0] + (pan[0] - coords[0])*zoom - bs[0],
+ pt[1] + (pan[1] - coords[1])*zoom - bs[1],
bs[0], bs[1]);
nodeview.place(n, vs, box);