From 0a210e99ff283f37b8ada260820b67c6e12d78f5 Mon Sep 17 00:00:00 2001 From: Vladimir Glazounov Date: Tue, 1 Jul 2008 22:09:33 +0000 Subject: [PATCH] INTEGRATION: CWS aquavcl08 (1.5.40); FILE MERGED 2008/05/15 13:26:31 pl 1.5.40.1: #i87249# support multiple page format print jobs on Mac/Aqua --- vcl/inc/vcl/impprn.hxx | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/vcl/inc/vcl/impprn.hxx b/vcl/inc/vcl/impprn.hxx index e30497e56cb6..c86090e8b49f 100644 --- a/vcl/inc/vcl/impprn.hxx +++ b/vcl/inc/vcl/impprn.hxx @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: impprn.hxx,v $ - * $Revision: 1.5 $ + * $Revision: 1.6 $ * * This file is part of OpenOffice.org. * @@ -113,7 +113,32 @@ public: used by pull implementation to get the number of physical pages (that is how often PrintNextPage should be called) */ - ULONG GetPrintPageCount(); + ULONG GetPrintPageCount() const; + + /** + used by pull implementation to get ranges of physical pages that + are to be printed on the same paper. If bIncludeOrientationChanges is true + then orientation changes will not break a page run; the implementation has + to rotate the page contents accordingly in that case. + + The returned vector contains all pages indices beginning a new medium and additionally + the index that of the last page+1 (for convenience, so the length of a range + is always v[i+1] - v[i]) + + Example: 5 pages, all A4 + return: [0 5] + + Example: 6 pages, beginning A4, switching tol A5 on fourth page, back to A4 on fifth page + return [0 3 4 6] + + returns an false in push model (error condition) + */ + bool GetPaperRanges( std::vector< ULONG >& o_rRanges, bool i_bIncludeOrientationChanges ) const; + + /** + get the jobsetup for a page + */ + ImplJobSetup* GetPageSetup( unsigned int nPage ) const; }; #endif // _SV_IMPPRN_HXX