Index: scribus/ui/pagepalette_widgets.cpp =================================================================== --- scribus/ui/pagepalette_widgets.cpp (revision 26292) +++ scribus/ui/pagepalette_widgets.cpp (working copy) @@ -701,11 +701,33 @@ painter.setPen(QPen( labelColor )); painter.drawText(rectCell, Qt::AlignHCenter|Qt::AlignBottom | Qt::TextWordWrap, QString::number(tile->pageNumber + 1)); - // Draw Page Name + /*** + Master page names can have a 1 to 4 letters prefix, terminated by a dash; + If defined, the prefix is displayed at the double of the normal size + */ + QString pagePrefix = ""; + int pageNameHyphen = tile->pageName.indexOf("-"); + // Fail fast if no hyphen or nothing to the left of it + if (pageNameHyphen > 0) + { + // Trim whitespace and ensure at least 1-4 chars or ignore it + QString tmp = tile->pageName.left(pageNameHyphen).trimmed(); + if (tmp.length() > 0 && tmp.length() < 5) + pagePrefix = tmp; + } + + // Draw Page Name or Page Prefix painter.setBackgroundMode(Qt::OpaqueMode); painter.setBackground(QColor(0,0,0,128)); painter.setPen(QPen(Qt::white)); - painter.drawText(rectPage.adjusted(2,2,-2,-2), Qt::AlignTop | Qt::AlignLeft |Qt::TextWordWrap, tile->pageName); + if (pagePrefix.isEmpty ()) + { + painter.drawText(rectPage.adjusted(2,2,-2,-2), Qt::AlignTop | Qt::AlignLeft | Qt::TextWordWrap, tile->pageName); + } else { + font.setPointSize(m_fontSize * 2); + painter.setFont(font); + painter.drawText(rectPage.adjusted(2,2,-2,-2), Qt::AlignCenter | Qt::AlignCenter, pagePrefix); + } // Draw Master Page Color // painter.setPen(Qt::NoPen);