summaryrefslogtreecommitdiff
path: root/sfx2/source/view/viewprn.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'sfx2/source/view/viewprn.cxx')
-rw-r--r--sfx2/source/view/viewprn.cxx32
1 files changed, 23 insertions, 9 deletions
diff --git a/sfx2/source/view/viewprn.cxx b/sfx2/source/view/viewprn.cxx
index 6109e7bab7f0..292f28c0c77c 100644
--- a/sfx2/source/view/viewprn.cxx
+++ b/sfx2/source/view/viewprn.cxx
@@ -144,18 +144,26 @@ SfxPrinterController::SfxPrinterController( const Any& i_rComplete,
aRenderOptions[1].Value = i_rViewProp;
aRenderOptions[2].Name = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "IsPrinter" ) );
aRenderOptions[2].Value <<= sal_True;
- Sequence< beans::PropertyValue > aRenderParms( mxRenderable->getRenderer( 0 , getSelectionObject(), aRenderOptions ) );
- int nProps = aRenderParms.getLength();
- for( int i = 0; i < nProps; i++ )
+ try
{
- if( aRenderParms[i].Name.equalsAscii( "ExtraPrintUIOptions" ) )
+ Sequence< beans::PropertyValue > aRenderParms( mxRenderable->getRenderer( 0 , getSelectionObject(), aRenderOptions ) );
+ int nProps = aRenderParms.getLength();
+ for( int i = 0; i < nProps; i++ )
{
- Sequence< beans::PropertyValue > aUIProps;
- aRenderParms[i].Value >>= aUIProps;
- setUIOptions( aUIProps );
- break;
+ if( aRenderParms[i].Name.equalsAscii( "ExtraPrintUIOptions" ) )
+ {
+ Sequence< beans::PropertyValue > aUIProps;
+ aRenderParms[i].Value >>= aUIProps;
+ setUIOptions( aUIProps );
+ break;
+ }
}
}
+ catch( lang::IllegalArgumentException& )
+ {
+ // the first renderer should always be available for the UI options,
+ // but catch the exception to be safe
+ }
}
// set some job parameters
@@ -235,7 +243,13 @@ Sequence< beans::PropertyValue > SfxPrinterController::getPageParameters( int i_
if( mxRenderable.is() && pPrinter )
{
Sequence< beans::PropertyValue > aJobOptions( getMergedOptions() );
- aResult = mxRenderable->getRenderer( i_nPage, getSelectionObject(), aJobOptions );
+ try
+ {
+ aResult = mxRenderable->getRenderer( i_nPage, getSelectionObject(), aJobOptions );
+ }
+ catch( lang::IllegalArgumentException& )
+ {
+ }
}
return aResult;
}