summaryrefslogtreecommitdiff
path: root/vcl/source/gdi/print3.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'vcl/source/gdi/print3.cxx')
-rw-r--r--vcl/source/gdi/print3.cxx11
1 files changed, 10 insertions, 1 deletions
diff --git a/vcl/source/gdi/print3.cxx b/vcl/source/gdi/print3.cxx
index 8251c5f2f506..c7ad36a48d7c 100644
--- a/vcl/source/gdi/print3.cxx
+++ b/vcl/source/gdi/print3.cxx
@@ -331,7 +331,7 @@ void Printer::ImplPrintJob( const boost::shared_ptr<PrinterController>& i_pContr
bool bIsQuick = rQuick.Len() && rQuick.EqualsIgnoreCaseAscii( "true" );
if( ! pController->getPrinter()->GetCapabilities( PRINTER_CAPABILITIES_EXTERNALDIALOG ) &&
! bIsQuick &&
- ! Application::IsHeadlessModeEnabled()
+ pController->isShowDialogs()
)
{
try
@@ -1143,6 +1143,15 @@ void PrinterController::pushPropertiesToPrinter()
mpImplData->mpPrinter->SetCopyCount( static_cast<USHORT>(nCopyCount), bCollate );
}
+bool PrinterController::isShowDialogs() const
+{
+ sal_Bool bApi = sal_False;
+ const com::sun::star::beans::PropertyValue* pVal = getValue( rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "IsApi" ) ) );
+ if( pVal )
+ pVal->Value >>= bApi;
+ return ! bApi && ! Application::IsHeadlessModeEnabled();
+}
+
/*
* PrinterOptionsHelper
**/