Changeset 27 for trunk/settings.cpp
- Timestamp:
- Mar 13, 2018, 6:34:46 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/settings.cpp
r11 r27 27 27 // FIXME nls*/ 28 28 29 bool saveum = FALSE; 29 30 SWP swpDef = { 0,0,0, 98,66, 0,0,0,0 }; 30 31 SWP swpDefSSW = { 0,0,0, 10,10, 0,0,0,0 }; … … 32 33 USHORT ausDefSSW[7] = { 0 }; 33 34 34 #if 035 35 ImageFormatInfo Settings::ifi[BMF_INVALID] = 36 36 { 37 { TRUE, BMF_12, 0L, "Bitmap 1.2 (Saved using Gotcha! internal routine)", "bmp", "Bitmap" }, 38 { TRUE, BMF_16, 0L, "Bitmap 1.6 (Saved using Gotcha! internal routine)", "bmp", "Bitmap" }, 39 { TRUE, BMF_20, 0L, "Bitmap 2.0 (Saved using Gotcha! internal routine)", "bmp", "Bitmap" }, 40 { FALSE, BMF_OS13, mmioFOURCC( 'O','S','1','3' ), "Bitmap 1.3 (Saved using OS/2 Multimedia)", "bmp", "Bitmap" }, 41 { FALSE, BMF_OS20, mmioFOURCC( 'O','S','2','0' ), "Bitmap 2.0 (Saved using OS/2 Multimedia)", "bmp", "Bitmap" }, 42 { FALSE, BMF_TIF, mmioFOURCC( 'T','F','M','C' ), "TIFF compressed", "tif", "TIFF" }, 43 { FALSE, BMF_TIFU, mmioFOURCC( 'T','F','M','U' ), "TIFF uncompressed", "tif", "TIFF" }, 44 { FALSE, BMF_TGA, mmioFOURCC( 'T','G','A','C' ), "TGA", "tga", "Targa" }, 45 { FALSE, BMF_PCX, mmioFOURCC( 'P','C','X','C' ), "PCX", "pcx", "PCX" }, 46 { FALSE, BMF_GIF, mmioFOURCC( 'G','I','F','C' ), "GIF", "gif", "GIF" }, 47 { FALSE, BMF_JPG, mmioFOURCC( 'J','P','E','G' ), "Jpeg (Probably won't work, reason unknown)", "jpg", "JPG" }, 48 { FALSE, BMF_DIB, mmioFOURCC( 'R','D','I','B' ), "DIB (Device Independent Bitmap)", "dib", "DIB" } 37 { TRUE, BMF_JPG, "JPEG Interchange File Format (jpg)", "jpg", "JPG" }, 38 { TRUE, BMF_PNG, "Portable Network Graphics (png)", "png", "PNG" }, 39 { TRUE, BMF_OS20, "OS/2 Bitmap 2.0 (bmp)", "bmp", "Bitmap" }, 40 { TRUE, BMF_TIF, "Microsoft/Aldus Tagged Image File Format (tif)", "tif", "TIFF" }, 41 { TRUE, BMF_TGA, "Truevision Targa/Vista (tga)", "tga", "Targa" }, 42 { TRUE, BMF_PCX, "ZSoft PC Paintbrush Image Format (pcx)", "pcx", "PCX" }, 43 { TRUE, BMF_GIF, "Portable Anymap (pnm)", "pnm", "PNM" }, 44 { TRUE, BMF_PBM, "Portable Pixel-map (ppm)", "ppm", "PPM" }, 45 { TRUE, BMF_JP2, "Jpeg 2000 (provided by the Open Source OpenJPEG library) (jp2)", "jp2", "JP2" }, 46 { TRUE, BMF_DIB, "Device Independent Bitmap (dib)", "dib", "DIB" } 49 47 }; 50 48 51 #else52 // pbm and gif don't save anything53 ImageFormatInfo Settings::ifi[BMF_INVALID] =54 {55 { TRUE, BMF_JPG, 0L, "JPEG Interchange File Format (jpg)", "jpg", "JPG" },56 { TRUE, BMF_PNG, 0L, "Portable Network Graphics (png)", "png", "PNG" },57 { TRUE, BMF_OS20, 0L, "OS/2 Bitmap 2.0 (bmp)", "bmp", "Bitmap" },58 { TRUE, BMF_TIF, 0L, "Microsoft/Aldus Tagged Image File Format (tif)", "tif", "TIFF" },59 { TRUE, BMF_TGA, 0L, "Truevision Targa/Vista (tga)", "tga", "Targa" },60 { TRUE, BMF_PCX, 0L, "ZSoft PC Paintbrush Image Format (pcx)", "pcx", "PCX" },61 { TRUE, BMF_GIF, 0L, "Portable Anymap (pnm)", "pnm", "PNM" },62 { TRUE, BMF_PBM, 0L, "Portable Pixel-map (ppm)", "ppm", "PPM" },63 { TRUE, BMF_JP2, 0L, "Jpeg 2000 (provided by the Open Source OpenJPEG library) (jp2)", "jp2", "JP2" },64 { TRUE, BMF_JBG, 0L, "JBIG Joint Bi-level Image experts Group (jbg)", "jbg", "JBG" },65 { TRUE, BMF_RAW, 0L, "Camera RAW Image Format (raw)", "raw", "RAW" },66 { TRUE, BMF_DIB, 0L, "Device Independent Bitmap (dib)", "dib", "DIB" }67 };68 #endif69 49 70 50 PTHTH_SE apse[] = … … 101 81 new THTH_SEB (SEI_USSSW, "Snapshot", "US", &ausDefSSW, sizeof (ausDefSSW)), 102 82 103 new THTH_SES (SEI_LANGUAGE, "Language", "Program", PSZ_DEFAULTLANGUAGE ),83 new THTH_SES (SEI_LANGUAGE, "Language", "Program", PSZ_DEFAULTLANGUAGEMOD), 104 84 new THTH_SES (SEI_LANGUAGEHELP, "Language", "Help", PSZ_DEFAULTLANGUAGEHELP), 105 85 … … 135 115 ReloadResources (QueryString(SEI_LANGUAGE)); 136 116 } 137 138 // See if we can use OS/2 Multimedia:139 mmio = new thth_MMIO();140 if( ! mmio->IsValid() ) {141 delete mmio;142 mmio = NULL;143 if( mmio->step > 0 )144 DisplayError( "MMIO-Error",145 "Could not load Multimedia IO extension. (rc=%d, step=%d)", mmio->rc, mmio->step );146 } else {147 MMFORMATINFO mmfi;148 ULONG lNumFormats = 30;149 LONG lReturned;150 PMMFORMATINFO pv = PMMFORMATINFO( malloc( sizeof( MMFORMATINFO ) * lNumFormats ) );151 memset( &mmfi, 0, sizeof( MMFORMATINFO ) );152 mmfi.ulMediaType = MMIO_MEDIATYPE_IMAGE;153 154 if( pv ) {155 if( mmioGetFormats( &mmfi, lNumFormats, pv, &lReturned, 0, 0 )156 != MMIO_SUCCESS ) {157 DisplayError( "MMIO-Error",158 "Could not get Multimedia-IO-Format information." );159 } else {160 /* DisplayError( "MMIO-Error",161 "'%d' formats returned", lReturned ); */162 for( int i = 0; i < lReturned; i++ ) {163 for( int j = 0; j < BMF_INVALID; j++ ) {164 if( ifi[j].fourcc == pv[i].fccIOProc )165 {166 ifi[j].available = TRUE;167 break;168 }169 }170 }171 }172 } else {173 DisplayError( "MMIO-Error",174 "Could not get Multimedia-IO-Format information (no memory)." );175 }176 }177 117 } 178 118 … … 201 141 // FIXME YUKKI! YUKKI!! YUKKI!!! But I'm too lazy to do it better now :-) 202 142 HWND g_hwndSettingsDialog = NULL; 143 HWND g_hwndPage0 = NULL; 203 144 204 145 BOOL SETTINGS :: Dialog (BOOL fOnlyLanguage) … … 272 213 MPFROMLONG (idPage[i]), MPFROMP (pszPageTab[i])); 273 214 } 274 215 //#ifndef _QUIET_ 216 #if 0 275 217 // open and assign dialogs to pages 276 218 hwndPage[0] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page1Procedure, 277 219 GETMODULE, ID_DLG_SETTINGSPAGE1, this); 278 hwndPage[1] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page2Procedure,220 hwndPage[1] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) WindowProcedure, //Page2Procedure, 279 221 GETMODULE, ID_DLG_SETTINGSPAGE2, this); 280 222 hwndPage[2] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page3Procedure, … … 282 224 hwndPage[3] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page4Procedure, 283 225 GETMODULE, ID_DLG_SETTINGSPAGE4, this); 226 #else 227 hwndPage[0] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) WindowProcedure, 228 GETMODULE, ID_DLG_SETTINGSPAGE0, this); 229 hwndPage[1] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page1Procedure, 230 GETMODULE, ID_DLG_SETTINGSPAGE1, this); 231 hwndPage[2] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page2Procedure, 232 GETMODULE, ID_DLG_SETTINGSPAGE2, this); 233 hwndPage[3] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page4Procedure, 234 GETMODULE, ID_DLG_SETTINGSPAGE4, this); 235 _PmpfF(( "hwndpage 0 %i FID_CLIENT %i", hwndPage[0], 236 WinWindowFromID( hwndPage[0], WID_RB_CLIPBOARD))); 237 g_hwndPage0 = hwndPage[0]; 238 239 #endif 284 240 } 285 241 #ifdef _DOLOGDEBUG_ … … 302 258 LogDebug( "Dialog: checkpoint 6" ); 303 259 #endif 304 260 WinSendDlgItemMsg (g_hwndPage0, WID_RB_FILE, BM_CLICK, 261 MPFROMSHORT (TRUE), 0); 262 WinSendDlgItemMsg (g_hwndPage0, WID_CB_HIDEWINDOW, BM_SETCHECK, 263 MPFROMLONG (TRUE), MPFROMLONG (0)); 305 264 //WinSetFocus (WinWindowFromID (hwndDlg, WID_PB_OK), TRUE); 306 265 //WinSetFocus( hwndPage[0], TRUE ); … … 362 321 LogDebug( "DialogProcedure: start WID_PB_OK" ); 363 322 #endif 323 saveum = TRUE; 364 324 WinSendMsg (hwnd, WM_CLOSE, 0,0); 365 325 #ifdef _DOLOGDEBUG_ … … 380 340 BKM_QUERYPAGEWINDOWHWND, 381 341 MPFROMLONG (id), 0); 342 // Make mp1 1 for default use it to select setting on pages 382 343 WinSendMsg (hwndPage, UM_SETTINGS2DIALOG, 0,0); 383 344 } … … 533 494 WinSendDlgItemMsg( hwnd, WID_LB_FILEFORMAT, LM_SELECTITEM, 534 495 MPFROMSHORT(0), MPFROMSHORT(TRUE) ); 535 496 //#ifdef _QUIET_ 497 #if 1 498 // set play sound button 499 pset->AdjustButton (hwnd, WID_CB_DOSOUND, 500 pset->DoSound ()); 501 #endif 536 502 // Select appropriate radiobutton for save style. 537 503 switch (pset->QueryFileSaveStyle ()) … … 575 541 else 576 542 pset->SetFileSaveStyle (FSS_PROMPT); 543 //#ifdef _QUIET_ 544 #if 1 545 pset->DoSound(WinQueryButtonCheckstate 546 (hwnd, WID_CB_DOSOUND)); 547 #endif 577 548 #ifdef _DOLOGDEBUG_ 578 549 LogDebug( "Page1Procedure: checkpoint 1" ); … … 606 577 AdjustSaveTypeButtons 607 578 (BOOL (pset->QueryFileSaveStyle () == FSS_FORCEFILE)); 579 pset->saveStyle = pset->QuerySaveStyle (); 580 pset->pNumSaveDir = pset->QueryNumSaveDir (); 581 pset->pForceSaveFile = pset->QueryForceSaveFile(); 582 583 if (saveum) 584 pset->Save (); 608 585 #ifdef _DOLOGDEBUG_ 609 586 LogDebug( "Page1Procedure: end UM_ADJUST" ); … … 630 607 } 631 608 632 // ** Page2Procedure ****************************************************** /* fold00*/609 // ** Page2Procedure ****************************************************** /*FOLD00*/ 633 610 634 611 MRESULT EXPENTRY … … 665 642 pset->AdjustButton (hwnd, WID_CB_SSWALWAYSONTOP, 666 643 pset->SSWAlwaysOnTop ()); 667 644 //#ifdef _QUIET_ 645 #if 1 646 pset->AdjustButton (hwnd, WID_CB_SERIALCAPTURE, 647 pset->SerialCapture ()); 648 pset->AdjustButton (hwnd, WID_CB_DELAYCOUNTDOWN, 649 pset->DelayCountdown ()); 650 651 // init delay time sb 652 WinSendDlgItemMsg (hwnd, WID_SB_DELAYTIME, SPBM_SETLIMITS, 653 MPFROMLONG (65536), MPFROMLONG (1)); 654 WinSendDlgItemMsg (hwnd, WID_SB_DELAYTIME, SPBM_SETCURRENTVALUE, 655 MPFROMLONG (pset->QueryDelayTime ()), 0); 656 657 // init serial time sb 658 WinSendDlgItemMsg (hwnd, WID_SB_SERIALTIME, SPBM_SETLIMITS, 659 MPFROMLONG (65536), MPFROMLONG (1)); 660 WinSendDlgItemMsg (hwnd, WID_SB_SERIALTIME, SPBM_SETCURRENTVALUE, 661 MPFROMLONG (pset->QuerySerialTime ()), 0); 662 #endif 668 663 switch (pset->QuerySSWCaptureType ()) 669 664 { … … 702 697 LogDebug( "Page2Procedure: start UM_ADJUST" ); 703 698 #endif 699 //#ifndef _QUIET_ 700 #if 0 704 701 // query state of checkbuttons and set flags 705 702 pset->SSWHide(WinQueryButtonCheckstate(hwnd, WID_CB_SSWHIDE)); … … 713 710 LogDebug( "Page2Procedure: checkpoint 2" ); 714 711 #endif 715 712 #else 713 // query state of checkbuttons and set flags 714 pset->SerialCapture(WinQueryButtonCheckstate 715 (hwnd, WID_CB_SERIALCAPTURE)); 716 #ifdef _DOLOGDEBUG_ 717 LogDebug( "Page3Procedure: checkpoint 1" ); 718 #endif 719 pset->DelayCountdown(WinQueryButtonCheckstate 720 (hwnd, WID_CB_DELAYCOUNTDOWN)); 721 #endif 716 722 // get ssw capture type 717 723 if (WinSendMsg (WinWindowFromID (hwnd, WID_SSWSCREENREGION), … … 726 732 else 727 733 pset->SetSSWCaptureType (CAP_SCREEN); 734 //#ifdef _QUITE_ 735 #if 1 736 // delay time 737 ULONG ul; 738 if (! BOOL (WinSendDlgItemMsg (hwnd, WID_SB_DELAYTIME, 739 SPBM_QUERYVALUE, 740 MPFROMP (&ul), 741 MPFROM2SHORT (0, 0)))) 742 ul = 5L; 743 pset->SetDelayTime (ul); 744 #ifdef _DOLOGDEBUG_ 745 LogDebug( "Page3Procedure: checkpoint 3" ); 746 #endif 747 748 // serial time 749 if (! BOOL (WinSendDlgItemMsg (hwnd, WID_SB_SERIALTIME, 750 SPBM_QUERYVALUE, 751 MPFROMP (&ul), 752 MPFROM2SHORT (0, 0)))) 753 ul = 10L; 754 pset->SetSerialTime (ul); 755 pset->bSerialCapture = pset->SerialCapture (); 756 #endif 757 if (saveum) 758 pset->Save (); 728 759 #ifdef _DOLOGDEBUG_ 729 760 LogDebug( "Page2Procedure: end UM_ADJUST" ); … … 842 873 ul = 10L; 843 874 pset->SetSerialTime (ul); 875 pset->bSerialCapture = pset->SerialCapture (); 876 pset->idleSetInIni = pset->QueryFlag(SEI_IDLEPRIORITY); 877 878 if (saveum) 879 pset->Save (); 844 880 #ifdef _DOLOGDEBUG_ 845 881 LogDebug( "Page3Procedure: end UM_ADJUST" ); … … 1019 1055 MPFROM2SHORT (ul, sizeof (ach)), MPFROMP (ach)); 1020 1056 pset->SetString (SEI_LANGUAGEHELP, ach); 1057 1058 if (saveum) 1059 pset->Save (); 1021 1060 } 1022 1061 return MRESULT (FALSE); … … 1026 1065 } 1027 1066 1028 // ** AdjustSaveTypeButtons *********************************************** /* fold00*/1067 // ** AdjustSaveTypeButtons *********************************************** /*FOLD00*/ 1029 1068 1030 1069 VOID AdjustSaveTypeButtons (BOOL f) … … 1079 1118 APIRET rc; 1080 1119 1081 if ((rc = DosLoadModule(PSZ(NULL), 0, "gotresen.dll", &g_hmod)))1120 if ((rc = DosLoadModule(PSZ(NULL), 0, psz, &g_hmod))) 1082 1121 { 1083 1122 DisplayError("ERROR", "Could not (re)load Gotcha! resource module " … … 1089 1128 1090 1129 ResourceString::Module(g_hmod); 1091 1130 //#ifdef _QUIET_ 1131 #if 1 1132 pszPageTab[0] = RSTR (IDS_MAINWIN); 1133 pszPageTab[1] = RSTR (IDS_PAGESAVE); 1134 pszPageTab[2] = RSTR (IDS_PAGEMISC); 1135 pszPageTab[3] = RSTR (IDS_PAGELANGUAGE); 1136 #else 1092 1137 pszPageTab[0] = RSTR (IDS_PAGESAVE); 1093 1138 pszPageTab[1] = RSTR (IDS_PAGESNAPSHOT); 1094 1139 pszPageTab[2] = RSTR (IDS_PAGEMISC); 1095 1140 pszPageTab[3] = RSTR (IDS_PAGELANGUAGE); 1096 1141 #endif 1097 1142 for( int i = 0; i < BMF_INVALID; i++ ) { 1098 1143 ifi[ i ].label = RSTR ( IDS_BMF_JPG+i ); } … … 1101 1146 } 1102 1147 1103 // ** SelectLanguage ****************************************************** /* fold00*/1148 // ** SelectLanguage ****************************************************** /*FOLD00*/ 1104 1149 1105 1150 VOID Settings :: SelectLanguage (VOID) … … 1107 1152 // set this to some default, as we must open the settings dialog for 1108 1153 // selecting a language 1154 //#ifdef _QUIET_ 1155 #if 1 1156 pszPageTab[0] = RSTR (IDS_MAINWIN); 1157 pszPageTab[1] = RSTR (IDS_PAGESAVE); 1158 pszPageTab[2] = RSTR (IDS_PAGEMISC); 1159 pszPageTab[3] = RSTR (IDS_PAGELANGUAGE); 1160 #else 1109 1161 pszPageTab[0] = RSTR (IDS_PAGESAVE); 1110 1162 pszPageTab[1] = RSTR (IDS_PAGESNAPSHOT); 1111 1163 pszPageTab[2] = RSTR (IDS_PAGEMISC); 1112 1164 pszPageTab[3] = RSTR (IDS_PAGELANGUAGE); 1113 1165 #endif 1114 1166 // bring up the "select language" settings page 1115 1167 Dialog (TRUE); … … 1171 1223 } 1172 1224 1225 #if 0 1173 1226 // ** GetFOURCC *********************************************************** /*FOLD00*/ 1174 1227 … … 1181 1234 return 0L; 1182 1235 } 1183 1236 #endif 1184 1237 // ** GetFileEAType ******************************************************* /*FOLD00*/ 1185 1238
Note:
See TracChangeset
for help on using the changeset viewer.