[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] fenfire/org/fenfire demo/fenpdfcontext.py view/...
From: |
Tuomas J. Lukka |
Subject: |
[Gzz-commits] fenfire/org/fenfire demo/fenpdfcontext.py view/... |
Date: |
Thu, 14 Aug 2003 01:38:08 -0400 |
CVSROOT: /cvsroot/fenfire
Module name: fenfire
Branch:
Changes by: Tuomas J. Lukka <address@hidden> 03/08/14 01:38:08
Modified files:
org/fenfire/demo: fenpdfcontext.py
org/fenfire/view: PageSpanLayout.java pagespanlayout.test
org/fenfire/view/buoy: actions.py
Log message:
Transclusion code initial segment (prints out the enf we'd be
transcluding), + failing test and fix for it in PageSpanLayout (actually MAKE a
real enfilade)
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/demo/fenpdfcontext.py.diff?tr1=1.31&tr2=1.32&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/PageSpanLayout.java.diff?tr1=1.20&tr2=1.21&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/pagespanlayout.test.diff?tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/buoy/actions.py.diff?tr1=1.14&tr2=1.15&r1=text&r2=text
Patches:
Index: fenfire/org/fenfire/demo/fenpdfcontext.py
diff -u fenfire/org/fenfire/demo/fenpdfcontext.py:1.31
fenfire/org/fenfire/demo/fenpdfcontext.py:1.32
--- fenfire/org/fenfire/demo/fenpdfcontext.py:1.31 Wed Aug 13 11:50:27 2003
+++ fenfire/org/fenfire/demo/fenpdfcontext.py Thu Aug 14 01:38:07 2003
@@ -126,9 +126,12 @@
class Selection:
def __init__(self):
self.area = [0,0,0,0]
- self.view = None
+ self.mainNode = None
def getArea(self): return self.area
- def setArea(self, area): self.area = area
+ def getMainNode(self): return self.mainNode
+ def setArea(self, area, mainNode):
+ self.area = area
+ self.mainNode = mainNode
def hasSelection(self):
a = self.area
return (a[0]-a[2]) != 0 and (a[1]-a[3]) != 0
@@ -208,6 +211,14 @@
obj = self.states.objectOnPlane
self.states.ppActions.deleteNote(obj)
+ class Transclude(Action):
+ def run(self):
+ node = self.states.selection.getMainNode()
+ area = self.states.selection.getArea()
+ obj = node.getView2D().getSelectedObject(
+ node.getPlane(), *area)
+ print "Transclude selected: ",node.getPlane(), area, obj
+
def __init__(self, states):
self.states = states
self.style = vob.GraphicsAPI.getInstance().getTextStyle('sans', 0, 12)
@@ -217,12 +228,16 @@
def makeMainList(self):
self.list = vob.vobs.SelectListVob(self.style)
- self.list.add('Destroy this canvas', self.KillPlane(self.states))
+ if self.states.selection.hasSelection():
+ self.list.add('Transclude selection (PDF to canvas only)',
+ self.Transclude(self.states))
if self.link:
- self.list.add('Delete this node', self.DeleteNode(self.states))
self.list.add('Link node to left', self.LinkL(self.states))
self.list.add('Link node to rigth', self.LinkR(self.states))
self.list.add('Go to home', 'home')
+ self.list.add('Destroy this canvas', self.KillPlane(self.states))
+ if self.link:
+ self.list.add('Delete this node', self.DeleteNode(self.states))
def makeBuoyList(self):
self.list = vob.vobs.SelectListVob(self.style)
Index: fenfire/org/fenfire/view/PageSpanLayout.java
diff -u fenfire/org/fenfire/view/PageSpanLayout.java:1.20
fenfire/org/fenfire/view/PageSpanLayout.java:1.21
--- fenfire/org/fenfire/view/PageSpanLayout.java:1.20 Wed Aug 13 12:56:28 2003
+++ fenfire/org/fenfire/view/PageSpanLayout.java Thu Aug 14 01:38:08 2003
@@ -260,7 +260,7 @@
if(rx1 >= d.width) rx1 = d.width - 1;
if(ry1 >= d.height) ry1 = d.height - 1;
- enf.plus(enfilade1DMaker.makeEnfilade(pages[p].subArea(rx0,ry0,
rx1-rx0, ry1-ry0)));
+ enf =
enf.plus(enfilade1DMaker.makeEnfilade(pages[p].subArea(rx0,ry0, rx1-rx0,
ry1-ry0)));
}
return enf;
}
Index: fenfire/org/fenfire/view/buoy/actions.py
diff -u fenfire/org/fenfire/view/buoy/actions.py:1.14
fenfire/org/fenfire/view/buoy/actions.py:1.15
--- fenfire/org/fenfire/view/buoy/actions.py:1.14 Wed Aug 13 10:30:17 2003
+++ fenfire/org/fenfire/view/buoy/actions.py Thu Aug 14 01:38:08 2003
@@ -151,6 +151,11 @@
v.setCurrentPlane(self.mainNode.getPlane())
xy = self.mainNode.getXYHit(self.oldVS, x,y)
v.setArea(self.oldxy[0], self.oldxy[1], xy[0], xy[1])
+
+ self.context.states.selection.setArea(
+ (self.oldxy[0], self.oldxy[1], xy[0], xy[1]),
+ self.mainNode)
+
self.mainNode.chgFast(self.oldVS, -1)
self.context.states.fastChg = 1
def endDrag(self, x,y):
Index: fenfire/org/fenfire/view/pagespanlayout.test
diff -u fenfire/org/fenfire/view/pagespanlayout.test:1.10
fenfire/org/fenfire/view/pagespanlayout.test:1.11
--- fenfire/org/fenfire/view/pagespanlayout.test:1.10 Tue Jun 24 07:11:52 2003
+++ fenfire/org/fenfire/view/pagespanlayout.test Thu Aug 14 01:38:08 2003
@@ -153,7 +153,15 @@
# int(150 - .5 * 792 / 5.0)):
# fail(exc)
-
+def testSelection():
+ """Test that getting selection returns a good enf.
+ """
+ pageSpanLayout =
fenfire.view.PageSpanLayout(enfMaker.makeEnfilade(sc.getCurrent()))
+ w = pageSpanLayout.getWidth()
+ h = pageSpanLayout.getHeight()
+
+ enf = pageSpanLayout.getSelection(0, 0, w, h)
+ assert enf.length() == 2, (enf, enf.length())
- [Gzz-commits] fenfire/org/fenfire demo/fenpdfcontext.py view/...,
Tuomas J. Lukka <=