7 |
# Therefore, we'll just use a single class. |
# Therefore, we'll just use a single class. |
8 |
|
|
9 |
import vob |
import vob |
10 |
|
import alph |
11 |
|
|
12 |
from org.fenfire.swamp import Nodes |
from org.fenfire.swamp import Nodes |
13 |
from org import fenfire as ff |
from org import fenfire as ff |
155 |
self.fenPDF.animation.regenerateVS() |
self.fenPDF.animation.regenerateVS() |
156 |
|
|
157 |
|
|
158 |
def importPDF(self): |
def importPDF(self, main = None): |
159 |
"""Show the dialog for importing new PDF files. |
"""Show the dialog for importing new PDF files. |
160 |
|
|
161 |
|
If the given (or upper) main node is on a canvas, |
162 |
|
transclude from all PDF files the topmost part |
163 |
|
of the first page. |
164 |
""" |
""" |
165 |
scrollBlock = ff.fenpdf.importpdf.importPDF_select( |
self.fenPDF.animation.regenerateVS() |
166 |
|
scrollBlocks = ff.fenpdf.importpdf.importPDF_select( |
167 |
self.fenPDF.fen, |
self.fenPDF.fen, |
168 |
self.fenPDF.structure.treeTime) |
self.fenPDF.structure.treeTime) |
169 |
p('sc: ',scrollBlock,'id: ', scrollBlock.getID()) |
p('sc: ',scrollBlocks) |
170 |
if scrollBlock != None: |
if not len(scrollBlocks): return |
171 |
|
if not main: |
172 |
|
main = self.fenPDF.views.getBuoyManager().singles[0].mainNode |
173 |
|
if isinstance(main.getPlane(), alph.PageScrollBlock): |
174 |
self.moveTo(None, scrollBlock) |
self.moveTo(None, scrollBlock) |
175 |
self.fenPDF.animation.regenerateVS() |
return |
176 |
|
# |
177 |
|
# Now transclude. |
178 |
|
# |
179 |
|
x = main.getFocus().getPanX() |
180 |
|
y = main.getFocus().getPanY() |
181 |
|
for sb in scrollBlocks: |
182 |
|
node = self.fenPDF.actions.abstract.createNewNode( |
183 |
|
main.getPlane(), |
184 |
|
x, |
185 |
|
y, |
186 |
|
) |
187 |
|
page = sb.getPage(0); |
188 |
|
size = page.getSize(); |
189 |
|
self.fenPDF.fen.txt.set( |
190 |
|
node, |
191 |
|
self.fenPDF.fen.enfMaker.makeEnfilade( |
192 |
|
page.subArea(0, 0, size.width, size.height / 3) |
193 |
|
)) |
194 |
|
x += 100 |
195 |
|
y += 200 |
196 |
|
|
197 |
|
|
198 |
def newCanvas(self): |
def newCanvas(self): |
199 |
canvas = Nodes.N() |
canvas = Nodes.N() |