Changeset 551 for trunk/dll/archive.c


Ignore:
Timestamp:
Feb 28, 2007, 2:33:51 AM (18 years ago)
Author:
Gregg Young
Message:

Indentation cleanup

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dll/archive.c

    r378 r551  
    3434#pragma alloc_text(FMARCHIVE,ArchiveDlgProc)
    3535
    36 MRESULT EXPENTRY ArchiveDlgProc (HWND hwnd,ULONG msg,MPARAM mp1,MPARAM mp2)
     36MRESULT EXPENTRY ArchiveDlgProc(HWND hwnd, ULONG msg, MPARAM mp1, MPARAM mp2)
    3737{
    38   DIRCNRDATA  *arcdata = NULL;
    39 
    40   switch(msg) {
    41     case WM_INITDLG:
    42       WinSetWindowPtr(hwnd,0,mp2);
    43       arcdata = (DIRCNRDATA *)mp2;
    44       WinSendDlgItemMsg(hwnd,ARCH_ARCNAME,EM_SETTEXTLIMIT,
    45                         MPFROM2SHORT(CCHMAXPATH,0),MPVOID);
    46       if(!arcdata->namecanchange) {
    47         WinSendDlgItemMsg(hwnd,ARCH_ARCNAME,EM_SETREADONLY,
    48                           MPFROM2SHORT(TRUE,0),MPVOID);
    49         WinEnableWindow(WinWindowFromID(hwnd,ARCH_FIND),FALSE);
    50         WinShowWindow(WinWindowFromID(hwnd,ARCH_FIND),FALSE);
    51       }
    52       WinSendDlgItemMsg(hwnd,ARCH_COMMAND,EM_SETTEXTLIMIT,
    53                         MPFROM2SHORT(256,0),MPVOID);
    54       WinSendDlgItemMsg(hwnd,ARCH_MASKS,EM_SETTEXTLIMIT,
    55                         MPFROM2SHORT(256,0),MPVOID);
    56       WinSetDlgItemText(hwnd,ARCH_ARCNAME,arcdata->arcname);
    57       if(arcdata->fmoving && arcdata->info->move) {
    58         WinSetDlgItemText(hwnd,ARCH_COMMAND,arcdata->info->move);
    59         WinSendDlgItemMsg(hwnd,ARCH_MOVE,BM_SETCHECK,
    60                           MPFROM2SHORT(TRUE,0),MPVOID);
    61       }
    62       else
    63         WinSetDlgItemText(hwnd,ARCH_COMMAND,arcdata->info->create);
    64       if(!arcdata->info->createrecurse)
    65         WinEnableWindow(WinWindowFromID(hwnd,ARCH_RECURSE),FALSE);
    66       if(!arcdata->info->move && !arcdata->info->movewdirs)
    67         WinEnableWindow(WinWindowFromID(hwnd,ARCH_MOVE),FALSE);
    68       if(!arcdata->info->createwdirs && !arcdata->info->movewdirs)
    69         WinEnableWindow(WinWindowFromID(hwnd,ARCH_INCLPATH),FALSE);
    70       *arcdata->command = 0;
    71       PosOverOkay(hwnd);
    72       break;
    73 
    74     case WM_ADJUSTWINDOWPOS:
    75       PostMsg(hwnd,UM_SETDIR,MPVOID,MPVOID);
    76       break;
    77 
    78     case UM_SETDIR:
    79       PaintRecessedWindow(WinWindowFromID(hwnd,ARCH_HELP),(HPS)0,FALSE,TRUE);
     38  DIRCNRDATA *arcdata = NULL;
     39
     40  switch (msg) {
     41  case WM_INITDLG:
     42    WinSetWindowPtr(hwnd, 0, mp2);
     43    arcdata = (DIRCNRDATA *) mp2;
     44    WinSendDlgItemMsg(hwnd, ARCH_ARCNAME, EM_SETTEXTLIMIT,
     45                      MPFROM2SHORT(CCHMAXPATH, 0), MPVOID);
     46    if (!arcdata->namecanchange) {
     47      WinSendDlgItemMsg(hwnd, ARCH_ARCNAME, EM_SETREADONLY,
     48                        MPFROM2SHORT(TRUE, 0), MPVOID);
     49      WinEnableWindow(WinWindowFromID(hwnd, ARCH_FIND), FALSE);
     50      WinShowWindow(WinWindowFromID(hwnd, ARCH_FIND), FALSE);
     51    }
     52    WinSendDlgItemMsg(hwnd, ARCH_COMMAND, EM_SETTEXTLIMIT,
     53                      MPFROM2SHORT(256, 0), MPVOID);
     54    WinSendDlgItemMsg(hwnd, ARCH_MASKS, EM_SETTEXTLIMIT,
     55                      MPFROM2SHORT(256, 0), MPVOID);
     56    WinSetDlgItemText(hwnd, ARCH_ARCNAME, arcdata->arcname);
     57    if (arcdata->fmoving && arcdata->info->move) {
     58      WinSetDlgItemText(hwnd, ARCH_COMMAND, arcdata->info->move);
     59      WinSendDlgItemMsg(hwnd, ARCH_MOVE, BM_SETCHECK,
     60                        MPFROM2SHORT(TRUE, 0), MPVOID);
     61    }
     62    else
     63      WinSetDlgItemText(hwnd, ARCH_COMMAND, arcdata->info->create);
     64    if (!arcdata->info->createrecurse)
     65      WinEnableWindow(WinWindowFromID(hwnd, ARCH_RECURSE), FALSE);
     66    if (!arcdata->info->move && !arcdata->info->movewdirs)
     67      WinEnableWindow(WinWindowFromID(hwnd, ARCH_MOVE), FALSE);
     68    if (!arcdata->info->createwdirs && !arcdata->info->movewdirs)
     69      WinEnableWindow(WinWindowFromID(hwnd, ARCH_INCLPATH), FALSE);
     70    *arcdata->command = 0;
     71    PosOverOkay(hwnd);
     72    break;
     73
     74  case WM_ADJUSTWINDOWPOS:
     75    PostMsg(hwnd, UM_SETDIR, MPVOID, MPVOID);
     76    break;
     77
     78  case UM_SETDIR:
     79    PaintRecessedWindow(WinWindowFromID(hwnd, ARCH_HELP), (HPS) 0, FALSE,
     80                        TRUE);
     81    return 0;
     82
     83  case WM_CONTROL:
     84    arcdata = (DIRCNRDATA *) WinQueryWindowPtr(hwnd, 0);
     85    switch (SHORT1FROMMP(mp1)) {
     86    case ARCH_ARCNAME:
     87      if (SHORT2FROMMP(mp1) == EN_KILLFOCUS)
     88        WinSetDlgItemText(hwnd, ARCH_HELP,
     89                          GetPString(IDS_ARCDEFAULTHELPTEXT));
     90      if (SHORT2FROMMP(mp1) == EN_SETFOCUS)
     91        WinSetDlgItemText(hwnd, ARCH_HELP,
     92                          GetPString(IDS_ARCARCNAMEHELPTEXT));
     93      break;
     94
     95    case ARCH_COMMAND:
     96      if (SHORT2FROMMP(mp1) == EN_KILLFOCUS)
     97        WinSetDlgItemText(hwnd, ARCH_HELP,
     98                          GetPString(IDS_ARCDEFAULTHELPTEXT));
     99      if (SHORT2FROMMP(mp1) == EN_SETFOCUS)
     100        WinSetDlgItemText(hwnd, ARCH_HELP, GetPString(IDS_ARCCMDHELPTEXT));
     101      break;
     102
     103    case ARCH_MASKS:
     104      if (SHORT2FROMMP(mp1) == EN_KILLFOCUS)
     105        WinSetDlgItemText(hwnd, ARCH_HELP,
     106                          GetPString(IDS_ARCDEFAULTHELPTEXT));
     107      if (SHORT2FROMMP(mp1) == EN_SETFOCUS)
     108        WinSetDlgItemText(hwnd, ARCH_HELP, GetPString(IDS_ARCMASKHELPTEXT));
     109
     110      break;
     111
     112    case ARCH_INCLPATH:
     113    case ARCH_RECURSE:
     114    case ARCH_MOVE:
     115      {
     116        BOOL fRecurse = FALSE, fMove = FALSE, fInclDirs = FALSE;
     117        CHAR *cmd;
     118
     119        if ((BOOL) WinSendDlgItemMsg(hwnd, ARCH_RECURSE, BM_QUERYCHECK,
     120                                     MPVOID, MPVOID)) {
     121          fRecurse = TRUE;
     122          if (SHORT1FROMMP(mp1) == ARCH_RECURSE) {
     123            if (arcdata->info->createrecurse && *arcdata->info->createrecurse) {
     124              fMove = FALSE;
     125              fInclDirs = FALSE;
     126              WinSendDlgItemMsg(hwnd, ARCH_INCLPATH, BM_SETCHECK,
     127                                MPVOID, MPVOID);
     128              WinSendDlgItemMsg(hwnd, ARCH_MOVE, BM_SETCHECK, MPVOID, MPVOID);
     129            }
     130            else {
     131              fRecurse = FALSE;
     132              WinSendDlgItemMsg(hwnd, ARCH_RECURSE, BM_SETCHECK,
     133                                MPVOID, MPVOID);
     134            }
     135          }
     136        }
     137        else
     138          fRecurse = FALSE;
     139        if ((BOOL) WinSendDlgItemMsg(hwnd, ARCH_MOVE, BM_QUERYCHECK,
     140                                     MPVOID, MPVOID)) {
     141          fMove = TRUE;
     142          fRecurse = FALSE;
     143          WinSendDlgItemMsg(hwnd, ARCH_RECURSE, BM_SETCHECK, MPVOID, MPVOID);
     144        }
     145        else
     146          fMove = FALSE;
     147        if ((BOOL) WinSendDlgItemMsg(hwnd, ARCH_INCLPATH, BM_QUERYCHECK,
     148                                     MPVOID, MPVOID)) {
     149          fInclDirs = TRUE;
     150          fRecurse = FALSE;
     151          WinSendDlgItemMsg(hwnd, ARCH_RECURSE, BM_SETCHECK, MPVOID, MPVOID);
     152        }
     153        else
     154          fInclDirs = FALSE;
     155        cmd = NULL;
     156        if (fMove) {
     157          if (fInclDirs || fRecurse)
     158            cmd = arcdata->info->movewdirs;
     159          else
     160            cmd = arcdata->info->move;
     161          if (!cmd || !*cmd)
     162            cmd = arcdata->info->move;
     163        }
     164        if (!cmd || !*cmd) {
     165          if (fInclDirs) {
     166            cmd = arcdata->info->createwdirs;
     167            if (!cmd || !*cmd)
     168              cmd = arcdata->info->createrecurse;
     169          }
     170          else if (fRecurse) {
     171            cmd = arcdata->info->createrecurse;
     172            if (!cmd || !*cmd)
     173              cmd = arcdata->info->createwdirs;
     174          }
     175          if (!cmd || !*cmd)
     176            cmd = arcdata->info->create;
     177        }
     178        if (cmd)
     179          WinSetDlgItemText(hwnd, ARCH_COMMAND, cmd);
     180      }
     181      break;
     182    }
     183    return 0;
     184
     185  case WM_COMMAND:
     186    arcdata = (DIRCNRDATA *) WinQueryWindowPtr(hwnd, 0);
     187    if (!arcdata) {
     188      Runtime_Error2(pszSrcFile, __LINE__, IDS_NODATATEXT);
    80189      return 0;
    81 
    82     case WM_CONTROL:
    83       arcdata = (DIRCNRDATA *)WinQueryWindowPtr(hwnd,0);
    84       switch(SHORT1FROMMP(mp1)) {
    85         case ARCH_ARCNAME:
    86           if(SHORT2FROMMP(mp1) == EN_KILLFOCUS)
    87             WinSetDlgItemText(hwnd,ARCH_HELP,
    88                               GetPString(IDS_ARCDEFAULTHELPTEXT));
    89           if(SHORT2FROMMP(mp1) == EN_SETFOCUS)
    90             WinSetDlgItemText(hwnd,ARCH_HELP,
    91                               GetPString(IDS_ARCARCNAMEHELPTEXT));
    92           break;
    93 
    94         case ARCH_COMMAND:
    95           if(SHORT2FROMMP(mp1) == EN_KILLFOCUS)
    96             WinSetDlgItemText(hwnd,ARCH_HELP,
    97                               GetPString(IDS_ARCDEFAULTHELPTEXT));
    98           if(SHORT2FROMMP(mp1) == EN_SETFOCUS)
    99             WinSetDlgItemText(hwnd,ARCH_HELP,
    100                               GetPString(IDS_ARCCMDHELPTEXT));
    101           break;
    102 
    103         case ARCH_MASKS:
    104           if(SHORT2FROMMP(mp1) == EN_KILLFOCUS)
    105             WinSetDlgItemText(hwnd,ARCH_HELP,
    106                               GetPString(IDS_ARCDEFAULTHELPTEXT));
    107           if(SHORT2FROMMP(mp1) == EN_SETFOCUS)
    108             WinSetDlgItemText(hwnd,ARCH_HELP,
    109                               GetPString(IDS_ARCMASKHELPTEXT));
    110 
    111           break;
    112 
    113         case ARCH_INCLPATH:
    114         case ARCH_RECURSE:
    115         case ARCH_MOVE:
    116           {
    117             BOOL fRecurse = FALSE,fMove = FALSE,fInclDirs = FALSE;
    118             CHAR *cmd;
    119 
    120             if((BOOL)WinSendDlgItemMsg(hwnd,ARCH_RECURSE,BM_QUERYCHECK,
    121                                           MPVOID,MPVOID)) {
    122               fRecurse = TRUE;
    123               if(SHORT1FROMMP(mp1) == ARCH_RECURSE) {
    124                 if(arcdata->info->createrecurse &&
    125                    *arcdata->info->createrecurse) {
    126                   fMove = FALSE;
    127                   fInclDirs = FALSE;
    128                   WinSendDlgItemMsg(hwnd,ARCH_INCLPATH,BM_SETCHECK,
    129                                     MPVOID,MPVOID);
    130                   WinSendDlgItemMsg(hwnd,ARCH_MOVE,BM_SETCHECK,MPVOID,MPVOID);
    131                 }
    132                 else {
    133                   fRecurse = FALSE;
    134                   WinSendDlgItemMsg(hwnd,ARCH_RECURSE,BM_SETCHECK,
    135                                     MPVOID,MPVOID);
    136                 }
    137               }
    138             }
    139             else
    140               fRecurse = FALSE;
    141             if((BOOL)WinSendDlgItemMsg(hwnd,ARCH_MOVE,BM_QUERYCHECK,
    142                                        MPVOID,MPVOID)) {
    143               fMove = TRUE;
    144               fRecurse = FALSE;
    145               WinSendDlgItemMsg(hwnd,ARCH_RECURSE,BM_SETCHECK,MPVOID,MPVOID);
    146             }
    147             else
    148               fMove = FALSE;
    149             if((BOOL)WinSendDlgItemMsg(hwnd,ARCH_INCLPATH,BM_QUERYCHECK,
    150                                           MPVOID,MPVOID)) {
    151               fInclDirs = TRUE;
    152               fRecurse = FALSE;
    153               WinSendDlgItemMsg(hwnd,ARCH_RECURSE,BM_SETCHECK,MPVOID,MPVOID);
    154             }
    155             else
    156               fInclDirs = FALSE;
    157             cmd = NULL;
    158             if(fMove) {
    159               if(fInclDirs || fRecurse)
    160                 cmd = arcdata->info->movewdirs;
    161               else
    162                 cmd = arcdata->info->move;
    163               if(!cmd || !*cmd)
    164                 cmd = arcdata->info->move;
    165             }
    166             if(!cmd || !*cmd) {
    167               if(fInclDirs) {
    168                 cmd = arcdata->info->createwdirs;
    169                 if(!cmd || !*cmd)
    170                   cmd = arcdata->info->createrecurse;
    171               }
    172               else if(fRecurse) {
    173                 cmd = arcdata->info->createrecurse;
    174                 if(!cmd || !*cmd)
    175                   cmd = arcdata->info->createwdirs;
    176               }
    177               if(!cmd || !*cmd)
    178                 cmd = arcdata->info->create;
    179             }
    180             if(cmd)
    181               WinSetDlgItemText(hwnd,ARCH_COMMAND,cmd);
    182           }
    183           break;
    184       }
    185       return 0;
    186 
    187     case WM_COMMAND:
    188       arcdata = (DIRCNRDATA *)WinQueryWindowPtr(hwnd,0);
    189       if(!arcdata) {
    190         Runtime_Error2(pszSrcFile, __LINE__, IDS_NODATATEXT);
    191         return 0;
    192       }
    193       switch(SHORT1FROMMP(mp1)) {
    194         case DID_CANCEL:
    195           WinDismissDlg(hwnd,0);
    196           break;
    197         case DID_OK:
    198           {
    199             CHAR s[CCHMAXPATH + 1];
    200 
    201             *s = 0;
    202             WinQueryDlgItemText(hwnd,ARCH_ARCNAME,CCHMAXPATH,s);
    203             bstrip(s);
    204             if(*s) {
    205               if(DosQueryPathInfo(s,
    206                                   FIL_QUERYFULLNAME,
    207                                   arcdata->arcname,
    208                                   CCHMAXPATH))
    209                 strcpy(arcdata->arcname,s);
    210               *s = 0;
    211               WinQueryDlgItemText(hwnd,
    212                                   ARCH_COMMAND,
    213                                   256,
    214                                   s);
    215               if(*s) {
    216                 strcpy(arcdata->command,s);
    217                 *s = 0;
    218                 WinQueryDlgItemText(hwnd,
    219                                     ARCH_MASKS,
    220                                     256,
    221                                     s);
    222                 *arcdata->mask.szMask = 0;
    223                 strcpy(arcdata->mask.szMask,s);
    224                 WinDismissDlg(hwnd,1);
    225                 break;
    226               }
    227             }
    228           }
    229           DosBeep(50,100);
    230           break;
    231 
    232         case IDM_HELP:
    233           if(hwndHelp)
    234             WinSendMsg(hwndHelp,
    235                        HM_DISPLAY_HELP,
    236                        MPFROM2SHORT(HELP_ARCHIVE,0),
    237                        MPFROMSHORT(HM_RESOURCEID));
    238           break;
    239 
    240         case ARCH_FIND:
    241           if(arcdata->namecanchange) {
    242 
    243             CHAR arcname[CCHMAXPATH],s[CCHMAXPATH],*p;
    244 
    245             *s = 0;
    246             WinQueryDlgItemText(hwnd,ARCH_ARCNAME,CCHMAXPATH,s);
    247             bstrip(s);
    248             if(DosQueryPathInfo(s,
    249                                 FIL_QUERYFULLNAME,
    250                                 arcname,
    251                                 CCHMAXPATH))
    252               strcpy(arcname,s);
    253             p = strrchr(arcname,'\\');
    254             if(p) {
    255               p++;
    256               p = strrchr(arcname,'.');
    257             }
    258             if(!p &&
    259                arcdata->info->ext &&
    260                *arcdata->info->ext) {
    261               strcat(arcname,"*.");
    262               strcat(arcname,arcdata->info->ext);
    263             }
    264             if(export_filename(hwnd,arcname,FALSE))
    265               WinSetDlgItemText(hwnd,ARCH_ARCNAME,arcname);
    266           }
    267           break;
    268 
    269         case ARCH_SEE:
    270           {
    271             CHAR s[1001],*p;
    272 
    273             *s = 0;
    274             WinQueryDlgItemText(hwnd,ARCH_COMMAND,256,s);
    275             bstrip(s);
    276             if(*s) {
    277               p = strchr(s,' ');
    278               if(p)
    279                 *p = 0;
    280               ExecOnList(hwnd,s,WINDOWED | SEPARATEKEEP | MAXIMIZED | PROMPT,
    281                          NULL,NULL,
    282                          GetPString(IDS_ARCEXECHELPTEXT));
    283             }
    284             else
    285               DosBeep(50,100);
    286           }
    287           break;
    288       }
    289       return 0;
    290 
    291     case WM_CLOSE:
    292       break;
     190    }
     191    switch (SHORT1FROMMP(mp1)) {
     192    case DID_CANCEL:
     193      WinDismissDlg(hwnd, 0);
     194      break;
     195    case DID_OK:
     196      {
     197        CHAR s[CCHMAXPATH + 1];
     198
     199        *s = 0;
     200        WinQueryDlgItemText(hwnd, ARCH_ARCNAME, CCHMAXPATH, s);
     201        bstrip(s);
     202        if (*s) {
     203          if (DosQueryPathInfo(s,
     204                               FIL_QUERYFULLNAME,
     205                               arcdata->arcname, CCHMAXPATH))
     206            strcpy(arcdata->arcname, s);
     207          *s = 0;
     208          WinQueryDlgItemText(hwnd, ARCH_COMMAND, 256, s);
     209          if (*s) {
     210            strcpy(arcdata->command, s);
     211            *s = 0;
     212            WinQueryDlgItemText(hwnd, ARCH_MASKS, 256, s);
     213            *arcdata->mask.szMask = 0;
     214            strcpy(arcdata->mask.szMask, s);
     215            WinDismissDlg(hwnd, 1);
     216            break;
     217          }
     218        }
     219      }
     220      DosBeep(50, 100);
     221      break;
     222
     223    case IDM_HELP:
     224      if (hwndHelp)
     225        WinSendMsg(hwndHelp,
     226                   HM_DISPLAY_HELP,
     227                   MPFROM2SHORT(HELP_ARCHIVE, 0), MPFROMSHORT(HM_RESOURCEID));
     228      break;
     229
     230    case ARCH_FIND:
     231      if (arcdata->namecanchange) {
     232
     233        CHAR arcname[CCHMAXPATH], s[CCHMAXPATH], *p;
     234
     235        *s = 0;
     236        WinQueryDlgItemText(hwnd, ARCH_ARCNAME, CCHMAXPATH, s);
     237        bstrip(s);
     238        if (DosQueryPathInfo(s, FIL_QUERYFULLNAME, arcname, CCHMAXPATH))
     239          strcpy(arcname, s);
     240        p = strrchr(arcname, '\\');
     241        if (p) {
     242          p++;
     243          p = strrchr(arcname, '.');
     244        }
     245        if (!p && arcdata->info->ext && *arcdata->info->ext) {
     246          strcat(arcname, "*.");
     247          strcat(arcname, arcdata->info->ext);
     248        }
     249        if (export_filename(hwnd, arcname, FALSE))
     250          WinSetDlgItemText(hwnd, ARCH_ARCNAME, arcname);
     251      }
     252      break;
     253
     254    case ARCH_SEE:
     255      {
     256        CHAR s[1001], *p;
     257
     258        *s = 0;
     259        WinQueryDlgItemText(hwnd, ARCH_COMMAND, 256, s);
     260        bstrip(s);
     261        if (*s) {
     262          p = strchr(s, ' ');
     263          if (p)
     264            *p = 0;
     265          ExecOnList(hwnd, s, WINDOWED | SEPARATEKEEP | MAXIMIZED | PROMPT,
     266                     NULL, NULL, GetPString(IDS_ARCEXECHELPTEXT));
     267        }
     268        else
     269          DosBeep(50, 100);
     270      }
     271      break;
     272    }
     273    return 0;
     274
     275  case WM_CLOSE:
     276    break;
    293277  }
    294   return WinDefDlgProc(hwnd,msg,mp1,mp2);
     278  return WinDefDlgProc(hwnd, msg, mp1, mp2);
    295279}
    296 
Note: See TracChangeset for help on using the changeset viewer.