Changes in / [30:20]


Ignore:
Location:
/trunk
Files:
2 added
1 deleted
20 edited

Legend:

Unmodified
Added
Removed
  • /trunk/bitmap.cpp

    r30 r20  
    1919
    2020// ** CaptureWindow ******************************************************* /*FOLD00*/
    21 #include <ctype.h>
     21
    2222#define MAX_WAIT   15
    2323
     
    3636
    3737    // wait for the selected window to rise to the surface
    38     if (f)
     38    if ((hwndParent != HWND_DESKTOP) &&  f)
    3939    {
    4040        WinSetWindowPos (hwndParent, HWND_TOP, 0,0, 0,0, SWP_ZORDER);
     
    149149               sizeof (aptl) / sizeof (POINTL), /* Number of points in aptl */
    150150               aptl, ROP_SRCCOPY, BBO_IGNORE);
    151 
    152     SWCNTRL  swctl;
    153     PID      pid;
    154     TID      tid;
    155     BOOL screen = FALSE, region = FALSE;
    156     CHAR title[11];
    157 
    158     if (!f) {
    159         //hwndParent = WinQueryFocus(HWND_DESKTOP);
    160         if (hwndParent == hwndFrame) {
    161             hwndParent = WinQueryWindow(hwndFrame, QW_NEXTTOP );
    162         }
    163         screen = TRUE;
    164         if (prcl)
    165             region = TRUE;
    166     }
    167 
    168     int rc = WinQueryWindowProcess(hwndParent, &pid, &tid);
    169     if (WinQuerySwitchEntry(WinQuerySwitchHandle(hwndParent, pid),
    170                             &swctl))
    171         WinQuerySwitchEntry(WinQuerySwitchHandle(NULLHANDLE, pid),
    172                             &swctl);
    173 
    174     char buffer[MAXNAMEL+4];
    175     int length = strlen( swctl.szSwtitle );
    176     strcpy(buffer, swctl.szSwtitle);
    177     char *p;
    178     p = buffer;
    179     for (int i = 0; i < (length < 11 ? length : 11); i++) {
    180         if ( ispunct( *p ) || *p == '\\' || isblank( *p )) {
    181             *p = '_';
    182         }
    183         p++;
    184     }
    185 
    186     if (region)
    187         snprintf( title, length < 8 ? length + 3 : 11, "SR%s", buffer);
    188     else if (screen)
    189         snprintf( title, length < 8 ? length + 3 : 11, "SC%s", buffer);
    190     else
    191         snprintf( title, length < 8 ? length + 3 : 11, "WD%s", buffer);
    192 
    193     SaveBitmap (hbm, hpsMem, sWidth, sHeight, bmp.cBitCount, title);
     151    SaveBitmap (hbm, hpsMem, sWidth, sHeight, bmp.cBitCount);
    194152
    195153    // re-associate the previous bit map and the memory presentation space
  • /trunk/config.h

    r30 r20  
    3636
    3737// Default language for resources and help.
    38 #ifdef _QUIET_
    39 #define PSZ_DEFAULTLANGUAGEMOD  "goqresen"
    40 #else
    41 #define PSZ_DEFAULTLANGUAGEMOD  "gotresen"
    42 #endif
    43 #define PSZ_DEFAULTLANGUAGEHELP  "gotcha_en"
     38#define PSZ_DEFAULTLANGUAGE  "english"
     39#define PSZ_DEFAULTLANGUAGEHELP  PSZ_DEFAULTLANGUAGE
    4440
  • /trunk/czech/gotrescz.rc

    r30 r20  
    312312    IDS_BMF_PBM        "Portable Pixel-map (ppm)"
    313313    IDS_BMF_JP2        "Jpeg 2000 (provided by the Open Source OpenJPEG library) (jp2)"
     314    IDS_BMF_JBG        "JBIG Joint Bi-level Image experts Group (jbg)"
     315    IDS_BMF_RAW        "Camera RAW Image Format (raw)"
    314316    IDS_BMF_DIB        "Device Independent Bitmap (dib)"
    315317
  • /trunk/deutsch/gotresde.rc

    r30 r20  
    267267    IDS_BMF_PBM        "Portable Pixel-map (ppm)"
    268268    IDS_BMF_JP2        "Jpeg 2000 (provided by the Open Source OpenJPEG library) (jp2)"
     269    IDS_BMF_JBG        "JBIG Joint Bi-level Image experts Group (jbg)"
     270    IDS_BMF_RAW        "Camera RAW Image Format (raw)"
    269271    IDS_BMF_DIB        "Device Independent Bitmap (dib)"
    270272
  • /trunk/dll/gotchdll.c

    r30 r20  
    2323#include "../id.h"
    2424
    25 //#define  __PMPRINTF__
    26 //#include "PMPRINTF.H"
    27 
    28 /* pre-accelerator input hook, undocumented, */
    29 #define HK_PREACCEL 17
    30 
    3125HAB     habDLL;
    3226HWND    hwndFrame;
    3327HMODULE hMod;
     28PFN     pfnInput;
    3429
    3530void EXPENTRY InitDLL (HAB hab, HWND hwnd)
     
    3732    habDLL = hab;
    3833    hwndFrame = hwnd;
    39     DosLoadModule (NULL, 0, "GOTCHDLL", &hMod);
     34    DosLoadModule (NULL, 0, "GOTCHA", &hMod);
     35    DosQueryProcAddr (hMod, 0, "InputProc", &pfnInput);
     36}
     37
     38void EXPENTRY StartInputHook (void)
     39{
     40    WinSetHook (habDLL, NULLHANDLE, HK_INPUT, pfnInput, hMod);
     41}
     42
     43void EXPENTRY StopInputHook (void)
     44{
     45    WinReleaseHook (habDLL, NULLHANDLE, HK_INPUT, pfnInput, hMod);
     46    DosFreeModule (hMod);
    4047}
    4148
    4249BOOL EXPENTRY InputProc (HAB hab, PQMSG pqmsg, ULONG ul)
    4350{
    44     USHORT usFlags;
    45     USHORT usScan;
    46    
    47     if (pqmsg->msg != WM_CHAR
    48         || (usFlags = SHORT1FROMMP(pqmsg->mp1), usScan =
    49             SHORT2FROMMP (pqmsg->mp2), (usFlags & KC_SCANCODE)) == 0){
    50         return FALSE;
    51     }
    52    
    53     if (CHAR4FROMMP(pqmsg->mp1) == 0x54 ) {
    54         if (usFlags & KC_KEYUP) {
    55             WinPostMsg (hwndFrame, WM_COMMAND,
    56                         MPFROM2SHORT (WID_PB_SETTINGS,0), 0);
    57             /*DosBeep( 1000, 10 );
    58             DosBeep( 2000, 20 );
    59             DosBeep( 3000, 30 ); */
    60             return TRUE;
    61         } else {
    62            /* DosBeep( 3000, 30 );
    63             DosBeep( 2000, 20 );
    64             DosBeep( 1000, 10 );*/
    65             return TRUE;
     51    if (pqmsg->msg == WM_CHAR) {
     52        if ((SHORT1FROMMP (pqmsg->mp1) & KC_VIRTUALKEY) &&
     53            (SHORT2FROMMP (pqmsg->mp2) == VK_PRINTSCRN)) {
     54            if (SHORT1FROMMP (pqmsg->mp1) & KC_KEYUP) {
     55                WinPostMsg (hwndFrame, WM_COMMAND,
     56                            MPFROM2SHORT (WID_PB_SCREENREGION,0), 0);
     57                /*DosBeep( 1000, 10 );
     58                DosBeep( 2000, 20 );
     59                DosBeep( 3000, 30 ); */
     60                return TRUE;
     61            } else {
     62                /*DosBeep( 3000, 30 );
     63                DosBeep( 2000, 20 );
     64                DosBeep( 1000, 10 ); */
     65                return TRUE;
     66            }
    6667        }
    6768    }
    68     else if (usScan == VK_PRINTSCRN || CHAR4FROMMP(pqmsg->mp1) == 93 ) {
    69         if (usFlags & KC_KEYUP) {
    70             WinPostMsg (hwndFrame, WM_COMMAND,
    71                         MPFROM2SHORT (WID_PB_SETCAPTURETYPE,0), 0);
    72             return TRUE;
    73         }
    74 
    75     }
    7669    return FALSE;
    77 }
    78 
    79 void EXPENTRY StartInputHook (void)
    80 {
    81     WinSetHook (habDLL, NULLHANDLE, HK_PREACCEL, (PFN) InputProc, hMod);
    82 }
    83 
    84 void EXPENTRY StopInputHook (void)
    85 {
    86     WinReleaseHook (habDLL, NULLHANDLE, HK_PREACCEL, (PFN) InputProc, hMod);
    87     DosFreeModule (hMod);
    8870}
    8971
  • /trunk/english/gotresen.rc

    r30 r20  
    3636/*     "Thorsten Thielen",     /* Translator's name */
    3737/*     "English",              /* Language to be used for online help */
    38 /*     "Gotcha_en",              /* Name of the help file */
     38/*     "english",              /* Name of the help file */
    3939}
    4040
     
    5757BEGIN
    5858   "a",    WID_PB_ABOUT, CHAR, ALT
    59    VK_F1,  WID_PB_ABOUT, VIRTUALKEY, ALT
    6059   "e",    WID_PB_SETTINGS, CHAR, ALT
    61    "h"     HM_GENERAL_HELP, CHAR, ALT /* Also F1*/
     60/*   VK_F1,  WID_PB_ABOUT, VIRTUALKEY */
    6261
    6362   "c",    WID_RB_CLIPBOARD, CHAR, ALT
    6463   "f",    WID_RB_FILE, CHAR, ALT
    6564
    66    "g",    WID_CB_HIDEWINDOW, CHAR, ALT
     65   "h",    WID_CB_HIDEWINDOW, CHAR, ALT
    6766   "d",    WID_CB_DELAYEDCAPTURE, CHAR, ALT
    6867
     
    7877WINDOWTEMPLATE ID_DLG_MAIN
    7978BEGIN
    80     FRAME   PSZ_NAMEVERSION, ID_DLG_MAIN, 98, 66, 200, 85,
     79    FRAME   PSZ_NAMEVERSION, ID_DLG_MAIN, 98, 66, 200, 70,
    8180            FS_NOBYTEALIGN | FS_DLGBORDER | NOT WS_VISIBLE,
    8281            FCF_TITLEBAR | FCF_SYSMENU | FCF_AUTOICON | FCF_TASKLIST | FCF_MINBUTTON
    8382    BEGIN          /* Please do NOT try to translate the "thth.wc..." ;-)*/
    84         WINDOW          "", FID_CLIENT, 0, 0, 200, 85, "thth.wc.gotcha.main",
     83        WINDOW          "", FID_CLIENT, 0, 0, 200, 70, "thth.wc.gotcha.main",
    8584                        FS_NOBYTEALIGN | NOT WS_VISIBLE
    8685        BEGIN
    87             GROUPBOX        "Save image to ...", WID_TEST, 4, 51, 90, 30
    88             AUTORADIOBUTTON "~Clipboard", WID_RB_CLIPBOARD, 10, 63, 78, 10, WS_TABSTOP
    89             AUTORADIOBUTTON "~File", WID_RB_FILE, 10, 53, 78, 10, WS_TABSTOP
    90             GROUPBOX        "Capture ...", WID_NIL, 100, 19, 96, 62
    91             PUSHBUTTON      "~Screen", WID_PB_SCREEN, 104, 59, 88, 12
    92             PUSHBUTTON      "Screen ~region", WID_PB_SCREENREGION, 104, 47, 88, 12
    93             PUSHBUTTON      "~Window", WID_PB_WINDOW, 104, 35, 88, 12
    94             PUSHBUTTON      "Window ~interior", WID_PB_WINDOWINTERIOR, 104, 23, 88, 12
    95             GROUPBOX        "Options", WID_NIL, 4, 19, 90, 30
    96             AUTOCHECKBOX    "Hide ~Gotcha!", WID_CB_HIDEWINDOW, 10, 31, 48, 10
    97             AUTOCHECKBOX    "~Delayed capture", WID_CB_DELAYEDCAPTURE, 10, 21, 58, 10
    98             PUSHBUTTON      "~Help", HM_GENERAL_HELP, 135, 4, 60, 12             
    99             PUSHBUTTON      "S~ettings", WID_PB_SETTINGS, 70, 4, 60, 12
    100             PUSHBUTTON      "~About", WID_PB_ABOUT, 5, 4, 60, 12
     86            GROUPBOX        "Save image to ...", WID_TEST, 4, 36, 90, 30
     87            AUTORADIOBUTTON "~Clipboard", WID_RB_CLIPBOARD, 10, 48, 78, 10, WS_TABSTOP
     88            AUTORADIOBUTTON "~File", WID_RB_FILE, 10, 38, 78, 10, WS_TABSTOP
     89            GROUPBOX        "Capture ...", WID_NIL, 100, 4, 96, 62
     90            PUSHBUTTON      "~Screen", WID_PB_SCREEN, 104, 44, 88, 12
     91            PUSHBUTTON      "Screen ~region", WID_PB_SCREENREGION, 104, 32, 88, 12
     92            PUSHBUTTON      "~Window", WID_PB_WINDOW, 104, 20, 88, 12
     93            PUSHBUTTON      "Window ~interior", WID_PB_WINDOWINTERIOR, 104, 8, 88, 12
     94            GROUPBOX        "Options", WID_NIL, 4, 4, 90, 30
     95            AUTOCHECKBOX    "~Hide Gotcha!", WID_CB_HIDEWINDOW, 10, 16, 78, 10
     96            AUTOCHECKBOX    "~Delayed capt.", WID_CB_DELAYEDCAPTURE, 10, 6, 78, 10
    10197        END
    10298    END
     
    109105    BEGIN
    110106        ICON            1, 1000, 8, 58, 21, 16, WS_GROUP
    111         LTEXT           PSZ_NAMEVERSION, WID_NIL, 42, 64, 150, 9
     107        LTEXT           PSZ_NAMEVERSION, WID_NIL, 42, 64, 202, 9
    112108                        PRESPARAMS PP_FOREGROUNDCOLOR, 0x00C80A0AL
    113         LTEXT           "Screen/window capture utility", WID_NIL, 42, 56, 150, 8
    114         LTEXT           "Copyright (c) 1998-2007 Thorsten Thielen", WID_NIL,
    115                         42, 48, 150, 8
    116         LTEXT           "Copyright (c) 2018 The Netlabs Gotcha Group", WID_NIL,
    117                         42, 40, 150, 8
    118         LTEXT           "All rights Reserved", WID_NIL, 42, 32, 50, 8
    119         LTEXT           "WWW: http://trac.netlabs.org/gotcha", WID_NIL,
    120                          42, 24, 150, 8, DT_WORDBREAK
     109        LTEXT           "Screen/window capture utility", WID_NIL, 42, 53, 202, 8
     110        LTEXT           "Copyright (c) 1998-2007 Thorsten Thielen", WID_NIL, 42, 44,
     111                        202, 8
     112        LTEXT           "e-Mail: thth@c2226.de", WID_NIL, 42, 32, 202, 8
     113        LTEXT           "WWW: http://www.c2226.de/programs/gotcha", WID_NIL, 42, 13, 232, 17, DT_WORDBREAK
    121114        LTEXT           "English translation: Thorsten Thielen", WID_NIL,
    122                         42, 16, 150, 8
    123         DEFPUSHBUTTON   "Ok", WID_NIL, 79, 4, 42, 10
     115                        42, 4, 202, 8
     116        DEFPUSHBUTTON   "Ok", WID_NIL, 8, 6, 22, 26
    124117    END
    125118END
     
    166159        DEFPUSHBUTTON   "~Ok", WID_PB_OK, 5, 4, 60, 14
    167160        PUSHBUTTON      "~Undo", WID_PB_UNDO, 70, 4, 60, 14
    168         PUSHBUTTON      "~Help", WID_PB_HELP, 215, 4, 60, 14, BS_HELP |
     161        PUSHBUTTON      "Help", WID_PB_HELP, 215, 4, 60, 14, BS_HELP |
    169162                        BS_NOPOINTERFOCUS
    170163    END
     
    187180        GROUPBOX        "Image file ~format", WID_NIL, 5, 5, 240, 44, DT_MNEMONIC
    188181        LISTBOX         WID_LB_FILEFORMAT, 11, 9, 228, 30, LS_NOADJUSTPOS
    189 
     182/*        AUTORADIOBUTTON "1.2 (What Windoze calls ""OS/2 format"")", WID_RB_BMF12, 11,
     183                        29, 208, 10, WS_TABSTOP | WS_GROUP
     184        AUTORADIOBUTTON "1.6 (Windoze format)", WID_RB_BMF16, 11, 19, 208, 10,
     185                        WS_TABSTOP
     186        AUTORADIOBUTTON "2.0 (Full OS/2 format)", WID_RB_BMF20, 11, 9, 208, 10,
     187                        WS_TABSTOP */
    190188    END
    191189END
     
    204202        GROUPBOX        "Options", WID_NIL, 5, 5, 220, 50
    205203        AUTOCHECKBOX    "Always on ~top of all windows", WID_CB_SSWALWAYSONTOP, 13, 35, 204, 10
    206         AUTOCHECKBOX    "Hide ~Gotcha during capture", WID_CB_SSWHIDE, 13, 25, 204, 10
     204        AUTOCHECKBOX    "~Hide when doing a capture", WID_CB_SSWHIDE, 13, 25, 204, 10
    207205    END
    208206END
     
    240238        GROUPBOX        "Online help", WID_NIL, 5, 5, 119, 54
    241239        LISTBOX         WID_LB_LANGUAGESHELP, 11, 9, 106, 40, LS_NOADJUSTPOS
    242         /*CONTROL         4, WID_NIL, 130, 5, 84, 36, WC_STATIC, SS_BITMAP |
    243                         WS_GROUP | WS_VISIBLE*/
    244         LTEXT           "Note: A restart is required for these settings to take effect."
    245                         WID_ST_LANGNOTE, 130, 45, 114, 70, DT_WORDBREAK
     240        CONTROL         4, WID_NIL, 130, 5, 84, 36, WC_STATIC, SS_BITMAP |
     241                        WS_GROUP | WS_VISIBLE
     242        LTEXT           "Note: This settings will take effect for the first "
     243                        "time at the next start of the program.",
     244                        WID_ST_LANGNOTE, 130, 45, 114, 70,
     245                        DT_WORDBREAK
    246246    END
    247247END
     
    250250{
    251251    IDS_QUIETMODE                      " (quiet mode)"
    252     IDS_SETTINGS                       "~Settings\tALT+e"
    253     IDS_PRODUCTINFORMATION             "Product information\tALT+a"
     252    IDS_SETTINGS                       "~Settings...\tALT+E"
     253    IDS_PRODUCTINFORMATION             "Product information\tALT+A"
    254254    IDS_HEADER_ERROR                   "ERROR"
    255255    IDS_ERROR_COULDNOTRETRIEVEHEADER   "Could not retrieve bitmap info header (0x%08lx)"
     
    281281    IDS_BMF_PBM        "Portable Pixel-map (ppm)"
    282282    IDS_BMF_JP2        "Jpeg 2000 (provided by the Open Source OpenJPEG library) (jp2)"
     283    IDS_BMF_JBG        "JBIG Joint Bi-level Image experts Group (jbg)"
     284    IDS_BMF_RAW        "Camera RAW Image Format (raw)"
    283285    IDS_BMF_DIB        "Device Independent Bitmap (dib)"
    284286
    285287    IDS_SNAPLABEL                      "Snap!"
    286     IDS_GENERALHELP                    "Gotcha! ~help\tF1"
     288    IDS_GENERALHELP                    "Gotcha! ~help..."
    287289}
  • /trunk/english/makefile

    r30 r20  
    3939GOTBUILDMACHINE = Zobopeep
    4040!endif
    41 !ifdef %_QUIET_
    42 RESOURCE = goqresen
    43 !else
    44 RESOURCE = gotresen
    45 !endif
    46 
    4741
    4842CC = WCC386.EXE
     
    6862#    $(CC) /I$(INCLDIR) $(CFLAGS) $*.c
    6963   
    70 all: $(RESOURCE).dll gotcha_en.hlp
     64all: gotresen.dll gotcha_en.hlp
    7165
    7266
    73 $(RESOURCE).dll: &
    74     $(RESOURCE).res
     67gotresen.dll: &
     68    gotresen.res
    7569    $(SED) -e "s;(GOTMAJOR);$(GOTMAJOR);g" &
    7670    -e "s;(GOTMINOR);$(GOTMINOR);g"   &
     
    8074    -e "s;Sun \|Mon \|Tue \|Wed \|Thu \|Fri \|Sat ;;g" &
    8175    -e "s;(GOTBUILDMACHINE);$(GOTBUILDMACHINE);g"   &
    82     $(RESOURCE).lnk.tpl > $(RESOURCE).lnk
    83     $(LINK) @$(RESOURCE).lnk f ..\tools\dll.obj lib clib3r.lib
    84     $(RC) $(RESOURCE).res $(RESOURCE).dll
    85     lxlite /x- /b- $(RESOURCE).dll
     76    gotresen.lnk.tpl > gotresen.lnk
     77    $(LINK) @gotresen.lnk f ..\tools\dll.obj lib clib3r.lib
     78    $(RC) gotresen.res gotresen.dll
     79    lxlite /x- /b- gotresen.dll
    8680    $(COPY) *.dll ..\bin
    8781   
    88 $(RESOURCE).res:    $(RESOURCE).rc &
     82gotresen.res:    gotresen.rc &
    8983                 ../id.h &
    9084                 ../common.rc &
    9185                 ../version.h
    92         $(RC) $(RFLAGS) -r $(RESOURCE).rc $@
     86        $(RC) $(RFLAGS) -r gotresen.rc $@
    9387       
    9488gotcha_en.hlp:     gotcha_en.ipf ../common.ipf &
     
    9690                   $(DATA)/gotcha.bmp
    9791                   wipfc -l en_US gotcha_en.ipf $@     
    98                    $(COPY) *.hlp readme ..\bin
     92                   $(COPY) *.hlp ..\bin
    9993
    10094clean:: .symbolic
  • /trunk/gotcha.cpp

    r30 r20  
    3434PFNWP       OldFrameWP, wpOldButton;
    3535PSETTINGS   pset;
    36 BOOL        g_fQuiet = FALSE, g_fIdle = FALSE, g_fSetPathName = FALSE;
     36BOOL        g_fQuiet = FALSE;
    3737HWND        g_hwndMenuSSW;
    3838HMODULE     g_hmod = NULLHANDLE;
     
    4444#include "savebmp.cpp"
    4545
    46 // ** CheckCmdlineArgs **************************************************** /*FOLD00*/
     46// ** CheckCmdlineArgs **************************************************** /*fold00*/
    4747
    4848BOOL CheckCmdlineArgs (int argc, char *argv[])
     
    7272                    pset->SetFileSaveStyle (FSS_NUMFILES);
    7373                    pset->SetNumSaveDir (argv[i]);
    74                     g_fSetPathName = TRUE;
    7574                }
    7675        }
     
    8382                pset->SetFileSaveStyle (FSS_FORCEFILE);
    8483                pset->SetForceSaveFile (argv[i]);
    85                 g_fSetPathName = TRUE;
    8684            }
    8785        }
     
    8987        else if (stricmp (argv[i], "-i") == 0)
    9088        {
    91             g_fIdle = TRUE;
    9289            pset->SetFlag (SEI_IDLEPRIORITY, TRUE);
    9390        }
     
    114111
    115112    //DisplayError("DEBUG", "%d", Version());
    116 #ifdef _QUIET_
    117     if ((Version() < 1))
     113#ifdef _USEDLL_
     114    if (g_fQuiet && (Version() < 1))
    118115    {
    119116        DisplayError("GOTCHA.DLL TO OLD",
     
    126123        exit (0);
    127124    }
    128 
    129     bool fPrtScr = FALSE;
    130     ULONG ulDataSize;
    131     int rc;
    132 
    133     rc = PrfQueryProfileSize( HINI_PROFILE, "PM_ControlPanel", "PrintScreen",
    134                              &ulDataSize );
    135     rc = PrfQueryProfileData(HINI_USERPROFILE, "PM_ControlPanel", "PrintScreen",
    136                              &fPrtScr, &ulDataSize);
    137     if (fPrtScr || !rc) {
    138         fPrtScr = TRUE;
    139         bool temp = FALSE;
    140         rc = PrfWriteProfileData(HINI_USERPROFILE, "PM_ControlPanel", "PrintScreen",
    141                                  &temp, sizeof(bool));
    142     }
    143125#endif
    144126
     
    152134    pset = new SETTINGS;
    153135
    154     pset->idleSetInIni = pset->QueryFlag(SEI_IDLEPRIORITY);
    155     pset->saveStyle = pset->QuerySaveStyle ();
    156     pset->pNumSaveDir = pset->QueryNumSaveDir ();
    157     pset->pForceSaveFile = pset->QueryForceSaveFile();
    158     pset->bSerialCapture = pset->SerialCapture ();
    159136    // check cmd line args and if "-a" found take screenshot and exit
    160137    if (CheckCmdlineArgs (argc, argv))
    161138    {
    162139        CaptureWindow (HWND_DESKTOP, HWND_DESKTOP, NULL, TRUE);
    163         pset->SetFileSaveStyle(pset->saveStyle);
    164140        delete pset;
    165141        WinDestroyMsgQueue (hmq);
     
    183159
    184160    // init the quiet mode
    185     //if (g_fQuiet)
    186     //{
    187 #ifdef _QUIET_
    188 //#if 1
    189     DebugHereIAm();
     161    if (g_fQuiet)
     162    {
     163#ifdef _USEDLL_
    190164        InitDLL (hab, hwndFrame);
    191165        StartInputHook ();
    192166#endif
    193167
    194         //CHAR ach[61];
    195         //WinQueryWindowText (hwndFrame, sizeof (ach), ach);
    196         //strcat (ach, RSTR (IDS_QUIETMODE));
    197         //WinSetWindowText (hwndFrame, ach);
    198         //WinSetWindowPos (hwndFrame, NULLHANDLE, 0,0, 0,0, SWP_MINIMIZE);
    199         //HSWITCH hswitch = WinQuerySwitchHandle(hwndFrame, 0);
    200         //WinRemoveSwitchEntry(hswitch);
    201     //}
     168        CHAR ach[61];
     169        WinQueryWindowText (hwndFrame, sizeof (ach), ach);
     170        strcat (ach, RSTR (IDS_QUIETMODE));
     171        WinSetWindowText (hwndFrame, ach);
     172        WinSetWindowPos (hwndFrame, NULLHANDLE, 0,0, 0,0, SWP_MINIMIZE);
     173    }
    202174
    203175    // position snapshot window
     
    224196        WinDispatchMsg (hab, &qmsg);
    225197
    226 
    227     // Set priorty to unless user set regular since running -q sets it to idle in the ini
    228     if (g_fIdle || g_fQuiet) {
    229         pset->SetFlag (SEI_IDLEPRIORITY, pset->idleSetInIni);
    230         if (g_fQuiet) {
    231             pset->SetFileSaveStyle (pset->saveStyle); // changed with -q
    232             pset->SerialCapture (pset->bSerialCapture); // changed with -q
    233         }
    234     }
    235     // Don't change the ini stored paths if the paths were set from the command line
    236     if (g_fSetPathName) {
    237         pset->SetFileSaveStyle(pset->saveStyle);
    238         pset->SetForceSaveFile (pset->pForceSaveFile);
    239         pset->SetNumSaveDir (pset->pNumSaveDir);
    240     }
    241198    // save size, etc. of snapshot window
    242199    WinQueryWindowPos (hwndSnapshot, &swp);
     
    251208    WinDestroyWindow (hwndFrame);
    252209
    253 #ifdef _QUIET_
    254 //#if 1
    255     if (fPrtScr || !rc) {
    256         PrfWriteProfileData(HINI_USERPROFILE, "PM_ControlPanel", "PrintScreen",
    257                             &fPrtScr, sizeof(bool));
    258     }
    259     //if (g_fQuiet)
     210#ifdef _USEDLL_
     211    if (g_fQuiet)
    260212        StopInputHook ();
    261213#endif
     
    290242}
    291243
    292 APIRET saymsg2(int DefaultButton, HWND hwnd,  PCSZ pszTitle, PCSZ pszFmt, ...)
    293 {
    294   ULONG i;
    295   APIRET rc;
    296   CHAR szMsg[4096];
    297   va_list va;
    298   MB2INFO *pmbInfo;
    299   MB2D mb2dBut[3];
    300   ULONG ulInfoSize = (sizeof(MB2INFO) + (sizeof(MB2D) * 2));
    301 
    302   va_start(va, pszFmt);
    303   szMsg[sizeof(szMsg) - 1] = 0;
    304   vsprintf(szMsg, pszFmt, va);
    305   va_end(va);
    306 
    307   if (szMsg[sizeof(szMsg) - 1]) {
    308     fprintf(stderr, "Buffer overflow in saymsg2 - need %u bytes\n", strlen(szMsg) + 1);
    309     fflush(stderr);
    310   }
    311 
    312   memset(mb2dBut, 0, sizeof(MB2D) * 3);
    313   strcpy(mb2dBut[0].achText,"Ok");
    314   strcpy(mb2dBut[1].achText,"Cancel");
    315   strcpy(mb2dBut[2].achText,"Settings");
    316   mb2dBut[0].idButton = 1;
    317   mb2dBut[1].idButton = 2;
    318   mb2dBut[2].idButton = 3;
    319   if (DefaultButton)
    320     mb2dBut[DefaultButton - 1].flStyle = BS_DEFAULT;
    321   pmbInfo = (MB2INFO *) malloc(ulInfoSize);
    322   memset(pmbInfo, 0, ulInfoSize);
    323   if (pmbInfo) {
    324     pmbInfo->cb         = ulInfoSize;
    325     pmbInfo->hIcon      = 0;
    326     pmbInfo->cButtons   = 3;
    327     pmbInfo->flStyle    = MB_MOVEABLE | MB_ICONQUESTION ;
    328     pmbInfo->hwndNotify = NULLHANDLE;
    329     for (i = 0; i < 3; i++) {
    330       memcpy( pmbInfo->mb2d+i , mb2dBut+i , sizeof(MB2D));
    331     }
    332     rc = WinMessageBox2(HWND_DESKTOP, hwnd,
    333                         szMsg, pszTitle, SM2_DIALOG,
    334                         pmbInfo);
    335     WinSetFocus(HWND_DESKTOP, SM2_DIALOG);
    336     free(pmbInfo);
    337     return rc;
    338   }
    339   return MBID_ERROR;
    340 }
    341 // ** AddSysMenuItem ****************************************************** /*FOLD00*/
     244// ** AddSysMenuItem ****************************************************** /*fold00*/
    342245
    343246VOID AddSysMenuItem (HWND hwndFrame, MENUITEM *Item, PSZ Text)
     
    370273VOID SetIdlePriority (BOOL f)
    371274{
    372 #if 0 //#ifndef _QUEIT_
    373275    if (f)
    374276        DosSetPriority(PRTYS_PROCESS, PRTYC_IDLETIME, 0, 0);
    375277    else
    376278        DosSetPriority(PRTYS_PROCESS, PRTYC_REGULAR, 0, 0);
    377 #else
    378     DosSetPriority(PRTYS_PROCESS, PRTYC_FOREGROUNDSERVER, 0, 0);
    379 #endif
    380279}
    381280
  • /trunk/gotcha.h

    r30 r20  
    3939#include <stdarg.h>
    4040
     41#include "mmioos2.h"
     42
    4143#include "config.h"
    4244
     
    4648#include "helper.h"
    4749#include "settings.h"
    48 
    49 #define  _PMPRINTF_
    50 #include "PMPRINTF.H"
    5150
    5251#define PSZ_EXTENSION    ".bmp"
     
    7069
    7170extern PSETTINGS pset;
    72 extern HWND hwndFrame, hwndSnapshot, g_hwndMenuSSW, g_hwndSettingsDialog, g_hwndPage0;
     71extern HWND hwndFrame, hwndSnapshot, g_hwndMenuSSW;
    7372
    7473extern HMODULE g_hmod;
     
    8584
    8685HBITMAP  CaptureWindow (HWND hwnd, HWND hwndParent, PRECTL prcl, BOOL f);
    87 VOID     SaveBitmap (HBITMAP hbm, HPS hps, int width, int height,
    88                      int bitCount, char *title);
     86VOID     SaveBitmap (HBITMAP hbm, HPS hps, int width, int height, int bitCount);
    8987VOID     SaveBitmapToClipboard (HBITMAP hbm);
    90 //VOID     SaveBitmapToFile (HBITMAP hbm, PSZ psz, HPS hps);
     88VOID     SaveBitmapToFile (HBITMAP hbm, PSZ psz, HPS hps);
    9189VOID     StartSelection (HWND hwnd);
    92 BOOL     SelectSaveFile (char *title);
     90BOOL     SelectSaveFile (VOID);
    9391BOOL     DoTracking (RECTL *prclTrack);
    9492VOID     AddSysMenuItem (HWND hwndFrame, MENUITEM *Item, PSZ Text);
     
    111109
    112110VOID     DisplayError (PSZ pszTitle, PSZ psz, ...);
    113 APIRET   saymsg2(int DefaultButton, HWND hwnd,
    114                  PCSZ pszTitle, PCSZ pszFmt, ...);
    115111VOID     DoCountdown (ULONG ul);
    116112VOID     AdjustSaveTypeButtons (BOOL f);
    117113
    118 //BOOL SetEAs (PSZ psz);
     114BOOL SetEAs (PSZ psz);
    119115VOID SetIdlePriority (BOOL f);
    120116
  • /trunk/id.h

    r30 r20  
    2828#define ID_DLG_SETTINGSPAGE3      6
    2929#define ID_DLG_SETTINGSPAGE4      7
    30 #define SM2_DIALOG                8
    31 #define ID_DLG_SETTINGSPAGE0      9
    3230
    3331#define WID_NIL                   0
     
    7674#define WID_LB_FILEFORMAT         43
    7775#define WID_PB_EXIT               44
    78 #define WID_PB_SETCAPTURETYPE     45
    7976
    8077#define IDM_SSWPOPUP              1
     
    160157#define IDS_BMF_PBM                         29
    161158#define IDS_BMF_JP2                         30
    162 #define IDS_BMF_DIB                         31
     159#define IDS_BMF_JBG                         31
     160#define IDS_BMF_RAW                         32
     161#define IDS_BMF_DIB                         33
    163162#define IDS_SNAPLABEL                       34
    164163#define IDS_GENERALHELP                     35
    165 #define IDS_MAINWIN                         36
    166164
    167165#define MAIN_HELP_TABLE                     1
  • /trunk/italiano/gotresit.rc

    r30 r20  
    323323    IDS_BMF_PBM        "Portable Pixel-map (ppm)"
    324324    IDS_BMF_JP2        "Jpeg 2000 (provided by the Open Source OpenJPEG library) (jp2)"
     325    IDS_BMF_JBG        "JBIG Joint Bi-level Image experts Group (jbg)"
     326    IDS_BMF_RAW        "Camera RAW Image Format (raw)"
    325327    IDS_BMF_DIB        "Device Independent Bitmap (dib)"   
    326328   
  • /trunk/mainwin.cpp

    r30 r20  
    1818 ***/
    1919
    20 // ** CreateMainWindow **************************************************** /*FOLD00*/
     20// ** CreateMainWindow **************************************************** /*fold00*/
    2121
    2222HWND CreateMainWindow (VOID)
    2323{
    24 #ifdef _QUIET_
    25 //#if 1
    26     hwndFrame = WinLoadDlg (HWND_OBJECT, NULLHANDLE, NULL, GETMODULE,
    27                             ID_DLG_MAIN, NULL);
    28 #else
    2924    hwndFrame = WinLoadDlg (HWND_DESKTOP, NULLHANDLE, NULL, GETMODULE,
    3025                            ID_DLG_MAIN, NULL);
    31 #endif
    3226    OldFrameWP = WinSubclassWindow (hwndFrame, FrameProcedure);
    3327
     
    7670}
    7771
    78 // ** Drag **************************************************************** /*FOLD00*/
     72// ** Drag **************************************************************** /*fold00*/
    7973
    8074VOID Drag (HWND hwnd)
     
    116110}
    117111
    118 // ** FrameProcedure ****************************************************** /*FOLD00*/
     112// ** FrameProcedure ****************************************************** /*fold00*/
    119113
    120114MRESULT EXPENTRY FrameProcedure (HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2)
     
    279273            break;
    280274
    281         case WID_PB_SETCAPTURETYPE:
    282             //int capType;
    283 
    284             switch (pset->QuerySSWCaptureType ())
    285             {
    286             case CAP_WINDOWINT:
    287                 WinSendMsg (hwndFrame, WM_COMMAND,
    288                             MPFROM2SHORT (WID_PB_WINDOWINTERIOR,0), 0);
    289             case CAP_SCREENREGION:
    290                 WinSendMsg (hwndFrame, WM_COMMAND,
    291                             MPFROM2SHORT (WID_PB_SCREENREGION,0), 0);
    292             case CAP_WINDOW:
    293                 WinSendMsg (hwndFrame, WM_COMMAND,
    294                             MPFROM2SHORT (WID_PB_WINDOW,0), 0);
    295             default:
    296                WinSendMsg (hwndFrame, WM_COMMAND,
    297                             MPFROM2SHORT (WID_PB_SCREEN,0), 0);
    298             }
    299             break;
    300 
    301275        case WID_PB_SCREEN:
    302276            usCap = CAP_SCREEN;
    303 #ifdef _QUIET_
    304 //#if 1
    305             WinShowWindow (g_hwndSettingsDialog, FALSE);
    306             // WinSendMsg (g_hwndSettingsDialog, WM_CLOSE, 0,0); //Needs to go to the setting dialog
    307             // Replace current global with pset->GetSettingDialogHwnd () or such
    308             // Need for all 4 cases;
    309 #endif
    310277            WinSendMsg (hwnd, UM_PREPARECAPTURE, 0,0);
    311278            break;
     
    313280        case WID_PB_SCREENREGION:
    314281            usCap = CAP_SCREENREGION;
    315 #ifdef _QUIET_
    316 //#if 1
    317             WinShowWindow (g_hwndSettingsDialog, FALSE);
    318 #endif
    319282            WinSendMsg (hwnd, UM_PREPARECAPTURE, 0,0);
    320283            break;
     
    322285        case WID_PB_WINDOWINTERIOR:
    323286            usCap = CAP_WINDOWINT;
    324 #ifdef _QUIET_
    325 //#if 1
    326             WinShowWindow (g_hwndSettingsDialog, FALSE);
    327 #endif
    328287            WinSendMsg (hwnd, UM_PREPARECAPTURE, 0,0);
    329288            break;
     
    331290        case WID_PB_WINDOW:
    332291            usCap = CAP_WINDOW;
    333 #ifdef _QUIET_
    334 //#if 1
    335             WinShowWindow (g_hwndSettingsDialog, FALSE);
    336 #endif
    337292            WinSendMsg (hwnd, UM_PREPARECAPTURE, 0,0);
    338293            break;
     
    359314
    360315        usState = STATE_WAITFORHIDE;
    361 
    362         if (usCap == CAP_SCREENREGION || usCap == CAP_SCREEN) {
    363 #ifdef _QUIET_
    364             hwndParent = WinQueryFocus(HWND_DESKTOP);
    365 #else
    366             hwndParent = WinQueryWindow(hwndFrame, QW_NEXTTOP );
    367 #endif
    368         }
    369 #ifndef _QUIET_
    370 //#if 0
    371316        if (WinQueryButtonCheckstate (hwnd, WID_CB_HIDEWINDOW))
    372317            WinShowWindow (WinQueryWindow (hwnd, QW_PARENT), FALSE);
    373318        else
    374 #endif
    375319            WinSendMsg (hwnd, UM_WINDOWHIDDEN, 0,0);
    376320        return MRESULT (FALSE);
     
    402346            {
    403347                usState = STATE_WINDOWSELECTED;
    404                 int rc = saymsg2(1, hwnd,  "Capture", "Do you wish to continue?");
    405                
    406                 if (rc == 1)
    407                     WinPostMsg (hwnd, UM_WINDOWSELECTED,
    408                                 MPFROMHWND (HWND_DESKTOP),
    409                                 MPFROMHWND (HWND_DESKTOP));
    410                 if (rc == 2)
    411                     WinSendMsg (hwnd, UM_ABORT, 0,0);
    412                 if (rc == 3) {
    413                     pset->Dialog ();
    414                     WinPostMsg (hwnd, UM_WINDOWSELECTED,
    415                                 MPFROMHWND (HWND_DESKTOP),
    416                                 MPFROMHWND (HWND_DESKTOP));
    417                 }
     348                WinPostMsg (hwnd, UM_WINDOWSELECTED,
     349                            MPFROMHWND (HWND_DESKTOP),
     350                            MPFROMHWND (HWND_DESKTOP));
    418351            }
    419352            else
     
    484417                                                             FALSE));
    485418            hwndCap = HWND (mp1);
    486             if (usCap != CAP_SCREENREGION && usCap != CAP_SCREEN)
    487                 hwndParent = HWND (mp2);
     419            hwndParent = HWND (mp2);
    488420            if (pset->SerialCapture ())
    489421            {
     
    546478            // capture the window to a bitmap and save this
    547479            if (usCap == CAP_SCREENREGION)
    548                 hbm = CaptureWindow (hwndCap, hwndParent, &rcl, FALSE);
    549             else if (usCap == CAP_SCREEN)
    550                 hbm = CaptureWindow (hwndCap, hwndParent, NULL, FALSE);
     480                hbm = CaptureWindow (hwndCap, hwndParent, &rcl, TRUE);
    551481            else
    552482                hbm = CaptureWindow (hwndCap, hwndParent, NULL, TRUE);
     
    582512            WinSetCapture (HWND_DESKTOP, NULLHANDLE);
    583513
    584         pset->Load ();
    585 
    586514        WinSendMsg (hwndSnapshot, UM_STOPCAPTURE, 0,0);
    587515        WinStopTimer (hab, hwnd, ulTimer);
    588 #ifdef _QUIET_
    589 //#if 1
    590         // ? FIXME to give option to reshow window.
    591         if (WinQueryButtonCheckstate (hwnd, WID_CB_HIDEWINDOW))
    592             WinSendMsg (g_hwndSettingsDialog, WM_CLOSE, 0,0);
    593         else if (WinIsWindow ( hab, g_hwndSettingsDialog) &&
    594             ! WinIsWindowVisible (g_hwndSettingsDialog))
    595             WinShowWindow (g_hwndSettingsDialog, TRUE);
    596         pset->HideWindow (TRUE);
    597 #else
     516
    598517        // re-show the windows if they are hidden
    599518        // FIXME using global hwndFrame is pretty yukki
     
    602521        if (! WinIsWindowVisible (hwndSnapshot) && pset->SnapshotWindow ())
    603522            WinShowWindow (hwndSnapshot, TRUE);
    604 #endif
     523
    605524        WinEnableWindow (hwnd, TRUE);
    606525        WinSetActiveWindow (HWND_DESKTOP, hwnd);
  • /trunk/makefile

    r30 r20  
    3535GOTBUILDMACHINE = Zobopeep
    3636!endif
    37 !ifdef %_QUIET_
    38 GOTCHAEXE = gotchaq
    39 !else
    40 GOTCHAEXE = gotcha
    41 !endif
    4237
    4338CC = wpp386.exe
     
    5247SED = sed.exe
    5348
    54 !ifdef %_QUIET_
    55 CFLAGS = -D_QUIET_ -otexan -zp4 -6r
    56 !else
    5749CFLAGS = -otexan -zp4 -6r
    58 !endif
    59 
    6050RFLAGS = -bt=os2 -zm
    6151
    62 LFLAGS = op map=$(GOTCHAEXE)
     52LFLAGS = op map=gotcha
    6353
    6454SRCDIR = U:\Gotcha_Workspace\trunk
     
    6858PMPRINTFPATH = U:\PMPrintf
    6959
    70 all:  dll resources $(GOTCHAEXE).exe
     60all:  dll resources gotcha.exe
    7161
    7262dll:  .symbolic
     
    8878    $(CHDIR) ..
    8979   
    90 $(GOTCHAEXE).lnk: $(GOTCHAEXE).lnk.tpl 
     80gotcha.lnk: gotcha.lnk.tpl 
    9181  $(SED) -e "s;(GOTMAJOR);$(GOTMAJOR);g" &
    9282    -e "s;(GOTMINOR);$(GOTMINOR);g"   &
     
    9686    -e "s;Sun \|Mon \|Tue \|Wed \|Thu \|Fri \|Sat ;;g" &
    9787    -e "s;(GOTBUILDMACHINE);$(GOTBUILDMACHINE);g"   &
    98     $(GOTCHAEXE).lnk.tpl > $(GOTCHAEXE).lnk 
     88    gotcha.lnk.tpl > gotcha.lnk 
    9989
    100 $(GOTCHAEXE).exe: $(GOTCHAEXE).lnk gotcha.obj about.obj helper.obj rstring.obj settings.obj gotcha.res
    101     $(LINK) $(LFLAGS) @$(GOTCHAEXE).lnk f &
     90gotcha.exe: gotcha.lnk gotcha.obj about.obj helper.obj rstring.obj settings.obj gotcha.res
     91    $(LINK) $(LFLAGS) @gotcha.lnk f &
    10292    gotcha.obj, &
    10393    about.obj,  &
     
    10696    settings.obj &
    10797    lib dll\gotchdll.lib lib mmpm2.lib lib $(GBMPATH)\gbm.lib lib $(SRCDIR)\tools\gbmmemw.lib lib $(PMPRINTFPATH)\pmprintf.lib
    108     $(RC) $(RFLAGS) $(SRCDIR)\gotcha.res $(GOTCHAEXE).exe
    109     $(PERL) $(MAPSYMW) $(GOTCHAEXE).map
    110     mapxqs.exe $(GOTCHAEXE).map
    111     lxlite $(GOTCHAEXE).exe /x- /b-
    112     lxlite $(GOTCHAEXE).exe /c:minstub
     98    $(RC) $(RFLAGS) $(SRCDIR)\gotcha.res gotcha.exe
     99    $(PERL) $(MAPSYMW) gotcha.map
     100    mapxqs.exe gotcha.map
     101    lxlite gotcha.exe /x- /b-
     102    lxlite gotcha.exe /c:minstub
    113103    $(COPY) *.exe *.sym *.xqs *.map* readme* bin
    114104       
  • /trunk/makefile.emx

    r30 r20  
    5656                        $(TMP)/helper.$(o) \
    5757                        $(TMP)/rstring.$(o) \
     58                        $(TMP)/mmio.$(o) \
    5859                        $(TMP)/settings.$(o) \
    5960                        $(SRC)/gotcha.def \
  • /trunk/portbras/gotresbr.rc

    r30 r20  
    276276    IDS_BMF_PBM        "Portable Pixel-map (ppm)"
    277277    IDS_BMF_JP2        "Jpeg 2000 (provided by the Open Source OpenJPEG library) (jp2)"
     278    IDS_BMF_JBG        "JBIG Joint Bi-level Image experts Group (jbg)"
     279    IDS_BMF_RAW        "Camera RAW Image Format (raw)"
    278280    IDS_BMF_DIB        "Device Independent Bitmap (dib)"
    279281
  • /trunk/savebmp.cpp

    r30 r20  
    2424#include "model.h"
    2525
     26#define  __PMPRINTF__
     27#include "PMPRINTF.H"
     28
    2629/* ------------------------------ */
    2730static int StrideOf(const MOD *mod)
    2831{
     32    DebugHereIAm();
    2933        return ( ( mod->gbm.w * mod->gbm.bpp + 31 ) / 32 ) * 4;
    3034        }
     
    3741        if ( (mod->pbData = (UCHAR*) gbmmem_malloc(stride * mod->gbm.h)) == NULL )
    3842            return FALSE;
     43        DebugHereIAm();
    3944        return TRUE;
    4045        }
     
    5459        if ( !AllocateData(modNew) )
    5560            return MOD_ERR_MEM;
     61        DebugHereIAm();
    5662        return MOD_ERR_OK;
    5763        }
     
    7985
    8086        if ( (mrc = ModCreate(w, h, bpp, NULL, modNew)) != MOD_ERR_OK )
    81             return mrc;
    82 
     87                return mrc;
     88        DebugHereIAm();
    8389        memset(&(bm.bmp2), 0, sizeof(bm.bmp2));
    8490        bm.bmp2.cbFix     = sizeof(BITMAPINFOHEADER2);
     
    99105                        }
    100106                }
     107        DebugHereIAm();
    101108        return MOD_ERR_OK;
    102109        }
     
    120127            return grc;
    121128        }
     129        PmpfF(( "file type %i", ft ));
     130        DebugHereIAm();
    122131        gbm_query_filetype(ft, &gbmft);
    123        
     132        PmpfF(( "file type %i name %s flags %i bpp %i", ft, gbmft.short_name,
     133               gbmft.flags, mod->gbm.bpp));
    124134        switch ( mod->gbm.bpp )
    125135                {
     
    133143        if ( (gbmft.flags & flag) == 0 )
    134144            return MOD_ERR_SUPPORT;
    135        
     145        DebugHereIAm();
    136146        if ( (fd = gbm_io_create(szFn, GBM_O_WRONLY)) == -1 )
    137147                return MOD_ERR_CREATE;
    138        
    139         if ( (grc = gbm_write(szFn, fd, ft, &(mod->gbm), mod->gbmrgb,
    140                               mod->pbData, szOpt)) != GBM_ERR_OK )
     148        DebugHereIAm();
     149        if ( (grc = gbm_write(szFn, fd, ft, &(mod->gbm), mod->gbmrgb, mod->pbData, szOpt)) != GBM_ERR_OK )
    141150                {
    142151                gbm_io_close(fd);
     
    144153                return MOD_ERR_GBM(grc);
    145154                }
    146        
     155        DebugHereIAm();
    147156        gbm_io_close(fd);
     157        DebugHereIAm();
    148158        return MOD_ERR_OK;
    149159        }
     
    151161// ** SaveBitmap ********************************************************** /*FOLD00*/
    152162
    153 VOID SaveBitmap (HBITMAP hbm, HPS hps, int width, int height,
    154                  int bitCount, char *title)
     163VOID SaveBitmap (HBITMAP hbm, HPS hps, int width, int height, int bitCount)
    155164{
    156165#ifdef _DOLOGMEM_
     
    163172        PSZ psz = pset->QueryForceSaveFile();
    164173        psz = AddExtensionToFilename( psz );
    165         ModCreateFromHPS( hps, width, height,
    166                          (bitCount > 8 ) ? 24 : bitCount,
    167                          &newmod );
    168         ModWriteToFile(&newmod, psz, "" );
    169        
     174        //
     175        /*if( ( pset->QueryFileFormat() == BMF_12 ) ||
     176           ( pset->QueryFileFormat() == BMF_16 ) ||
     177           ( pset->QueryFileFormat() == BMF_20 ) ) {
     178            SaveBitmapToFile( hbm, psz, hps );
     179            DebugHereIAm();
     180        }
     181        else { */
     182            ModCreateFromHPS( hps, width, height,
     183                             (bitCount > 8 ) ? 24 : bitCount,
     184                             &newmod );
     185            ModWriteToFile(&newmod, psz, "" );
     186        //}
    170187#ifdef _DOLOGMEM_
    171188        LogMem( "SaveBitmap-1", FALSE );
     
    191208        LogDebug( "SaveBitmap()" );
    192209#endif
    193         if (SelectSaveFile (title)) {
     210        if (SelectSaveFile ()) {
    194211#ifdef _DOLOGDEBUG_
    195212            LogDebug( "Before call to SaveBitmapToFile()" );
    196213#endif
    197             ModCreateFromHPS( hps, width, height,
    198                              (bitCount > 8 ) ? 24 : bitCount,
    199                              &newmod );
    200             ModWriteToFile(&newmod, pset->QuerySaveFile (), "" );
    201 
     214            //DebugHereIAm();
     215            /*if( ( pset->QueryFileFormat() == BMF_12 ) ||
     216               ( pset->QueryFileFormat() == BMF_16 ) ||
     217               ( pset->QueryFileFormat() == BMF_20 ) ) {
     218                DebugHereIAm();
     219                SaveBitmapToFile( hbm, pset->QuerySaveFile (), hps );
     220                DebugHereIAm();
     221            }
     222            else {*/
     223                ModCreateFromHPS( hps, width, height,
     224                                 (bitCount > 8 ) ? 24 : bitCount,
     225                                 &newmod );
     226                ModWriteToFile(&newmod, pset->QuerySaveFile (), "" );
     227            //}
    202228#ifdef _DOLOGDEBUG_
    203229            LogDebug( "After call to SaveBitmapToFile()" );
     
    230256
    231257// ** SaveBitmapToFile **************************************************** /*FOLD00*/
    232 #if 0
     258
    233259#define CB_12HEADER       sizeof (BITMAPINFOHEADER) // == 12
    234260#define CB_16HEADER       (sizeof (BITMAPINFOHEADER2)-24)
    235261#define CB_20HEADER       sizeof (BITMAPINFOHEADER2) // == 64
    236262
    237 
     263#if 0
    238264VOID SaveBitmapToFile (HBITMAP hbm, PSZ psz, HPS hps)
    239265{
     
    416442    }
    417443
     444    /*else {
     445#ifdef _DOLOGDEBUG_
     446        LogDebug( "SaveBitmapToFile(): Starting 'else' path." );
     447#endif
     448        PFN xmmioClose = pset->GetMMIO()->pfmmioClose;
     449//        PFN xmmioOpen = pset->GetMMIO()->pfmmioOpen;
     450        PFN xmmioWrite = pset->GetMMIO()->pfmmioWrite;
     451        PFN xmmioQueryHeaderLength = pset->GetMMIO()->pfmmioQueryHeaderLength;
     452        PFN xmmioSetHeader = pset->GetMMIO()->pfmmioSetHeader;
     453
     454#ifdef _DOLOGDEBUG_
     455    LogDebug( "SaveBitmapToFile(): Before GetFOURCC." );
     456#endif
     457        // ********* WRITE TARGET
     458        FOURCC fccTargetIOProc = pset->GetFOURCC();
     459
     460        // Initialize our info MMIOINFO structure.
     461        MMIOINFO mmioinfoTarget;
     462#ifdef _DOLOGDEBUG_
     463    LogDebug( "SaveBitmapToFile(): Before memset." );
     464#endif
     465        memset( &mmioinfoTarget, 0L, sizeof( MMIOINFO ) );
     466        mmioinfoTarget.fccIOProc   = fccTargetIOProc;
     467        mmioinfoTarget.ulTranslate = MMIO_TRANSLATEHEADER | MMIO_TRANSLATEDATA;
     468
     469#ifdef _DOLOGDEBUG_
     470        LogDebug( "SaveBitmapToFile(): Trying to open file." );
     471#endif
     472        // Open target file.
     473        HMMIO hmmioTarget;
     474        if( ! ( hmmioTarget = mmioOpen( psz,
     475                                        &mmioinfoTarget,
     476                                        MMIO_CREATE | MMIO_WRITE |
     477                                        MMIO_DENYWRITE | MMIO_NOIDENTIFY ))) {
     478            DisplayError ("mmioOpen()-Error",
     479                          "mmioOpen()-Error %ld", mmioinfoTarget.ulErrorRet );
     480            return;
     481        }
     482#ifdef _DOLOGDEBUG_
     483        LogDebug( "SaveBitmapToFile(): Open file ok." );
     484#endif
     485
     486        // Set the target header.
     487        ULONG ulImageHeaderLength;
     488
     489        mmioQueryHeaderLength( hmmioTarget, (PLONG)&ulImageHeaderLength, 0L, 0L );
     490        if( ulImageHeaderLength != sizeof( MMIMAGEHEADER ) )
     491        {
     492            // We have a problem.....possibly incompatible versions.
     493            mmioClose( hmmioTarget, 0L );
     494            DisplayError ("mmioQueryHeaderLength()-Error",
     495                          "mmioQueryHeaderLength()-Error",
     496                          WinGetLastError (hab));
     497            return;
     498        }
     499#ifdef _DOLOGDEBUG_
     500        LogDebug( "SaveBitmapToFile(): xmmioQueryHeaderLength ok." );
     501#endif
     502
     503        MMIMAGEHEADER mmImgHdr;
     504        mmImgHdr.ulHeaderLength = ulImageHeaderLength;
     505        mmImgHdr.ulContentType  = MMIO_IMAGE_UNKNOWN;
     506        mmImgHdr.ulMediaType    = MMIO_MEDIATYPE_IMAGE;
     507
     508#ifdef _DOLOGDEBUG_
     509    LogDebug( "SaveBitmapToFile(): Before memcpy (colors)." );
     510#endif
     511        memcpy( mmImgHdr.bmiColors,
     512                PBYTE( &( pbfh2->bmp2 ) ) + sizeof( BITMAPINFOHEADER2 ),
     513                cbColtab );
     514
     515        mmImgHdr.mmXDIBHeader.XDIBHeaderPrefix.ulMemSize = cbBits; // FIXME;
     516        mmImgHdr.mmXDIBHeader.XDIBHeaderPrefix.ulPelFormat = 0; // FIXME;
     517        mmImgHdr.mmXDIBHeader.XDIBHeaderPrefix.usTransType = 0; // FIXME
     518        mmImgHdr.mmXDIBHeader.XDIBHeaderPrefix.ulTransVal = 0;  // FIXME
     519        memcpy( &(mmImgHdr.mmXDIBHeader.BMPInfoHeader2), &bih2, sizeof (BITMAPINFOHEADER2));
     520
     521#ifdef _DOLOGDEBUG_
     522    LogDebug( "SaveBitmapToFile(): Before xmmioSetHeader." );
     523#endif
     524        ULONG ulBytesRead;
     525        if( ( rc = (LONG)mmioSetHeader( hmmioTarget, (MMIMAGEHEADER*)&mmImgHdr,
     526                                         (LONG)sizeof( MMIMAGEHEADER ), (PLONG)&ulBytesRead,
     527                                         0L, 0L ) ) != MMIO_SUCCESS )
     528        {
     529            // Header unavailable.
     530            mmioClose( hmmioTarget, 0L );
     531            DisplayError ("mmioSetHeader()-Error",
     532                          "mmioSetHeader()-Error %ld", rc );
     533            return;
     534        }
     535#ifdef _DOLOGDEBUG_
     536        LogDebug( "SaveBitmapToFile(): xmmioSetHeader ok." );
     537#endif
     538
     539        // write the actual bitmap data bits
     540        if( ( rc = mmioWrite( hmmioTarget, (CHAR *) pb, cbBits ) ) == MMIO_ERROR )
     541            DisplayError ("mmioWrite()-Error",
     542                          "mmioWrite()-Error %ld", rc );
     543#ifdef _DOLOGDEBUG_
     544        LogDebug( "SaveBitmapToFile(): xmmioWrite ok." );
     545#endif
     546
     547        if( ( rc = mmioClose( hmmioTarget, 0 ) ) != MMIO_SUCCESS )
     548            DisplayError ("mmioClose()-Error",
     549                          "mmioClose()-Error %ld", rc );
     550#ifdef _DOLOGDEBUG_
     551        LogDebug( "SaveBitmapToFile(): xmmioClose ok." );
     552#endif
     553    } */
     554
    418555#ifdef _DOLOGDEBUG_
    419556    LogDebug( "SaveBitmapToFile(): Everything done, closed file" );
     
    432569#endif
    433570// ** SetEAs ************************************************************** /*FOLD00*/
    434 #if 0
     571
    435572BOOL SetEAs (PSZ psz)
    436573{
     
    484621    return TRUE;
    485622}
    486 #endif
     623
    487624// ** SelectSaveFile ****************************************************** /*FOLD00*/
    488625
    489 BOOL SelectSaveFile (char *title)
     626BOOL SelectSaveFile (VOID)
    490627{
    491628#ifdef _DOLOGMEM_
     
    496633    {
    497634        CHAR   ach[_MAX_PATH];
    498         for (USHORT i = 0; i < 100; i++)
     635        for (USHORT i = 0; i < 10000; i++)
    499636        {
    500             sprintf( ach, "%s\\%s%02d.%s", pset->QueryNumSaveDir(),
    501                     title, i, pset->GetFileExtension() );
     637            sprintf( ach, "%s\\got%05d.%s", pset->QueryNumSaveDir(), i,
     638                    pset->GetFileExtension() );
    502639            if (access (ach, 0) != 0)
    503640            {
  • /trunk/setgot.cmd

    r30 r20  
    11
    2 SET GOTMAJOR=2
    3 SET GOTMINOR=0
     2SET GOTMAJOR=1
     3SET GOTMINOR=80
    44SET GOTREVISION=0
    5 SET GOTFIXLEVEL=beta2
     5SET GOTFIXLEVEL=0
    66time > CLIP: < timetemp
    77input %%GOTBUILDDATE < CLIP:
  • /trunk/settings.cpp

    r30 r20  
    2727    // FIXME nls*/
    2828
    29 bool saveum = FALSE;
    3029SWP swpDef = { 0,0,0, 98,66, 0,0,0,0 };
    3130SWP swpDefSSW = { 0,0,0, 10,10, 0,0,0,0 };
     
    3332USHORT ausDefSSW[7] = { 0 };
    3433
     34#if 0
    3535ImageFormatInfo Settings::ifi[BMF_INVALID] =
    3636{
    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" }
     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" }
    4749};
    4850
     51#else
     52// pbm and gif don't save anything
     53ImageFormatInfo 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#endif
    4969
    5070PTHTH_SE apse[] =
     
    81101    new THTH_SEB (SEI_USSSW, "Snapshot", "US", &ausDefSSW, sizeof (ausDefSSW)),
    82102
    83     new THTH_SES (SEI_LANGUAGE,     "Language", "Program", PSZ_DEFAULTLANGUAGEMOD),
     103    new THTH_SES (SEI_LANGUAGE,     "Language", "Program", PSZ_DEFAULTLANGUAGE),
    84104    new THTH_SES (SEI_LANGUAGEHELP, "Language", "Help", PSZ_DEFAULTLANGUAGEHELP),
    85105
     
    92112
    93113Settings :: Settings (VOID) :
    94 #ifdef _QUIET_
    95 //#if 1
    96     ththSettings(apse, "gotchaq.ini", L_PROFILEVERSION)
    97 #else
    98     ththSettings(apse, "gotcha.ini", L_PROFILEVERSION)
    99 #endif
     114ththSettings(apse, "gotcha.ini", L_PROFILEVERSION)
    100115{
    101116    if( ! QueryFlag( SEI_UPDATE178DONE ) ) {
     
    120135        ReloadResources (QueryString(SEI_LANGUAGE));
    121136    }
     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    }
    122177}
    123178
     
    146201// FIXME YUKKI! YUKKI!! YUKKI!!! But I'm too lazy to do it better now :-)
    147202HWND g_hwndSettingsDialog = NULL;
    148 HWND g_hwndPage0 = NULL;
    149203
    150204BOOL SETTINGS :: Dialog (BOOL fOnlyLanguage)
     
    218272                        MPFROMLONG (idPage[i]), MPFROMP (pszPageTab[i]));
    219273        }
    220 #ifndef _QUIET_
    221 //#if 0
     274
    222275        // open and assign dialogs to pages
    223276        hwndPage[0] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page1Procedure,
     
    229282        hwndPage[3] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page4Procedure,
    230283                                  GETMODULE, ID_DLG_SETTINGSPAGE4, this);
    231 #else
    232         hwndPage[0] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) WindowProcedure,
    233                                   GETMODULE, ID_DLG_SETTINGSPAGE0, this);
    234         hwndPage[1] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page1Procedure,
    235                                   GETMODULE, ID_DLG_SETTINGSPAGE1, this);
    236         hwndPage[2] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page2Procedure,
    237                                   GETMODULE, ID_DLG_SETTINGSPAGE2, this);
    238         hwndPage[3] = WinLoadDlg (hwndNB, hwndNB, (PFNWP) Page4Procedure,
    239                                   GETMODULE, ID_DLG_SETTINGSPAGE4, this);
    240         g_hwndPage0 = hwndPage[0];
    241        
    242 #endif
    243284    }
    244285#ifdef _DOLOGDEBUG_
     
    261302    LogDebug( "Dialog: checkpoint 6" );
    262303#endif
    263     WinSendDlgItemMsg (g_hwndPage0, WID_RB_FILE, BM_CLICK,
    264                        MPFROMSHORT (TRUE), 0);
    265     WinSendDlgItemMsg (g_hwndPage0, WID_CB_HIDEWINDOW, BM_SETCHECK,
    266                        MPFROMLONG (TRUE), MPFROMLONG (0));
     304
    267305    //WinSetFocus (WinWindowFromID (hwndDlg, WID_PB_OK), TRUE);
    268306    //WinSetFocus( hwndPage[0], TRUE );
     
    324362            LogDebug( "DialogProcedure: start WID_PB_OK" );
    325363#endif
    326             saveum = TRUE;
    327364            WinSendMsg (hwnd, WM_CLOSE, 0,0);
    328365#ifdef _DOLOGDEBUG_
     
    343380                                           BKM_QUERYPAGEWINDOWHWND,
    344381                                           MPFROMLONG (id), 0);
    345                 // Make mp1 1 for default use it to select setting on pages
    346382                    WinSendMsg (hwndPage, UM_SETTINGS2DIALOG, 0,0);
    347383                }
     
    497533            WinSendDlgItemMsg( hwnd, WID_LB_FILEFORMAT, LM_SELECTITEM,
    498534                               MPFROMSHORT(0), MPFROMSHORT(TRUE) );
    499 #ifdef _QUIET_
    500 //#if 1
    501         // set play sound button
    502         pset->AdjustButton (hwnd, WID_CB_DOSOUND,
    503                             pset->DoSound ());
    504 #endif
     535
    505536        // Select appropriate radiobutton for save style.
    506537        switch (pset->QueryFileSaveStyle ())
     
    544575            else
    545576                pset->SetFileSaveStyle (FSS_PROMPT);
    546 #ifdef _QUIET_
    547 //#if 1
    548             pset->DoSound(WinQueryButtonCheckstate
    549                           (hwnd, WID_CB_DOSOUND));
    550 #endif
    551577#ifdef _DOLOGDEBUG_
    552578            LogDebug( "Page1Procedure: checkpoint 1" );
     
    580606            AdjustSaveTypeButtons
    581607                (BOOL (pset->QueryFileSaveStyle () == FSS_FORCEFILE));
    582             pset->saveStyle = pset->QuerySaveStyle ();
    583             pset->pNumSaveDir = pset->QueryNumSaveDir ();
    584             pset->pForceSaveFile = pset->QueryForceSaveFile();
    585 
    586             if (saveum)
    587                 pset->Save ();
    588608#ifdef _DOLOGDEBUG_
    589609            LogDebug( "Page1Procedure: end UM_ADJUST" );
     
    610630}
    611631
    612 // ** Page2Procedure ****************************************************** /*FOLD00*/
     632// ** Page2Procedure ****************************************************** /*fold00*/
    613633
    614634MRESULT EXPENTRY
     
    645665        pset->AdjustButton (hwnd, WID_CB_SSWALWAYSONTOP,
    646666                            pset->SSWAlwaysOnTop ());
    647 #ifdef _QUIET_
    648 //#if 1
    649         pset->AdjustButton (hwnd, WID_CB_SERIALCAPTURE,
    650                             pset->SerialCapture ());
    651         pset->AdjustButton (hwnd, WID_CB_DELAYCOUNTDOWN,
    652                             pset->DelayCountdown ());
    653 
    654         // init delay time sb
    655         WinSendDlgItemMsg (hwnd, WID_SB_DELAYTIME, SPBM_SETLIMITS,
    656                            MPFROMLONG (65536), MPFROMLONG (1));
    657         WinSendDlgItemMsg (hwnd, WID_SB_DELAYTIME, SPBM_SETCURRENTVALUE,
    658                            MPFROMLONG (pset->QueryDelayTime ()), 0);
    659 
    660         // init serial time sb
    661         WinSendDlgItemMsg (hwnd, WID_SB_SERIALTIME, SPBM_SETLIMITS,
    662                            MPFROMLONG (65536), MPFROMLONG (1));
    663         WinSendDlgItemMsg (hwnd, WID_SB_SERIALTIME, SPBM_SETCURRENTVALUE,
    664                            MPFROMLONG (pset->QuerySerialTime ()), 0);
    665 #endif
     667
    666668        switch (pset->QuerySSWCaptureType ())
    667669        {
     
    700702            LogDebug( "Page2Procedure: start UM_ADJUST" );
    701703#endif
    702 #ifndef _QUIET_
    703 //#if 0
    704704        // query state of checkbuttons and set flags
    705705        pset->SSWHide(WinQueryButtonCheckstate(hwnd, WID_CB_SSWHIDE));
     
    713713            LogDebug( "Page2Procedure: checkpoint 2" );
    714714#endif
    715 #else
    716             // query state of checkbuttons and set flags
    717             pset->SerialCapture(WinQueryButtonCheckstate
    718                                 (hwnd, WID_CB_SERIALCAPTURE));
    719 #ifdef _DOLOGDEBUG_
    720             LogDebug( "Page3Procedure: checkpoint 1" );
    721 #endif
    722             pset->DelayCountdown(WinQueryButtonCheckstate
    723                                  (hwnd, WID_CB_DELAYCOUNTDOWN));
    724 #endif
     715
    725716        // get ssw capture type
    726717        if (WinSendMsg (WinWindowFromID (hwnd, WID_SSWSCREENREGION),
     
    735726        else
    736727            pset->SetSSWCaptureType (CAP_SCREEN);
    737 #ifdef _QUIET_
    738 //#if 1
    739         // delay time
    740         ULONG   ul;
    741         if (! BOOL (WinSendDlgItemMsg (hwnd, WID_SB_DELAYTIME,
    742                                        SPBM_QUERYVALUE,
    743                                        MPFROMP (&ul),
    744                                        MPFROM2SHORT (0, 0))))
    745             ul = 5L;
    746         pset->SetDelayTime (ul);
    747 #ifdef _DOLOGDEBUG_
    748         LogDebug( "Page3Procedure: checkpoint 3" );
    749 #endif
    750 
    751         // serial time
    752         if (! BOOL (WinSendDlgItemMsg (hwnd, WID_SB_SERIALTIME,
    753                                        SPBM_QUERYVALUE,
    754                                        MPFROMP (&ul),
    755                                        MPFROM2SHORT (0, 0))))
    756             ul = 10L;
    757         pset->SetSerialTime (ul);
    758         pset->bSerialCapture = pset->SerialCapture ();
    759 #endif
    760         if (saveum)
    761             pset->Save ();
    762728#ifdef _DOLOGDEBUG_
    763729        LogDebug( "Page2Procedure: end UM_ADJUST" );
     
    876842                ul = 10L;
    877843            pset->SetSerialTime (ul);
    878             pset->bSerialCapture = pset->SerialCapture ();
    879             pset->idleSetInIni = pset->QueryFlag(SEI_IDLEPRIORITY);
    880 
    881             if (saveum)
    882                 pset->Save ();
    883844#ifdef _DOLOGDEBUG_
    884845            LogDebug( "Page3Procedure: end UM_ADJUST" );
     
    10581019                               MPFROM2SHORT (ul, sizeof (ach)), MPFROMP (ach));
    10591020            pset->SetString (SEI_LANGUAGEHELP, ach);
    1060 
    1061             if (saveum)
    1062                 pset->Save ();
    10631021        }
    10641022        return MRESULT (FALSE);
     
    10681026}
    10691027
    1070 // ** AdjustSaveTypeButtons *********************************************** /*FOLD00*/
     1028// ** AdjustSaveTypeButtons *********************************************** /*fold00*/
    10711029
    10721030VOID AdjustSaveTypeButtons (BOOL f)
     
    11211079    APIRET  rc;
    11221080
    1123     if ((rc = DosLoadModule(PSZ(NULL), 0, psz, &g_hmod)))
     1081    if ((rc = DosLoadModule(PSZ(NULL), 0, "gotresen.dll", &g_hmod)))
    11241082    {
    11251083        DisplayError("ERROR", "Could not (re)load Gotcha! resource module "
     
    11311089
    11321090    ResourceString::Module(g_hmod);
    1133 #ifdef _QUIET_
    1134 //#if 1
    1135     pszPageTab[0] = RSTR (IDS_MAINWIN);
    1136     pszPageTab[1] = RSTR (IDS_PAGESAVE);
    1137     pszPageTab[2] = RSTR (IDS_PAGEMISC);
    1138     pszPageTab[3] = RSTR (IDS_PAGELANGUAGE);
    1139 #else
     1091
    11401092    pszPageTab[0] = RSTR (IDS_PAGESAVE);
    11411093    pszPageTab[1] = RSTR (IDS_PAGESNAPSHOT);
    11421094    pszPageTab[2] = RSTR (IDS_PAGEMISC);
    11431095    pszPageTab[3] = RSTR (IDS_PAGELANGUAGE);
    1144 #endif
     1096
    11451097    for( int i = 0; i < BMF_INVALID; i++ ) {
    11461098        ifi[ i ].label = RSTR ( IDS_BMF_JPG+i ); }
     
    11491101}
    11501102
    1151 // ** SelectLanguage ****************************************************** /*FOLD00*/
     1103// ** SelectLanguage ****************************************************** /*fold00*/
    11521104
    11531105VOID Settings :: SelectLanguage (VOID)
     
    11551107    // set this to some default, as we must open the settings dialog for
    11561108    // selecting a language
    1157 #ifdef _QUIET_
    1158 //#if 1
    1159     pszPageTab[0] = RSTR (IDS_MAINWIN);
    1160     pszPageTab[1] = RSTR (IDS_PAGESAVE);
    1161     pszPageTab[2] = RSTR (IDS_PAGEMISC);
    1162     pszPageTab[3] = RSTR (IDS_PAGELANGUAGE);
    1163 #else
    11641109    pszPageTab[0] = RSTR (IDS_PAGESAVE);
    11651110    pszPageTab[1] = RSTR (IDS_PAGESNAPSHOT);
    11661111    pszPageTab[2] = RSTR (IDS_PAGEMISC);
    11671112    pszPageTab[3] = RSTR (IDS_PAGELANGUAGE);
    1168 #endif
     1113
    11691114    // bring up the "select language" settings page
    11701115    Dialog (TRUE);
     
    11861131    hdir = HDIR_CREATE;
    11871132    c    = 1;
    1188 #ifdef _QUIET_
    1189     rc   = DosFindFirst ("goqre*.dll", &hdir, fl, &findbuf,
     1133    rc   = DosFindFirst ("*.dll", &hdir, fl, &findbuf,
    11901134                         sizeof (findbuf), &c, FIL_STANDARD);
    1191 #else
    1192     rc   = DosFindFirst ("gotre*.dll", &hdir, fl, &findbuf,
    1193                          sizeof (findbuf), &c, FIL_STANDARD);
    1194 #endif
    11951135    while (!rc)
    11961136    {
     
    12311171}
    12321172
    1233 #if 0
    12341173// ** GetFOURCC *********************************************************** /*FOLD00*/
    12351174
     
    12421181    return 0L;
    12431182}
    1244 #endif
     1183
    12451184// ** GetFileEAType ******************************************************* /*FOLD00*/
    12461185
  • /trunk/settings.h

    r30 r20  
    2424
    2525#include "gotcha.h"
     26#include "mmio.h"
    2627#include "./settings/thth_settings.h"
    2728
     
    3435
    3536enum { SAVESTYLE_CLIPBOARD, SAVESTYLE_FILE, };
    36 
     37#if 0
     38enum {
     39    BMF_12, BMF_16, BMF_20, BMF_OS13, BMF_OS20, BMF_TIF, BMF_TIFU,
     40    BMF_TGA, BMF_PCX, BMF_GIF, BMF_JPG, BMF_DIB,
     41    BMF_INVALID
     42};
     43#else
    3744enum {
    3845    BMF_JPG, BMF_PNG, BMF_OS20, BMF_TIF, BMF_TGA, BMF_PCX, BMF_GIF,
    39     BMF_PBM, BMF_JP2, BMF_DIB,
     46    BMF_PBM, BMF_JP2, BMF_JBG, BMF_RAW, BMF_DIB,
    4047    BMF_INVALID
    4148};
    42 
     49#endif
    4350enum { FSS_PROMPT, FSS_NUMFILES, FSS_FORCEFILE, };
    4451
     
    4855    BOOL     available;
    4956    USHORT   type;
    50 //    FOURCC   fourcc;
     57    FOURCC   fourcc;
    5158    PSZ      label;
    5259    PSZ      extension;
     
    131138
    132139    PSZ    GetFileExtension( SHORT type = BMF_INVALID );
    133 //    FOURCC GetFOURCC( SHORT type = BMF_INVALID );
     140    FOURCC GetFOURCC( SHORT type = BMF_INVALID );
    134141    PSZ    GetFileEAType( SHORT type = BMF_INVALID );
    135142
    136     bool idleSetInIni;
    137     int saveStyle;
    138     PSZ pNumSaveDir;
    139     PSZ pForceSaveFile;
    140     bool bSerialCapture;
    141 //    BOOL           IsMMIOAvailable( VOID );
    142 //    class thth_MMIO      *GetMMIO( VOID );
     143    BOOL           IsMMIOAvailable( VOID );
     144    class thth_MMIO      *GetMMIO( VOID );
    143145
    144146protected:
     
    176178    static PSZ   pszPageTab[COUNT_PAGES];
    177179    BOOL   fAutoLanguage;
     180
     181    thth_MMIO    *mmio;
     182
    178183    HWND   hwndDlg;
    179184
     
    193198}
    194199
     200inline BOOL Settings :: IsMMIOAvailable( VOID )
     201{
     202    if( mmio ) return TRUE;
     203    return FALSE;
     204}
     205
     206thth_MMIO *Settings :: GetMMIO( VOID ) { return mmio; }
     207
    195208// ************************************************************************
    196209#endif
  • /trunk/version.h

    r30 r20  
    1818 ***/
    1919
    20 #define PSZ_VERSION_L1     "2"
    21 #define PSZ_VERSION_L2     PSZ_VERSION_L1".00"
     20#define PSZ_VERSION_L1     "1"
     21#define PSZ_VERSION_L2     PSZ_VERSION_L1".78"
    2222#define PSZ_VERSION_L3     PSZ_VERSION_L2""
    2323
    24 #define PSZ_NAMEVERSION    "Gotcha! 2.00"
     24#define PSZ_NAMEVERSION    "Gotcha! 1.78"
Note: See TracChangeset for help on using the changeset viewer.