1 /************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24 // MARKER(update_precomp.py): autogen include statement, do not remove 25 #include "precompiled_sfx2.hxx" 26 27 #ifndef GCC 28 #endif 29 #include <vcl/msgbox.hxx> 30 #include <unotools/printwarningoptions.hxx> 31 #include <svtools/printoptions.hxx> 32 #include <svl/flagitem.hxx> 33 34 35 #include "printopt.hrc" 36 #include "dialog.hrc" 37 #include "sfx2/sfxresid.hxx" 38 #include <sfx2/viewsh.hxx> 39 #include <sfx2/printopt.hxx> 40 41 // ----------- 42 // - statics - 43 // ----------- 44 45 static sal_uInt16 aDPIArray[] = { 72, 96, 150, 200, 300, 600 }; 46 static sal_Bool bOutputForPrinter = sal_True; 47 48 #define DPI_COUNT (sizeof(aDPIArray)/sizeof(aDPIArray[0 ])) 49 50 // -------------------------------- 51 // - SfxCommonPrintOptionsTabPage - 52 // -------------------------------- 53 54 SfxCommonPrintOptionsTabPage::SfxCommonPrintOptionsTabPage( Window* pParent, const SfxItemSet& rSet ) : 55 SfxTabPage( pParent, SfxResId( TP_COMMONPRINTOPTIONS ), rSet ), 56 57 aReduceGB( this, SfxResId( GB_REDUCE ) ), 58 aOutputTypeFT( this, SfxResId( FT_OUTPUTTYPE ) ), 59 aPrinterOutputRB( this, SfxResId( RB_PRINTEROUTPUT ) ), 60 aPrintFileOutputRB( this, SfxResId( RB_PRINTFILEOUTPUT ) ), 61 aOutputGB( this, SfxResId( GB_OUTPUT ) ), 62 aReduceTransparencyCB( this, SfxResId( CB_REDUCETRANSPARENCY ) ), 63 aReduceTransparencyAutoRB( this, SfxResId( RB_REDUCETRANSPARENCY_AUTO ) ), 64 aReduceTransparencyNoneRB( this, SfxResId( RB_REDUCETRANSPARENCY_NONE ) ), 65 aReduceGradientsCB( this, SfxResId( CB_REDUCEGRADIENTS ) ), 66 aReduceGradientsStripesRB( this, SfxResId( RB_REDUCEGRADIENTS_STRIPES ) ), 67 aReduceGradientsColorRB( this, SfxResId( RB_REDUCEGRADIENTS_COLOR ) ), 68 aReduceGradientsStepCountNF( this, SfxResId( NF_REDUCEGRADIENTS_STEPCOUNT ) ), 69 aReduceBitmapsCB( this, SfxResId( CB_REDUCEBITMAPS ) ), 70 aReduceBitmapsOptimalRB( this, SfxResId( RB_REDUCEBITMAPS_OPTIMAL ) ), 71 aReduceBitmapsNormalRB( this, SfxResId( RB_REDUCEBITMAPS_NORMAL ) ), 72 aReduceBitmapsResolutionRB( this, SfxResId( RB_REDUCEBITMAPS_RESOLUTION ) ), 73 aReduceBitmapsResolutionLB( this, SfxResId( LB_REDUCEBITMAPS_RESOLUTION ) ), 74 aReduceBitmapsTransparencyCB( this, SfxResId( CB_REDUCEBITMAPS_TRANSPARENCY ) ), 75 aConvertToGreyscalesCB( this, SfxResId( CB_CONVERTTOGREYSCALES ) ), 76 aWarnGB( this, SfxResId( GB_PRINT_WARN ) ), 77 aPaperSizeCB( this, SfxResId( CB_PAPERSIZE ) ), 78 aPaperOrientationCB( this, SfxResId( CB_PAPERORIENTATION ) ), 79 aTransparencyCB( this, SfxResId( CB_TRANSPARENCY ) ) 80 { 81 FreeResource(); 82 83 aOutputGB.SetStyle( aOutputGB.GetStyle() | WB_NOLABEL ); 84 85 if( bOutputForPrinter ) 86 { 87 aPrinterOutputRB.Check( sal_True ); 88 aOutputGB.SetText( OutputDevice::GetNonMnemonicString( aPrinterOutputRB.GetText() ) ); 89 } 90 else 91 { 92 aPrintFileOutputRB.Check( sal_True ); 93 aOutputGB.SetText( OutputDevice::GetNonMnemonicString( aPrintFileOutputRB.GetText() ) ); 94 } 95 96 aPrinterOutputRB.SetToggleHdl( LINK( this, SfxCommonPrintOptionsTabPage, ToggleOutputPrinterRBHdl ) ); 97 aPrintFileOutputRB.SetToggleHdl( LINK( this, SfxCommonPrintOptionsTabPage, ToggleOutputPrintFileRBHdl ) ); 98 99 aReduceTransparencyCB.SetClickHdl( LINK( this, SfxCommonPrintOptionsTabPage, ClickReduceTransparencyCBHdl ) ); 100 aReduceGradientsCB.SetClickHdl( LINK( this, SfxCommonPrintOptionsTabPage, ClickReduceGradientsCBHdl ) ); 101 aReduceBitmapsCB.SetClickHdl( LINK( this, SfxCommonPrintOptionsTabPage, ClickReduceBitmapsCBHdl ) ); 102 103 aReduceGradientsStripesRB.SetToggleHdl( LINK( this, SfxCommonPrintOptionsTabPage, ToggleReduceGradientsStripesRBHdl ) ); 104 aReduceBitmapsResolutionRB.SetToggleHdl( LINK( this, SfxCommonPrintOptionsTabPage, ToggleReduceBitmapsResolutionRBHdl ) ); 105 106 // --> PB 2008-06-09 #i89164# 107 // calculate dynamically the width of radiobutton and listbox 108 const long nOffset = 10; 109 Size aOldSize = aReduceBitmapsResolutionRB.GetSizePixel(); 110 Size aNewSize = aReduceBitmapsResolutionRB.GetOptimalSize( WINDOWSIZE_PREFERRED ); 111 aNewSize.Width() += nOffset; 112 aNewSize.Height() = aOldSize.Height(); 113 long nDelta = aOldSize.Width() - aNewSize.Width(); 114 aReduceBitmapsResolutionRB.SetSizePixel( aNewSize ); 115 Point aPos = aReduceBitmapsResolutionLB.GetPosPixel(); 116 aPos.X() -= nDelta; 117 aOldSize = aReduceBitmapsResolutionLB.GetSizePixel(); 118 aNewSize = aReduceBitmapsResolutionLB.GetOptimalSize( WINDOWSIZE_PREFERRED ); 119 aNewSize.Width() += nOffset; 120 aNewSize.Height() = aOldSize.Height(); 121 aReduceBitmapsResolutionLB.SetPosSizePixel( aPos, aNewSize ); 122 // <-- 123 } 124 125 // ----------------------------------------------------------------------------- 126 127 SfxCommonPrintOptionsTabPage::~SfxCommonPrintOptionsTabPage() 128 { 129 } 130 131 // ----------------------------------------------------------------------------- 132 133 SfxTabPage* SfxCommonPrintOptionsTabPage::Create( Window* pParent, const SfxItemSet& rAttrSet ) 134 { 135 return( new SfxCommonPrintOptionsTabPage( pParent, rAttrSet ) ); 136 } 137 138 // ----------------------------------------------------------------------------- 139 140 Window* SfxCommonPrintOptionsTabPage::GetParentLabeledBy( const Window* pWindow ) const 141 { 142 if ( pWindow == (Window *)&aReduceGradientsStepCountNF ) 143 return (Window *)&aReduceGradientsStripesRB; 144 else if ( pWindow == (Window *)&aReduceBitmapsResolutionLB ) 145 return (Window *)&aReduceBitmapsResolutionRB; 146 else 147 return SfxTabPage::GetParentLabeledBy( pWindow ); 148 } 149 150 Window* SfxCommonPrintOptionsTabPage::GetParentLabelFor( const Window* pWindow ) const 151 { 152 if ( pWindow == (Window *)&aReduceGradientsStripesRB ) 153 return (Window *)&aReduceGradientsStepCountNF; 154 else if ( pWindow == (Window *)&aReduceBitmapsResolutionRB ) 155 return (Window *)&aReduceBitmapsResolutionLB; 156 else 157 return SfxTabPage::GetParentLabelFor( pWindow ); 158 } 159 160 // ----------------------------------------------------------------------------- 161 162 sal_Bool SfxCommonPrintOptionsTabPage::FillItemSet( SfxItemSet& /*rSet*/ ) 163 { 164 SvtPrintWarningOptions aWarnOptions; 165 SvtPrinterOptions aPrinterOptions; 166 SvtPrintFileOptions aPrintFileOptions; 167 sal_Bool bModified = sal_False; 168 169 170 if( aPaperSizeCB.IsChecked() != aPaperSizeCB.GetSavedValue()) 171 aWarnOptions.SetPaperSize(aPaperSizeCB.IsChecked()); 172 if( aPaperOrientationCB.IsChecked() != aPaperOrientationCB.GetSavedValue() ) 173 aWarnOptions.SetPaperOrientation(aPaperOrientationCB.IsChecked()); 174 175 if( aTransparencyCB.IsChecked() != aTransparencyCB.GetSavedValue() ) 176 aWarnOptions.SetTransparency( aTransparencyCB.IsChecked() ); 177 178 ImplSaveControls( aPrinterOutputRB.IsChecked() ? &maPrinterOptions : &maPrintFileOptions ); 179 180 aPrinterOptions.SetPrinterOptions( maPrinterOptions ); 181 aPrintFileOptions.SetPrinterOptions( maPrintFileOptions ); 182 183 return bModified; 184 } 185 186 // ----------------------------------------------------------------------------- 187 188 void SfxCommonPrintOptionsTabPage::Reset( const SfxItemSet& /*rSet*/ ) 189 { 190 SvtPrintWarningOptions aWarnOptions; 191 SvtPrinterOptions aPrinterOptions; 192 SvtPrintFileOptions aPrintFileOptions; 193 194 aPaperSizeCB.Check( aWarnOptions.IsPaperSize() ); 195 aPaperOrientationCB.Check( aWarnOptions.IsPaperOrientation() ); 196 197 aTransparencyCB.Check( aWarnOptions.IsTransparency() ); 198 199 aPaperSizeCB.SaveValue(); 200 aPaperOrientationCB.SaveValue(); 201 aTransparencyCB.SaveValue(); 202 203 aPrinterOptions.GetPrinterOptions( maPrinterOptions ); 204 aPrintFileOptions.GetPrinterOptions( maPrintFileOptions ); 205 206 ImplUpdateControls( aPrinterOutputRB.IsChecked() ? &maPrinterOptions : &maPrintFileOptions ); 207 208 // --> OD 2008-06-25 #i63982# 209 ImplSetAccessibleNames(); 210 // <-- 211 } 212 213 // ----------------------------------------------------------------------------- 214 215 int SfxCommonPrintOptionsTabPage::DeactivatePage( SfxItemSet* pItemSet ) 216 { 217 if( pItemSet ) 218 FillItemSet( *pItemSet ); 219 220 return LEAVE_PAGE; 221 } 222 223 // ----------------------------------------------------------------------------- 224 225 void SfxCommonPrintOptionsTabPage::ImplUpdateControls( const PrinterOptions* pCurrentOptions ) 226 { 227 aReduceTransparencyCB.Check( pCurrentOptions->IsReduceTransparency() ); 228 229 if( pCurrentOptions->GetReducedTransparencyMode() == PRINTER_TRANSPARENCY_AUTO ) 230 aReduceTransparencyAutoRB.Check( sal_True ); 231 else 232 aReduceTransparencyNoneRB.Check( sal_True ); 233 234 aReduceGradientsCB.Check( pCurrentOptions->IsReduceGradients() ); 235 236 if( pCurrentOptions->GetReducedGradientMode() == PRINTER_GRADIENT_STRIPES ) 237 aReduceGradientsStripesRB.Check( sal_True ); 238 else 239 aReduceGradientsColorRB.Check( sal_True ); 240 241 aReduceGradientsStepCountNF.SetValue( pCurrentOptions->GetReducedGradientStepCount() ); 242 243 aReduceBitmapsCB.Check( pCurrentOptions->IsReduceBitmaps() ); 244 245 if( pCurrentOptions->GetReducedBitmapMode() == PRINTER_BITMAP_OPTIMAL ) 246 aReduceBitmapsOptimalRB.Check( sal_True ); 247 else if( pCurrentOptions->GetReducedBitmapMode() == PRINTER_BITMAP_NORMAL ) 248 aReduceBitmapsNormalRB.Check( sal_True ); 249 else 250 aReduceBitmapsResolutionRB.Check( sal_True ); 251 252 const sal_uInt16 nDPI = pCurrentOptions->GetReducedBitmapResolution(); 253 254 if( nDPI < aDPIArray[ 0 ] ) 255 aReduceBitmapsResolutionLB.SelectEntryPos( 0 ); 256 else 257 { 258 for( long i = ( DPI_COUNT - 1 ); i >= 0; i-- ) 259 { 260 if( nDPI >= aDPIArray[ i ] ) 261 { 262 aReduceBitmapsResolutionLB.SelectEntryPos( (sal_uInt16) i ); 263 i = -1; 264 } 265 } 266 } 267 268 aReduceBitmapsResolutionLB.SetText( aReduceBitmapsResolutionLB.GetEntry( aReduceBitmapsResolutionLB.GetSelectEntryPos() ) ); 269 270 aReduceBitmapsTransparencyCB.Check( pCurrentOptions->IsReducedBitmapIncludesTransparency() ); 271 aConvertToGreyscalesCB.Check( pCurrentOptions->IsConvertToGreyscales() ); 272 273 ClickReduceTransparencyCBHdl( &aReduceTransparencyCB ); 274 ClickReduceGradientsCBHdl( &aReduceGradientsCB ); 275 ClickReduceBitmapsCBHdl( &aReduceBitmapsCB ); 276 } 277 278 // ----------------------------------------------------------------------------- 279 280 void SfxCommonPrintOptionsTabPage::ImplSetAccessibleNames() 281 { 282 static const String cSeparator = String::CreateFromAscii( " - " ); 283 284 String sReduceText = aReduceGB.GetDisplayText(); 285 sReduceText += cSeparator; 286 287 String sAccessibleName = sReduceText; 288 sAccessibleName += aPrinterOutputRB.GetDisplayText(); 289 aPrinterOutputRB.SetAccessibleName( sAccessibleName ); 290 291 sAccessibleName = sReduceText; 292 sAccessibleName += aPrintFileOutputRB.GetDisplayText(); 293 aPrintFileOutputRB.SetAccessibleName( sAccessibleName ); 294 295 String sOutputText = sReduceText; 296 sOutputText += aOutputGB.GetDisplayText(); 297 sOutputText += cSeparator; 298 299 sAccessibleName = sOutputText; 300 sAccessibleName += aReduceTransparencyCB.GetDisplayText(); 301 aReduceTransparencyCB.SetAccessibleName( sAccessibleName ); 302 303 String sTransparencyText = aReduceTransparencyCB.GetAccessibleName(); 304 sTransparencyText += cSeparator; 305 306 sAccessibleName = sTransparencyText; 307 sAccessibleName += aReduceTransparencyAutoRB.GetDisplayText(); 308 aReduceTransparencyAutoRB.SetAccessibleName( sAccessibleName ); 309 310 sAccessibleName = sTransparencyText; 311 sAccessibleName += aReduceTransparencyNoneRB.GetDisplayText(); 312 aReduceTransparencyNoneRB.SetAccessibleName( sAccessibleName ); 313 314 sAccessibleName = sOutputText; 315 sAccessibleName += aReduceGradientsCB.GetDisplayText(); 316 aReduceGradientsCB.SetAccessibleName( sAccessibleName ); 317 318 String sGradientText = aReduceGradientsCB.GetAccessibleName(); 319 sGradientText += cSeparator; 320 321 sAccessibleName = sGradientText; 322 sAccessibleName += aReduceGradientsStripesRB.GetDisplayText(); 323 aReduceGradientsStripesRB.SetAccessibleName( sAccessibleName ); 324 325 sAccessibleName = aReduceGradientsStripesRB.GetAccessibleName(); 326 aReduceGradientsStepCountNF.SetAccessibleName( sAccessibleName ); 327 328 sAccessibleName = sGradientText; 329 sAccessibleName += aReduceGradientsColorRB.GetDisplayText(); 330 aReduceGradientsColorRB.SetAccessibleName( sAccessibleName ); 331 332 sAccessibleName = sOutputText; 333 sAccessibleName += aReduceBitmapsCB.GetDisplayText(); 334 aReduceBitmapsCB.SetAccessibleName( sAccessibleName ); 335 336 String sBitmapText = aReduceBitmapsCB.GetAccessibleName(); 337 sBitmapText += cSeparator; 338 339 sAccessibleName = sBitmapText; 340 sAccessibleName += aReduceBitmapsOptimalRB.GetDisplayText(); 341 aReduceBitmapsOptimalRB.SetAccessibleName( sAccessibleName ); 342 343 sAccessibleName = sBitmapText; 344 sAccessibleName += aReduceBitmapsNormalRB.GetDisplayText(); 345 aReduceBitmapsNormalRB.SetAccessibleName( sAccessibleName ); 346 347 sAccessibleName = sBitmapText; 348 sAccessibleName += aReduceBitmapsResolutionRB.GetDisplayText(); 349 aReduceBitmapsResolutionRB.SetAccessibleName( sAccessibleName ); 350 351 sAccessibleName = aReduceBitmapsResolutionRB.GetAccessibleName(); 352 aReduceBitmapsResolutionLB.SetAccessibleName( sAccessibleName ); 353 354 sAccessibleName = sBitmapText; 355 sAccessibleName += aReduceBitmapsTransparencyCB.GetDisplayText(); 356 aReduceBitmapsTransparencyCB.SetAccessibleName( sAccessibleName ); 357 358 sAccessibleName = sOutputText; 359 sAccessibleName += aConvertToGreyscalesCB.GetDisplayText(); 360 aConvertToGreyscalesCB.SetAccessibleName( sAccessibleName ); 361 362 String sWarnText = aWarnGB.GetDisplayText(); 363 sWarnText += cSeparator; 364 365 sAccessibleName = sWarnText; 366 sAccessibleName += aPaperSizeCB.GetDisplayText(); 367 aPaperSizeCB.SetAccessibleName( sAccessibleName ); 368 369 sAccessibleName = sWarnText; 370 sAccessibleName += aPaperOrientationCB.GetDisplayText(); 371 aPaperOrientationCB.SetAccessibleName( sAccessibleName ); 372 373 sAccessibleName = sWarnText; 374 sAccessibleName += aTransparencyCB.GetDisplayText(); 375 aTransparencyCB.SetAccessibleName( sAccessibleName ); 376 } 377 378 // ----------------------------------------------------------------------------- 379 380 void SfxCommonPrintOptionsTabPage::ImplSaveControls( PrinterOptions* pCurrentOptions ) 381 { 382 pCurrentOptions->SetReduceTransparency( aReduceTransparencyCB.IsChecked() ); 383 pCurrentOptions->SetReducedTransparencyMode( aReduceTransparencyAutoRB.IsChecked() ? PRINTER_TRANSPARENCY_AUTO : PRINTER_TRANSPARENCY_NONE ); 384 pCurrentOptions->SetReduceGradients( aReduceGradientsCB.IsChecked() ); 385 pCurrentOptions->SetReducedGradientMode( aReduceGradientsStripesRB.IsChecked() ? PRINTER_GRADIENT_STRIPES : PRINTER_GRADIENT_COLOR ); 386 pCurrentOptions->SetReducedGradientStepCount( (sal_uInt16) aReduceGradientsStepCountNF.GetValue() ); 387 pCurrentOptions->SetReduceBitmaps( aReduceBitmapsCB.IsChecked() ); 388 pCurrentOptions->SetReducedBitmapMode( aReduceBitmapsOptimalRB.IsChecked() ? PRINTER_BITMAP_OPTIMAL : 389 ( aReduceBitmapsNormalRB.IsChecked() ? PRINTER_BITMAP_NORMAL : PRINTER_BITMAP_RESOLUTION ) ); 390 pCurrentOptions->SetReducedBitmapResolution( aDPIArray[ Min( (sal_uInt16) aReduceBitmapsResolutionLB.GetSelectEntryPos(), 391 (sal_uInt16)( sizeof( aDPIArray ) / sizeof( aDPIArray[ 0 ] ) - 1 ) ) ] ); 392 pCurrentOptions->SetReducedBitmapIncludesTransparency( aReduceBitmapsTransparencyCB.IsChecked() ); 393 pCurrentOptions->SetConvertToGreyscales( aConvertToGreyscalesCB.IsChecked() ); 394 } 395 396 // ----------------------------------------------------------------------------- 397 398 IMPL_LINK( SfxCommonPrintOptionsTabPage, ClickReduceTransparencyCBHdl, CheckBox*, pBox ) 399 { 400 (void)pBox; //unused 401 const sal_Bool bReduceTransparency = aReduceTransparencyCB.IsChecked(); 402 403 aReduceTransparencyAutoRB.Enable( bReduceTransparency ); 404 aReduceTransparencyNoneRB.Enable( bReduceTransparency ); 405 406 aTransparencyCB.Enable( !bReduceTransparency ); 407 408 return 0; 409 } 410 411 // ----------------------------------------------------------------------------- 412 413 IMPL_LINK( SfxCommonPrintOptionsTabPage, ClickReduceGradientsCBHdl, CheckBox*, pBox ) 414 { 415 (void)pBox; //unused 416 const sal_Bool bEnable = aReduceGradientsCB.IsChecked(); 417 418 aReduceGradientsStripesRB.Enable( bEnable ); 419 aReduceGradientsColorRB.Enable( bEnable ); 420 aReduceGradientsStepCountNF.Enable( bEnable ); 421 422 ToggleReduceGradientsStripesRBHdl( &aReduceGradientsStripesRB ); 423 424 return 0; 425 } 426 427 // ----------------------------------------------------------------------------- 428 429 IMPL_LINK( SfxCommonPrintOptionsTabPage, ClickReduceBitmapsCBHdl, CheckBox*, pBox ) 430 { 431 (void)pBox; //unused 432 const sal_Bool bEnable = aReduceBitmapsCB.IsChecked(); 433 434 aReduceBitmapsOptimalRB.Enable( bEnable ); 435 aReduceBitmapsNormalRB.Enable( bEnable ); 436 aReduceBitmapsResolutionRB.Enable( bEnable ); 437 aReduceBitmapsTransparencyCB.Enable( bEnable ); 438 aReduceBitmapsResolutionLB.Enable( bEnable ); 439 440 ToggleReduceBitmapsResolutionRBHdl( &aReduceBitmapsResolutionRB ); 441 442 return 0; 443 } 444 445 // ----------------------------------------------------------------------------- 446 447 IMPL_LINK( SfxCommonPrintOptionsTabPage, ToggleReduceGradientsStripesRBHdl, RadioButton*, pButton ) 448 { 449 (void)pButton; //unused 450 const sal_Bool bEnable = aReduceGradientsCB.IsChecked() && aReduceGradientsStripesRB.IsChecked(); 451 452 aReduceGradientsStepCountNF.Enable( bEnable ); 453 454 return 0; 455 } 456 457 // ----------------------------------------------------------------------------- 458 459 IMPL_LINK( SfxCommonPrintOptionsTabPage, ToggleReduceBitmapsResolutionRBHdl, RadioButton*, pButton ) 460 { 461 (void)pButton; //unused 462 const sal_Bool bEnable = aReduceBitmapsCB.IsChecked() && aReduceBitmapsResolutionRB.IsChecked(); 463 464 aReduceBitmapsResolutionLB.Enable( bEnable ); 465 466 return 0; 467 } 468 469 // ----------------------------------------------------------------------------- 470 471 IMPL_LINK( SfxCommonPrintOptionsTabPage, ToggleOutputPrinterRBHdl, RadioButton*, pButton ) 472 { 473 if( pButton->IsChecked() ) 474 { 475 aOutputGB.SetText( OutputDevice::GetNonMnemonicString( pButton->GetText() ) ); 476 ImplUpdateControls( &maPrinterOptions ); 477 bOutputForPrinter = sal_True; 478 // --> OD 2008-06-25 #i63982# 479 ImplSetAccessibleNames(); 480 // <-- 481 } 482 else 483 ImplSaveControls( &maPrinterOptions ); 484 485 return 0; 486 } 487 488 // ----------------------------------------------------------------------------- 489 490 IMPL_LINK( SfxCommonPrintOptionsTabPage, ToggleOutputPrintFileRBHdl, RadioButton*, pButton ) 491 { 492 if( pButton->IsChecked() ) 493 { 494 aOutputGB.SetText( OutputDevice::GetNonMnemonicString( pButton->GetText() ) ); 495 ImplUpdateControls( &maPrintFileOptions ); 496 bOutputForPrinter = sal_False; 497 // --> OD 2008-06-25 #i63982# 498 ImplSetAccessibleNames(); 499 // <-- 500 } 501 else 502 ImplSaveControls( &maPrintFileOptions ); 503 504 return 0; 505 } 506 507 // ------------------------------- 508 // - TransparencyPrintWarningBox - 509 // ------------------------------- 510 511 TransparencyPrintWarningBox::TransparencyPrintWarningBox( Window* pParent ) : 512 ModalDialog( pParent, SfxResId( RID_WARN_PRINTTRANSPARENCY ) ), 513 aWarnFI ( this, SfxResId( FI_PRINTTRANSWARN ) ), 514 aWarnFT ( this, SfxResId( FT_PRINTTRANSWARN ) ), 515 aYesBtn ( this, SfxResId( BTN_PRINTTRANS_YES ) ), 516 aNoBtn ( this, SfxResId( BTN_PRINTTRANS_NO ) ), 517 aCancelBtn ( this, SfxResId( BTN_PRINTTRANS_CANCEL ) ), 518 aNoWarnCB ( this, SfxResId( CBX_NOPRINTTRANSWARN ) ) 519 { 520 FreeResource(); 521 522 aWarnFT.SetStyle( aWarnFT.GetStyle() | WB_INFO ); 523 aWarnFI.SetImage( WarningBox::GetStandardImage() ); 524 525 aNoBtn.SetClickHdl( LINK( this, TransparencyPrintWarningBox, ClickNoBtn ) ); 526 } 527 528 // ----------------------------------------------------------------------------- 529 530 TransparencyPrintWarningBox::~TransparencyPrintWarningBox() 531 { 532 } 533 534 // ----------------------------------------------------------------------------- 535 536 IMPL_LINK( TransparencyPrintWarningBox, ClickNoBtn, PushButton*, pButton ) 537 { 538 (void)pButton; //unused 539 EndDialog( RET_NO ); 540 return 0; 541 } 542