[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp...
From: |
Tuomas J. Lukka |
Subject: |
[ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp... |
Date: |
Fri, 22 Aug 2003 05:07:01 -0400 |
CVSROOT: /cvsroot/fenfire
Module name: fenfire
Branch:
Changes by: Tuomas J. Lukka <address@hidden> 03/08/22 05:06:58
Modified files:
org/fenfire/bin: fenpdf10.py
org/fenfire/fenpdf: fenpdf.py fenpdfcontext.py
org/fenfire/fenpdf/actions: keyboard.py
org/fenfire/fenpdf/appearance: views.py
org/fenfire/fenpdf/events: eventhandler.py mouse.py
Added files:
org/fenfire/fenpdf/events: buttons.py
Removed files:
org/fenfire/demo: buoyoing.py
Log message:
patch-35
Refactor: keys do not go through Context object
patch-36
Start refactoring buttons
patch-37
Clarify comment
patch-38
Move buttons and their actions to the right place
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/bin/fenpdf10.py.diff?tr1=1.66&tr2=1.67&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/fenpdf/fenpdf.py.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/fenpdf/fenpdfcontext.py.diff?tr1=1.22&tr2=1.23&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/fenpdf/actions/keyboard.py.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/fenpdf/appearance/views.py.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/fenpdf/events/buttons.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/fenpdf/events/eventhandler.py.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/fenpdf/events/mouse.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
Patches:
Index: fenfire/org/fenfire/bin/fenpdf10.py
diff -u fenfire/org/fenfire/bin/fenpdf10.py:1.66
fenfire/org/fenfire/bin/fenpdf10.py:1.67
--- fenfire/org/fenfire/bin/fenpdf10.py:1.66 Fri Aug 22 01:21:07 2003
+++ fenfire/org/fenfire/bin/fenpdf10.py Fri Aug 22 05:06:56 2003
@@ -197,6 +197,8 @@
fenPDF = ff.fenpdf.fenpdf.FenPDF(fen, treetime)
fenPDF.window = w
+fenPDF.events.buttons = ff.fenpdf.events.buttons.ActionButtons()
+fenPDF.events.buttons.fenPDF = fenPDF
papers = ff.fenpdf.appearance.papers.Papers()
@@ -219,8 +221,6 @@
context.states.cursor = ff.fenpdf.fenpdfcontext.Cursor(fen,
views.getMultiplexerNodeContentFunction())
-context.keys = fenPDF.events.key
-
eventHandler.context = context
@@ -252,7 +252,8 @@
def scene(self, vs):
self.context.states.vs = vs
scene = views.scene(vs)
- self.context.renderContext(vs, 0)
+ fenPDF.events.buttons.render(vs, 0)
+ self.context.renderContext(vs)
return scene
def mouse(self, ev):
Index: fenfire/org/fenfire/fenpdf/actions/keyboard.py
diff -u fenfire/org/fenfire/fenpdf/actions/keyboard.py:1.4
fenfire/org/fenfire/fenpdf/actions/keyboard.py:1.5
--- fenfire/org/fenfire/fenpdf/actions/keyboard.py:1.4 Fri Aug 22 01:21:07 2003
+++ fenfire/org/fenfire/fenpdf/actions/keyboard.py Fri Aug 22 05:06:57 2003
@@ -134,3 +134,45 @@
self.fenPDF.views.getDoubleGeometer().setSingle(
not self.fenPDF.views.getDoubleGeometer().getSingle())
vob.AbstractUpdateManager.chg()
+
+
+ def importPDF(self):
+ """Show the dialog for importing new PDF files.
+ """
+ scrollBlock = ff.fenpdf.importpdf.importPDF_select(
+ self.fenPDF.fen,
+ self.fenPDF.structure.treeTime)
+ p('sc: ',scrollBlock,'id: ', scrollBlock.getID())
+ if scrollBlock != None:
+ self.moveTo(None, scrollBlock)
+
+ def newCanvas(self):
+ canvas = Nodes.N()
+ self.fenPDF.structure.canvas2d.makeIntoCanvas(canvas)
+ self.fenPDF.structure.treeTime.addLatest(self.fenPDF.fen.graph, canvas)
+ self.moveTo(None, canvas)
+
+ def moveTo(self, main, newFocus):
+ """Move the focus to a new place.
+
+ main -- the mainNode to move, can be None for default.
+ newFocus -- the new focused node.
+ """
+ index = 0
+
+ self.fenPDF.views.setFocus(index, newFocus)
+ # buoymanager.replaceManager(0,
+ # ff.view.buoy.FisheyeMainNode2D(
+ # scrollBlock,
+ # views.pageview,
+ # ff.view.buoy.AbstractMainNode2D.SimpleFocus(0,0),
+ # self.states.mainMouse))
+
+ #buoymanager.replaceManager(0,
+ # ff.view.buoy.MainNode2D(ff.swamp.Nodes.get(paper),
+ # views.irregu,
ff.view.buoy.AbstractMainNode2D.SimpleFocus(0,0),1,
+ # self.states.mainMouse))
+
+
+
+
Index: fenfire/org/fenfire/fenpdf/appearance/views.py
diff -u fenfire/org/fenfire/fenpdf/appearance/views.py:1.5
fenfire/org/fenfire/fenpdf/appearance/views.py:1.6
--- fenfire/org/fenfire/fenpdf/appearance/views.py:1.5 Fri Aug 22 01:21:08 2003
+++ fenfire/org/fenfire/fenpdf/appearance/views.py Fri Aug 22 05:06:57 2003
@@ -112,14 +112,20 @@
self.createMainNode(plane))
def createMainNode(self, plane):
- if isinstance(plane, alph.PageScroll):
- return ff.view.buoy.FisheyeMainNode2D(plane, self.pagescrollview2d,
+ if isinstance(plane, alph.PageScrollBlock):
+ return ff.view.buoy.FisheyeMainNode2D(plane,
+ self.pagescrollview2d,
+ ff.view.buoy.AbstractMainNode2D.SimpleFocus(0,0),
self.fenPDF.events.mouse.getMainMouseMultiplexer())
else:
return ff.view.buoy.MainNode2D(plane, self.canvasview2d,
self.fenPDF.events.mouse.getMainMouseMultiplexer())
def scene(self, vs):
+ """Render the scene, and return the vobScene.
+ BuoyManager may decide
+ """
+
return self.buoyManager.scene(vs)
def getConnectors(self):
Index: fenfire/org/fenfire/fenpdf/events/eventhandler.py
diff -u fenfire/org/fenfire/fenpdf/events/eventhandler.py:1.1
fenfire/org/fenfire/fenpdf/events/eventhandler.py:1.2
--- fenfire/org/fenfire/fenpdf/events/eventhandler.py:1.1 Fri Aug 22
01:21:47 2003
+++ fenfire/org/fenfire/fenpdf/events/eventhandler.py Fri Aug 22 05:06:58 2003
@@ -42,12 +42,14 @@
if ev.getType() != ev.MOUSE_CLICKED:
return 0
- if self.context.doMouse(ev, oldvs):
+ if (self.context.doMouse(ev, oldvs) or
+ self.fenPDF.events.buttons.mouseEvent(ev, oldvs)):
p('context seen, now cleaning it')
self.context.clean()
self.fenPDF.events.mouse.mainMouse.flush()
vob.AbstractUpdateManager.chg()
return 1
+
self.context.clean()
return 0
@@ -77,11 +79,8 @@
def key(self, key):
- self.context.key(key)
- #elif key == "?":
- # vob.putil.demo.showHelp = 1-showHelp
- # vob.AbstractUpdateManager.setNoAnimation()
-
+ self.fenPDF.events.key.key(key,
+ self.context.states.buoymanager.getLastMain())
vob.AbstractUpdateManager.chg()
return 1
Index: fenfire/org/fenfire/fenpdf/events/mouse.py
diff -u fenfire/org/fenfire/fenpdf/events/mouse.py:1.3
fenfire/org/fenfire/fenpdf/events/mouse.py:1.4
--- fenfire/org/fenfire/fenpdf/events/mouse.py:1.3 Thu Aug 21 04:24:09 2003
+++ fenfire/org/fenfire/fenpdf/events/mouse.py Fri Aug 22 05:06:58 2003
@@ -21,7 +21,10 @@
def update(self):
- # self.mainMouse.clear() # XXX Not implemented
+ # We might like to clear the mainMouse of all
+ # bindings here, but that's not implemented
+ # yet.
+ # self.mainMouse.clear()
actions = self.fenPDF.actions
Index: fenfire/org/fenfire/fenpdf/fenpdf.py
diff -u fenfire/org/fenfire/fenpdf/fenpdf.py:1.5
fenfire/org/fenfire/fenpdf/fenpdf.py:1.6
--- fenfire/org/fenfire/fenpdf/fenpdf.py:1.5 Fri Aug 22 01:21:07 2003
+++ fenfire/org/fenfire/fenpdf/fenpdf.py Fri Aug 22 05:06:57 2003
@@ -47,5 +47,6 @@
self.structure.canvas2d = ff.structure.Canvas2D.create(fen.graph)
self.structure.treeTime = treeTime
-
+ def render(self, vs):
+ pass
Index: fenfire/org/fenfire/fenpdf/fenpdfcontext.py
diff -u fenfire/org/fenfire/fenpdf/fenpdfcontext.py:1.22
fenfire/org/fenfire/fenpdf/fenpdfcontext.py:1.23
--- fenfire/org/fenfire/fenpdf/fenpdfcontext.py:1.22 Thu Aug 21 08:45:08 2003
+++ fenfire/org/fenfire/fenpdf/fenpdfcontext.py Fri Aug 22 05:06:57 2003
@@ -273,8 +273,6 @@
def setBuoyManager(self, manager):
self.states.buoymanager = manager
- def key(self, key):
- self.keys.key(key, self.states.buoymanager.getLastMain())
# call back from AbstractMainNode2D
def changeFastAfterMouseEvent(self):
@@ -297,54 +295,14 @@
vs.put(vob.vobs.LineVob(0,0,0,1, java.awt.Color.darkGray), cursorCS)
- def renderContext(self, vs, into):
+ def renderContext(self, vs):
self.mousemenu.render(vs)
- self.mousebuttons = cs = vs.translateCS(0, "BUTTONS",0,0)
- b = ff.view.lava.Button(vs, cs, 30, 0, 50);
- b.add("[Import PS/PDF]", "IMPORT");
- b.add("[New paper]", "NEW_PAPER");
- b.add("[Save]", "SAVE");
def doMouse(self, ev, oldVS):
""" Return true if context has eaten the event ;)"""
if self.mousemenu.mouse(ev, oldVS):
return 1
- if ev.getType() != ev.MOUSE_CLICKED: return 0;
-
- key = oldVS.getKeyAt(self.mousebuttons, ev.getX(), ev.getY(), None)
- if key == None: return 0
-
- buoymanager = self.states.buoymanager
- views = self.states.view2d
-
- if key == 'IMPORT':
- scrollBlock = ff.fenpdf.importpdf.importPDF_select(
- self.states.fen,
- self.states.ppActions.getTreeTime())
- p('sc: ',scrollBlock,'id: ', scrollBlock.getID())
- if scrollBlock != None:
- buoymanager.replaceManager(0,
- ff.view.buoy.FisheyeMainNode2D(
- scrollBlock,
- views.pageview,
- ff.view.buoy.AbstractMainNode2D.SimpleFocus(0,0),
- self.states.mainMouse))
- return 1
- elif key == 'NEW_PAPER':
- paper = self.states.ppActions.newPaper();
- buoymanager.replaceManager(0,
- ff.view.buoy.MainNode2D(ff.swamp.Nodes.get(paper),
- views.irregu,
ff.view.buoy.AbstractMainNode2D.SimpleFocus(0,0),1,
- self.states.mainMouse))
- return 1
- elif key == "SAVE":
- self.save()
- return 1
- else:
- p('key', key)
- return 0
-
def save(self):
print "SAVING..."
model = ff.swamp.Graphs.toModel(self.states.fen.graph);
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/20
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/21
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/22
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp...,
Tuomas J. Lukka <=
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Matti Katila, 2003/08/22
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/22
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/22
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/22
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/22
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/23
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/24
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/24
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/24
- [ff-cvs] fenfire/org/fenfire bin/fenpdf10.py fenpdf/fenp..., Tuomas J. Lukka, 2003/08/25