[Top][All Lists]
[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
- [ff-cvs] fenfire/org/fenfire/demo mm.py, Asko Soukka, 2003/08/17
- [ff-cvs] fenfire/org/fenfire/demo mm.py, Matti Katila, 2003/08/17
- [ff-cvs] fenfire/org/fenfire/demo mm.py,
Matti Katila <=
- [ff-cvs] fenfire/org/fenfire/demo mm.py, Asko Soukka, 2003/08/18
- [ff-cvs] fenfire/org/fenfire/demo mm.py, Matti Katila, 2003/08/19
- [ff-cvs] fenfire/org/fenfire/demo mm.py, Asko Soukka, 2003/08/26
- [ff-cvs] fenfire/org/fenfire/demo mm.py, Asko Soukka, 2003/08/27
- [ff-cvs] fenfire/org/fenfire/demo mm.py, Asko Soukka, 2003/08/27
- [ff-cvs] fenfire/org/fenfire/demo mm.py, Asko Soukka, 2003/08/27
- [ff-cvs] fenfire/org/fenfire/demo mm.py, Asko Soukka, 2003/08/28