summaryrefslogtreecommitdiff
path: root/psprint
diff options
context:
space:
mode:
authorKurt Zenker <kz@openoffice.org>2007-12-12 13:56:41 +0000
committerKurt Zenker <kz@openoffice.org>2007-12-12 13:56:41 +0000
commitb0f4ddffa17d321e0b4331f003f374c31d68f035 (patch)
tree75fd0af8bdfcfd810eb664b5a477da8f638fe22e /psprint
parent9ec3893575cc34a69a48bd2d095540241d2a9721 (diff)
INTEGRATION: CWS kprinter (1.44.16); FILE MERGED
2007/11/12 13:27:30 pl 1.44.16.1: #i83505# implement external print dialog on a queue
Diffstat (limited to 'psprint')
-rw-r--r--psprint/source/printergfx/printerjob.cxx20
1 files changed, 13 insertions, 7 deletions
diff --git a/psprint/source/printergfx/printerjob.cxx b/psprint/source/printergfx/printerjob.cxx
index b8383dbd28b6..30842d09a0e7 100644
--- a/psprint/source/printergfx/printerjob.cxx
+++ b/psprint/source/printergfx/printerjob.cxx
@@ -4,9 +4,9 @@
*
* $RCSfile: printerjob.cxx,v $
*
- * $Revision: 1.44 $
+ * $Revision: 1.45 $
*
- * last change: $Author: hr $ $Date: 2007-08-02 14:58:21 $
+ * last change: $Author: kz $ $Date: 2007-12-12 14:56:41 $
*
* The Contents of this file are made available subject to
* the terms of GNU Lesser General Public License Version 2.1.
@@ -230,8 +230,9 @@ PrinterJob::GetCurrentPageBody ()
*/
PrinterJob::PrinterJob () :
- mpJobHeader (NULL),
- mpJobTrailer (NULL)
+ mpJobHeader( NULL ),
+ mpJobTrailer( NULL ),
+ m_bQuickJob( false )
{
}
@@ -405,9 +406,11 @@ PrinterJob::StartJob (
const rtl::OUString& rJobName,
const rtl::OUString& rAppName,
const JobData& rSetupData,
- PrinterGfx* pGraphics
+ PrinterGfx* pGraphics,
+ bool bIsQuickJob
)
{
+ m_bQuickJob = bIsQuickJob;
mnMaxWidthPt = mnMaxHeightPt = 0;
m_pGraphics = pGraphics;
InitPaperSize (rSetupData);
@@ -574,7 +577,7 @@ PrinterJob::EndJob ()
else
{
PrinterInfoManager& rPrinterInfoManager = PrinterInfoManager::get ();
- pDestFILE = rPrinterInfoManager.startSpool( m_aLastJobData.m_aPrinterName );
+ pDestFILE = rPrinterInfoManager.startSpool( m_aLastJobData.m_aPrinterName, m_bQuickJob );
if (pDestFILE == NULL)
return sal_False;
}
@@ -1177,7 +1180,10 @@ bool PrinterJob::writeSetup( osl::File* pFile, const JobData& rJob )
}
bool bSuccess = true;
- if (rJob.m_nCopies > 1)
+ // in case of external print dialog the number of copies is prepended
+ // to the job, let us not complicate things by emitting our own copy count
+ bool bExternalDialog = PrinterInfoManager::get().checkFeatureToken( GetPrinterName(), "external_dialog" );
+ if( ! bExternalDialog && rJob.m_nCopies > 1 )
{
// setup code
ByteString aLine( "/#copies " );