Skip to content

Commit

Permalink
fix #68946: change score + parts pdf to use per part page numbering
Browse files Browse the repository at this point in the history
  • Loading branch information
lasconic committed Jul 15, 2015
1 parent b924062 commit 176574e
Showing 1 changed file with 0 additions and 67 deletions.
67 changes: 0 additions & 67 deletions mscore/file.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1956,13 +1956,6 @@ bool MuseScore::savePdf(QList<Score*> cs, const QString& saveName)
double mag = printerDev.logicalDpiX() / MScore::DPI;
p.scale(mag, mag);

//
// start pageOffset with configured offset of
// first score
//
int pageOffset = 0;
if (firstScore)
pageOffset = firstScore->pageNumberOffset();
bool firstPage = true;
for (Score* s : cs) {
LayoutMode layoutMode = s->layoutMode();
Expand All @@ -1974,50 +1967,6 @@ bool MuseScore::savePdf(QList<Score*> cs, const QString& saveName)
s->setPrinting(true);
MScore::pdfPrinting = true;

// we ignore the configured page offset
// we display page footer on all pages
// we display page number on all pages
int oldPageOffset = s->pageNumberOffset();
s->setPageNumberOffset(pageOffset);
bool footerFirstPage = s->style(StyleIdx::footerFirstPage).toBool();
s->style()->set(StyleIdx::footerFirstPage, true);

QString evenFooterL = s->style()->value(StyleIdx::evenFooterL).toString();
QString tmp = evenFooterL;
tmp.replace("$p", "$P");
s->style()->set(StyleIdx::evenFooterL, tmp);

QString evenFooterC = s->style()->value(StyleIdx::evenFooterC).toString();
tmp = evenFooterC;
tmp.replace("$p", "$P");
s->style()->set(StyleIdx::evenFooterC, tmp);

QString evenFooterR = s->style()->value(StyleIdx::evenFooterR).toString();
tmp = evenFooterR;
tmp.replace("$p", "$P");
s->style()->set(StyleIdx::evenFooterR, tmp);

QString oddFooterL = s->style()->value(StyleIdx::oddFooterL).toString();
tmp = oddFooterL;
tmp.replace("$p", "$P");
s->style()->set(StyleIdx::oddFooterL, tmp);

QString oddFooterC = s->style()->value(StyleIdx::oddFooterC).toString();
tmp = oddFooterC;
tmp.replace("$p", "$P");
s->style()->set(StyleIdx::oddFooterC, tmp);

QString oddFooterR = s->style()->value(StyleIdx::oddFooterR).toString();
tmp = oddFooterR;
tmp.replace("$p", "$P");
s->style()->set(StyleIdx::oddFooterR, tmp);

if (layoutMode == LayoutMode::PAGE)
s->startCmd();
s->doLayout();
if (layoutMode == LayoutMode::PAGE)
s->endCmd(true);

const PageFormat* pf = s->pageFormat();
printerDev.setPaperSize(pf->size(), QPrinter::Inch);

Expand All @@ -2029,26 +1978,10 @@ bool MuseScore::savePdf(QList<Score*> cs, const QString& saveName)
firstPage = false;
s->print(&p, n);
}
pageOffset += pages;

//reset score
s->setPrinting(false);
MScore::pdfPrinting = false;

s->setPageNumberOffset(oldPageOffset);
s->style()->set(StyleIdx::footerFirstPage, footerFirstPage);
s->style()->set(StyleIdx::evenFooterL, evenFooterL);
s->style()->set(StyleIdx::evenFooterC, evenFooterC);
s->style()->set(StyleIdx::evenFooterR, evenFooterR);
s->style()->set(StyleIdx::oddFooterL, oddFooterL);
s->style()->set(StyleIdx::oddFooterC, oddFooterC);
s->style()->set(StyleIdx::oddFooterR, oddFooterR);

if (layoutMode == LayoutMode::PAGE)
s->startCmd();
s->doLayout();
if (layoutMode == LayoutMode::PAGE)
s->endCmd(true);
if (layoutMode != s->layoutMode())
s->endCmd(true); // rollback
}
Expand Down

0 comments on commit 176574e

Please sign in to comment.