class SwDoc; class SwDocShell; class SetGetExpFields; class SwViewOption; class SwViewOptionAdjust_Impl; class SwViewShell; class SwRenderData;
/** this must match the definitions in css::text::NotePrintMode */ enumclass SwPostItMode
{
NONE = 0,
Only = 1,
EndDoc = 2,
EndPage = 3,
InMargins = 4
};
class SwPrintData
{ const SwRenderData * m_pRenderData; // not owner
/** Note: in the context where this class is used the pointers should always be valid
during the lifetime of this object */ const SwRenderData & GetRenderData() const { return *m_pRenderData; } void SetRenderData( const SwRenderData *pData ) { m_pRenderData = pData; }
/** A class that stores temporary data that is needed for rendering the document. Usuallythisdataiscreatedwhen'getRendererCount'iscalledand
and it is used in the 'render' function of that same interface */ class SwRenderData
{ /** pages valid for printing (according to the current settings)
This set of pages does NOT depend on the 'PageRange' that is used as a printing option! */
o3tl::sorted_vector< sal_Int32 > m_aValidPages; ///< the set of possible pages (see StringRangeEnumerator::getRangesFromString )
/// printer paper tray to use for each of the m_aValidPages above
std::map< sal_Int32, sal_Int32 > m_aPrinterPaperTrays;
/** vector of pages and their order to be printed (duplicates and any order allowed!) (see'render'inunotxdoc.cxx)
negative entry indicates the page to be printed is from the post-it doc */
std::vector< sal_Int32 > m_aPagesToPrint;
/** for prospect printing: the pairs of pages to be printed together on a single prospect page.
-1 indicates a half page to be left empty. */
std::vector< std::pair< sal_Int32, sal_Int32 > > m_aPagePairs;
OUString m_aPageRange;
/** temp print document -- must live longer than m_pViewOptionAdjust!
also this is a Lock and not a Ref because Ref does not delete the doc */
SfxObjectShellLock m_xTempDocShell;
/// the view options to be applied for printing
std::unique_ptr<SwViewOptionAdjust_Impl> m_pViewOptionAdjust;
std::unique_ptr<SwPrintData> m_pPrtOptions;
public:
// PostIt relevant data /// an array of "SetGetExpField *" sorted by page and line numbers
std::unique_ptr<SetGetExpFields> m_pPostItFields; /// this contains a SwDoc with the post-it content
std::unique_ptr<SwViewShell> m_pPostItShell;
/** a map for printer paper tray numbers to use for each document page
a value of -1 for the tray means that there is no specific tray defined */
std::map< sal_Int32, sal_Int32 >& GetPrinterPaperTrays() { return m_aPrinterPaperTrays; } const std::map< sal_Int32, sal_Int32 >& GetPrinterPaperTrays() const { return m_aPrinterPaperTrays; }
/** used for 'normal' printing Apagevalueof0asentryindicatesthatthispageisnotfromthedocumentbut
from the post-it document. (See also GetPostItStartFrame below) */
std::vector< sal_Int32 > & GetPagesToPrint() { return m_aPagesToPrint; } const std::vector< sal_Int32 > & GetPagesToPrint() const { return m_aPagesToPrint; }
/// used for prospect printing only
PagePairsVec_t & GetPagePairsForProspectPrinting() { return m_aPagePairs; } const PagePairsVec_t & GetPagePairsForProspectPrinting() const { return m_aPagePairs; }
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.