fenfire-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ff-cvs] fenfire/org/fenfire/demo mm.py


From: Matti Katila
Subject: [ff-cvs] fenfire/org/fenfire/demo mm.py
Date: Mon, 18 Aug 2003 07:33:20 -0400

CVSROOT:        /cvsroot/fenfire
Module name:    fenfire
Branch:         
Changes by:     Matti Katila <address@hidden>   03/08/18 07:33:19

Modified files:
        org/fenfire/demo: mm.py 

Log message:
        multiplexer

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/demo/mm.py.diff?tr1=1.22&tr2=1.23&r1=text&r2=text

Patches:
Index: fenfire/org/fenfire/demo/mm.py
diff -u fenfire/org/fenfire/demo/mm.py:1.22 fenfire/org/fenfire/demo/mm.py:1.23
--- fenfire/org/fenfire/demo/mm.py:1.22 Sun Aug 17 20:50:19 2003
+++ fenfire/org/fenfire/demo/mm.py      Mon Aug 18 07:33:19 2003
@@ -113,9 +113,21 @@
 fen.enfiladeOverlap = fen.txt.getTransclusionIndex()
 alphContent = ff.util.AlphContent(fen)
 
+
 textstyle = vob.GraphicsAPI.getInstance().getTextStyle("sansserif", 0, 24)
-nodeview = ff.view.TextNodeView(fen.txtfunc, textstyle)
-mindView = ff.view.lava.mindMapView2D.MindMapView2D(fen, nodeview)
+
+# normal
+normal_text = ff.view.TextNodeView(fen.txtfunc, textstyle, java.awt.Color(0.5, 
0.1, 1))
+normal_text_bg = ff.fenmm.WhiteNodeView(normal_text, None)
+normal = ff.swamp.CachedPureNodeFunction(100, fen.constgraph, normal_text_bg)
+
+# accursed
+accursed_text = ff.view.TextNodeView(fen.txtfunc, textstyle, 
java.awt.Color.black)
+accursed = ff.swamp.CachedPureNodeFunction(100, fen.constgraph, accursed_text)
+multiplexer = ff.swamp.MultiplexerNodeFunction(normal, accursed)
+
+
+mindView = ff.view.lava.mindMapView2D.MindMapView2D(fen, multiplexer)
 
 
 class Context(ff.view.buoy.AbstractMainNode2D.Context):
@@ -141,7 +153,7 @@
 
     def drawCursor(self, vs, node, cs):
         xy = jarray.zeros(2, 'f')
-        nodeview.getXY(fen.graph, context.getAccursed(), self.offset, xy)
+        normal_text.getXY(fen.graph, context.getAccursed(), self.offset, xy)
         cs = vs.orthoCS(cs, "CURSOR", 0, xy[0]*self.scale, xy[1]*self.scale,
                         0, -textstyle.getHeight(self.scale))
         vs.put(vob.vobs.LineVob(0,0,0,1, java.awt.Color.black), cs)
@@ -242,6 +254,9 @@
         rmb = context.rmb_switch[0]
         if rmb == 'go':
             self.context.setAccursed(node)
+            set = java.util.HashSet()
+            set.add(node)
+            multiplexer.setMultiplexerNodes(set)
 
             # set cursor, transitions between zoomed and normal should be 
accounted
             cs = vs.getCSAt(0, x,y, None)
@@ -252,28 +267,27 @@
             nodeScale = (100+into[2])+4
             if mindView.maxDepth > 40: nodeScale *= 40./mindView.maxDepth
             nodeScale = 1-math.log10(nodeScale/4.)
-        
+
             if node == self.context.main.getPlane():
                 # from border to linked
                 self.context.scale = self.context.main.getFocus().getZoom()
-                self.context.offset = nodeview.getPos(fen.graph, 
context.getAccursed(),
-                                                  
(x-into[0])/self.context.scale/nodeScale,
-                                                  
(y-into[1])/self.context.scale/nodeScale)
+                self.context.offset = normal_text.getPos(fen.graph, 
context.getAccursed(),
+                                                         
(x-into[0])/self.context.scale/nodeScale,
+                                                         
(y-into[1])/self.context.scale/nodeScale)
             elif ff.util.RDFUtil.isLinked(fen.graph, node):
                 # from linked or border to another linked
                 self.context.scale = self.context.main.getFocus().getZoom()
-                self.context.offset = nodeview.getPos(fen.graph, 
context.getAccursed(),
-                                                 
(x-into[0])/self.context.scale/nodeScale,
-                                                 
(y-into[1])/self.context.scale/nodeScale)
+                self.context.offset = normal_text.getPos(fen.graph, 
context.getAccursed(),
+                                                         
(x-into[0])/self.context.scale/nodeScale,
+                                                         
(y-into[1])/self.context.scale/nodeScale)
                 self.context.scale = 1
                 self.context.main.setNewPlane(node, 0,0,1)
             else:
                 # from border to border
                 self.context.scale = 1
-                self.context.offset = nodeview.getPos(fen.graph, 
context.getAccursed(),
-                                                  
(x-into[0])/self.context.scale/nodeScale,
-                                                  
(y-into[1])/self.context.scale/nodeScale)
-
+                self.context.offset = normal_text.getPos(fen.graph, 
context.getAccursed(),
+                                                         
(x-into[0])/self.context.scale/nodeScale,
+                                                         
(y-into[1])/self.context.scale/nodeScale)
         elif rmb == 'link':
             if node == self.context.main.getPlane():
                 pass
@@ -326,7 +340,7 @@
     def __init__(self):
         self.main = ff.view.lava.mindMapView2D.MindMapMainNode2D(context.home, 
mindView,
              ff.view.buoy.AbstractMainNode2D.SimpleFocus(0,0), mindMouse)
-        self.main.init(fen, nodeview)
+        self.main.init(fen, multiplexer)
         context.main = self.main
 
         # contexts for e.g. drawCursor callbacks and delivering accursedNode




reply via email to

[Prev in Thread] Current Thread [Next in Thread]