Changeset 192
- Timestamp:
- Jan 27, 2007, 5:46:35 PM (14 years ago)
- Location:
- trunk/Lucide/SOURCE/gui
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Lucide/SOURCE/gui/makefile
r186 r192 2 2 3 3 TEST=0 4 VERSION=1.0 RC14 VERSION=1.0 5 5 6 6 !if $(TEST)==1 -
trunk/Lucide/SOURCE/gui/printDlg.cpp
r183 r192 108 108 109 109 WinCheckButton( hwnd, isPortraitOrientation() ? IDC_PORTRAIT : IDC_LANDSCAPE, TRUE ); 110 WinSendDlgItemMsg( hwnd, IDC_COPIES, SPBM_SETCURRENTVALUE, 111 MPFROMLONG( queryCopies() ), MPVOID ); 110 112 111 113 applyForm( hwnd ); … … 191 193 192 194 WinCheckButton( hwnd, isPortraitOrientation() ? IDC_PORTRAIT : IDC_LANDSCAPE, TRUE ); 195 WinSendDlgItemMsg( hwnd, IDC_COPIES, SPBM_SETCURRENTVALUE, 196 MPFROMLONG( queryCopies() ), MPVOID ); 197 193 198 applyForm( hwnd ); 194 199 } … … 242 247 #define DJP_NONE 0L 243 248 #define DJP_SJ_ORIENTATION 1L 249 #define DJP_SJ_COPIES 16L 244 250 245 251 #define DJP_ORI_PORTRAIT 1L … … 296 302 } 297 303 298 299 304 void PrintDlg::setPortraitOrientation( bool portrait, HWND hwnd ) 300 305 { … … 328 333 } 329 334 335 int PrintDlg::queryCopies() 336 { 337 int rVal = 1; 338 339 HDC hdcPrinterInfo = getInfoDC(); 340 if ( hdcPrinterInfo != DEV_ERROR ) 341 { 342 DJP_ITEM djp[ 2 ] = { { 0 } }; 343 344 // Get number of copies from Job Properties 345 djp[0].cb = sizeof( DJP_ITEM ); 346 djp[0].ulProperty = DJP_SJ_COPIES; 347 djp[0].lType = DJP_CURRENT; 348 djp[0].ulNumReturned = 1; 349 djp[0].ulValue = 1; 350 351 djp[1].cb = sizeof( DJP_ITEM ); 352 djp[1].ulProperty = 0; 353 djp[1].lType = DJP_NONE; 354 djp[1].ulNumReturned = 1; 355 djp[1].ulValue = 0; 356 357 LONG outSz = psetup->QueueInfo.pDriverData->cb; 358 LONG rc = DevEscape( hdcPrinterInfo, DEVESC_QUERYJOBPROPERTIES, 359 sizeof( DJP_ITEM ) * 2, (PCHAR)djp, 360 &outSz, (PCHAR)psetup->QueueInfo.pDriverData ); 361 362 if ( ( rc == DEV_OK ) || ( rc == DEV_WARNING ) ) { 363 rVal = djp[0].ulValue; 364 } 365 366 DevCloseDC( hdcPrinterInfo ); 367 } 368 369 return rVal; 370 } 371 372 void PrintDlg::setCopies( int copies ) 373 { 374 HDC hdcPrinterInfo = getInfoDC(); 375 if ( hdcPrinterInfo != DEV_ERROR ) 376 { 377 DJP_ITEM djp[ 2 ] = { { 0 } }; 378 379 // Set number of copies 380 djp[0].cb = sizeof( DJP_ITEM ); 381 djp[0].ulProperty = DJP_SJ_COPIES; 382 djp[0].lType = DJP_CURRENT; 383 djp[0].ulNumReturned = 1; 384 djp[0].ulValue = copies; 385 386 djp[1].cb = sizeof( DJP_ITEM ); 387 djp[1].ulProperty = 0; 388 djp[1].lType = DJP_NONE; 389 djp[1].ulNumReturned = 1; 390 djp[1].ulValue = 0; 391 392 LONG outSz = psetup->QueueInfo.pDriverData->cb; 393 DevEscape( hdcPrinterInfo, DEVESC_SETJOBPROPERTIES, 394 sizeof( DJP_ITEM ) * 2, (PCHAR)djp, 395 &outSz, (PCHAR)psetup->QueueInfo.pDriverData ); 396 397 DevCloseDC( hdcPrinterInfo ); 398 } 399 } 330 400 331 401 bool PrintDlg::queryCurrentForm() … … 469 539 MPFROMLONG( pages ), MPVOID ); 470 540 541 // Enum printer queues 542 _this->enumQueues( hwnd ); 543 471 544 // Number of copies 472 545 WinSendDlgItemMsg( hwnd, IDC_COPIES, SPBM_SETLIMITS, … … 474 547 WinSendDlgItemMsg( hwnd, IDC_COPIES, SPBM_SETCURRENTVALUE, 475 548 MPFROMLONG( 1 ), MPVOID ); 476 477 // Enum printer queues478 _this->enumQueues( hwnd );479 549 480 550 USHORT sEntry; … … 556 626 break; 557 627 628 case IDC_COPIES: 629 { 630 if ( SHORT2FROMMP(mp1) == SPBN_CHANGE ) 631 { 632 LONG cp = 0; 633 WinSendDlgItemMsg( hwnd, IDC_COPIES, SPBM_QUERYVALUE, 634 MPFROMP( &cp ), MPFROM2SHORT( 0, SPBQ_UPDATEIFVALID ) ); 635 _this->setCopies( cp ); 636 } 637 } 638 break; 558 639 } 559 640 } -
trunk/Lucide/SOURCE/gui/printDlg.h
r167 r192 60 60 void setPortraitOrientation( bool portrait, HWND hwnd ); 61 61 bool queryCurrentForm(); 62 int queryCopies(); 63 void setCopies( int copies ); 62 64 void applyForm( HWND hwnd ); 63 65 static MRESULT EXPENTRY printDlgProc( HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2 );
Note: See TracChangeset
for help on using the changeset viewer.