[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] fenfire/org/fenfire swamp/CachedNodeFunction.ja...
From: |
Matti Katila |
Subject: |
[Gzz-commits] fenfire/org/fenfire swamp/CachedNodeFunction.ja... |
Date: |
Tue, 13 May 2003 18:08:57 -0400 |
CVSROOT: /cvsroot/fenfire
Module name: fenfire
Changes by: Matti Katila <address@hidden> 03/05/13 18:08:57
Modified files:
org/fenfire/swamp: CachedNodeFunction.java
org/fenfire/view: FenPDFContext.java RSTText.java
org/fenfire/view/buoy: AbstractMainNode2D.java
Added files:
org/fenfire/view/lava: TextHandler.java
Log message:
clicking a note accurses it by reddishing.
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/swamp/CachedNodeFunction.java.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/FenPDFContext.java.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/RSTText.java.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java.diff?tr1=1.6&tr2=1.7&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/lava/TextHandler.java?rev=1.1
Patches:
Index: fenfire/org/fenfire/swamp/CachedNodeFunction.java
diff -u fenfire/org/fenfire/swamp/CachedNodeFunction.java:1.5
fenfire/org/fenfire/swamp/CachedNodeFunction.java:1.6
--- fenfire/org/fenfire/swamp/CachedNodeFunction.java:1.5 Sun Apr 27
07:40:27 2003
+++ fenfire/org/fenfire/swamp/CachedNodeFunction.java Tue May 13 18:08:57 2003
@@ -78,4 +78,24 @@
return cac.value;
}
+
+ // AAaarrgghh, tried to find a few hours to how to set nodes dirty
+ // mudyc, XXX
+ public void makeAllDirty(Object node) {
+ CacheEntry cac = (CacheEntry)cache.get(node);
+ if(cac == null) {
+ cac = new CacheEntry();
+ cac.node = node;
+ cache.put(node, cac);
+ }
+
+ Iterator it = cache.entrySet().iterator();
+ while(it.hasNext()) {
+ Map.Entry entry = (Map.Entry) it.next();
+ Object o = cache.get(entry.getKey());
+ CacheEntry ce = (CacheEntry)o;
+ ce.value = DIRTY;
+ cache.put(ce.node, ce);
+ }
+ }
}
Index: fenfire/org/fenfire/view/FenPDFContext.java
diff -u fenfire/org/fenfire/view/FenPDFContext.java:1.4
fenfire/org/fenfire/view/FenPDFContext.java:1.5
--- fenfire/org/fenfire/view/FenPDFContext.java:1.4 Mon May 12 23:14:24 2003
+++ fenfire/org/fenfire/view/FenPDFContext.java Tue May 13 18:08:57 2003
@@ -1,6 +1,7 @@
// (c): Matti J. Katila
package org.fenfire.view;
+import org.fenfire.view.lava.*;
import org.fenfire.swamp.*;
import org.fenfire.modules.pp.*;
import org.fenfire.*;
@@ -38,7 +39,19 @@
public void setCursorOffset(int offset) { cursorOffset = offset; }
private Object accursed = null;
- public void setAccursed(Object node) { accursed=node; }
+ public void setAccursed(Object node) {
+ accursed=node;
+
+ ((CachedNodeFunction)nodef).makeAllDirty(accursed);
+ }
+
+
+ public void isToBePlaced(Object node, TextHandler text) {
+ p("n"+node+" == "+accursed);
+ if (node==accursed)
+ text.setColor(java.awt.Color.red);
+ else text.setColor(java.awt.Color.black);
+ }
private Object rstNode;
Index: fenfire/org/fenfire/view/RSTText.java
diff -u fenfire/org/fenfire/view/RSTText.java:1.1
fenfire/org/fenfire/view/RSTText.java:1.2
--- fenfire/org/fenfire/view/RSTText.java:1.1 Wed May 7 00:08:05 2003
+++ fenfire/org/fenfire/view/RSTText.java Tue May 13 18:08:57 2003
@@ -26,20 +26,23 @@
* Written by Benja Fallenstein and Matti J. Katila
*/
package org.fenfire.view;
+import org.fenfire.view.lava.*;
import org.fenfire.swamp.*;
import org.nongnu.alph.*;
import org.nongnu.libvob.*;
+import org.nongnu.libvob.util.*;
import org.nongnu.libvob.vobs.*;
/** A node function returning a vob that shows
* the given node as text.
*/
-public class RSTText implements NodeFunction {
+public class RSTText extends TextHandler implements NodeFunction {
+ private void p(String s) { System.out.println("RSTText:: "+s); }
final NodeFunction nodeContent;
final TextStyle style;
final float scale;
- FenPDFContext context = null;
+ private FenPDFContext context = null;
public void setContext(FenPDFContext context) {
this.context = context;
@@ -56,11 +59,15 @@
public Object f(ConstGraph g, Object node) {
if (context == null) throw new Error("No context set");
+ context.isToBePlaced(node, this);
+ p("placed");
+
Enfilade1D enf = (Enfilade1D)nodeContent.f(g, node);
final Object objNode = node;
String s = enf.makeString();
- final TextVob vob = new TextVob(style, s, false);
+ final TextVob vob = new TextVob(style, s, false,
+ "Color " +
ColorUtil.colorGLString(color));
final float width = style.getWidth(s, scale);
final float height = style.getHeight(scale);
Index: fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java
diff -u fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java:1.6
fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java:1.7
--- fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java:1.6 Tue May 13
15:52:08 2003
+++ fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java Tue May 13
18:08:57 2003
@@ -148,18 +148,20 @@
e.getID() == MouseEvent.MOUSE_CLICKED){
View2D view = getView2D();
- p("v1: "+view);
while (view.getChildView2D() != null)
view = view.getChildView2D();
- p("v2: "+view);
+ // currently only for canvas2d canvases
if (view instanceof CanvasView2D) {
Object obj = ((CanvasView2D)view).getNode(oldVobScene,
e.getX(), e.getY(),
plane, box2screen, box2screen,
box2paper, null);
-
- p("Object is: "+ obj.toString() + " TADAA!!");
+ if (obj != null) {
+ p("Object is: "+ obj.toString() + " TADAA!!");
+ context.setAccursed(obj);
+ AbstractUpdateManager.chg();
+ }
}
else p("not a canvas view?");
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] fenfire/org/fenfire swamp/CachedNodeFunction.ja...,
Matti Katila <=