52
52
if(!checkHaveDocument())
54
bool ret = ScCore->primaryMainWindow()->DoSaveAsEps(QString::fromUtf8(Name));
55
bool ret = ScCore->primaryMainWindow()->DoSaveAsEps(QString::fromUtf8(Name), epsError);
57
PyErr_SetString(ScribusException, QObject::tr("Failed to save EPS.","python error"));
58
QString message = QObject::tr("Failed to save EPS.","python error");
59
if (!epsError.isEmpty())
60
message += QString("\n%1").arg(epsError);
61
PyErr_SetString(ScribusException, message.toLocal8Bit().constData());
60
64
// Py_INCREF(Py_True); // return True not None for backward compat
67
return PyBool_FromLong(static_cast<long>(true));
65
70
PyObject *scribus_deletepage(PyObject* /* self */, PyObject* args)
326
\fn import_addpages(int total, int pos)
327
\author Alessandro Pira <alex@alessandropira.org>
329
\param total number of pages to add, pos: position in the document
330
\param pos position of the imported pages
333
// This function is used by scribus_importpage() to add new pages
334
void import_addpages(int total, int pos) {
335
for (int i=0; i<total; i++) {
336
int locreal = pos + i;
337
int loc = pos + i + 1;
339
if (loc > ScCore->primaryMainWindow()->doc->Pages->count()) {
340
loc = ScCore->primaryMainWindow()->doc->Pages->count();
342
QString qName(CommonStrings::trMasterPageNormal);
344
if (ScCore->primaryMainWindow()->doc->pageSets[ScCore->primaryMainWindow()->doc->currentPageLayout].Columns != 1) {
345
ScCore->primaryMainWindow()->doc->locationOfPage(loc);
346
switch (ScCore->primaryMainWindow()->doc->locationOfPage(loc))
349
qName = CommonStrings::trMasterPageNormalLeft;
352
qName = CommonStrings::trMasterPageNormalRight;
355
qName = CommonStrings::trMasterPageNormalMiddle;
359
ScCore->primaryMainWindow()->slotNewPageP(locreal, qName);
364
\fn scribus_importpage(PyObject*, PyObject* args)
365
\author Alessandro Pira <alex@alessandropira.org>
367
\param PyObject unused reference
368
\param args Python function args ("fromDoc", (pageList), [create, imortwhere, importwherePage])
369
\retval Py_RETURN_NONE if ok, null if error
371
PyObject *scribus_importpage(PyObject* /* self */, PyObject* args)
374
PyObject *pages = NULL;
377
int importWherePage = 0;
379
if (!PyArg_ParseTuple(args, "sO|iii", &doc, &pages, &createPageI, &importWhere, &importWherePage))
381
if(!checkHaveDocument())
384
if (!PyTuple_Check(pages))
386
PyErr_SetString(PyExc_TypeError, QObject::tr("second argument is not tuple: must be tuple of int values.","python error").toLocal8Bit().constData());
391
std::vector<int> pageNs;
393
n = PyTuple_Size(pages);
396
if (!PyArg_Parse(PyTuple_GetItem(pages, i), "i", &p))
398
PyErr_SetString(PyExc_TypeError, QObject::tr("second argument contains non-numeric values: must be list of int values.","python error").toLocal8Bit().constData());
406
QString fromDoc = QString(doc);
407
bool createPage = (createPageI != 0);
409
int startPage=0, nrToImport=pageNs.size();
412
if (ScCore->primaryMainWindow()->doc->masterPageMode())
415
ScCore->primaryMainWindow()->loadPage(fromDoc, pageNs[0] - 1, false);
420
if (importWhere == 0) //Before page
421
startPage = importWherePage;
422
else if (importWhere == 1) //After page
423
startPage = importWherePage + 1;
425
startPage = ScCore->primaryMainWindow()->doc->DocPages.count() + 1;
427
import_addpages(nrToImport, startPage);
431
startPage = ScCore->primaryMainWindow()->doc->currentPage()->pageNr() + 1;
432
if (nrToImport > (ScCore->primaryMainWindow()->doc->DocPages.count() - ScCore->primaryMainWindow()->doc->currentPage()->pageNr()))
434
int tmp=nrToImport - (ScCore->primaryMainWindow()->doc->DocPages.count() - ScCore->primaryMainWindow()->doc->currentPage()->pageNr());
435
import_addpages(tmp, ScCore->primaryMainWindow()->doc->DocPages.count());
443
int counter = startPage + 1;
444
for (int i = 0; i < nrToImport; ++i)
446
ScCore->primaryMainWindow()->view->GotoPa(counter);
447
ScCore->primaryMainWindow()->loadPage(fromDoc, pageNs[i] - 1, false);
320
457
/*! HACK: this removes "warning: 'blah' defined but not used" compiler warnings
321
458
with header files structure untouched (docstrings are kept near declarations)
323
460
void cmdpagedocwarnings()
326
s << scribus_newpage__doc__ << scribus_pageposition__doc__ << scribus_actualpage__doc__ << scribus_redraw__doc__ << scribus_savepageeps__doc__ << scribus_deletepage__doc__ << scribus_gotopage__doc__ << scribus_pagecount__doc__ << scribus_getHguides__doc__ <<scribus_setHguides__doc__ <<scribus_getVguides__doc__ <<scribus_setVguides__doc__ <<scribus_pagedimension__doc__ <<scribus_getpageitems__doc__ <<scribus_getpagemargins__doc__;
463
s << scribus_newpage__doc__ << scribus_pageposition__doc__
464
<< scribus_actualpage__doc__ << scribus_redraw__doc__
465
<< scribus_savepageeps__doc__ << scribus_deletepage__doc__
466
<< scribus_gotopage__doc__ << scribus_pagecount__doc__
467
<< scribus_getHguides__doc__ << scribus_setHguides__doc__
468
<< scribus_getVguides__doc__ << scribus_setVguides__doc__
469
<< scribus_pagedimension__doc__ << scribus_getpageitems__doc__
470
<< scribus_getpagemargins__doc__ << scribus_importpage__doc__;