- Timestamp:
- Aug 24, 2006, 6:49:19 AM (19 years ago)
- File:
-
- 1 edited
-
trunk/dll/collect.c (modified) (126 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/collect.c
r403 r444 25 25 27 Jul 06 SHL Avoid shutdown hang - pre3 typo 26 26 29 Jul 06 SHL Use xfgets_bstripcr 27 15 Aug 06 SHL Don't write garbage to CollectorFilter INI entry 28 15 Aug 06 SHL Rework SetMask args 29 18 Aug 06 SHL CollectorCnrWndProc: avoid freeing NULL pointer 27 30 28 31 ***********************************************************************/ … … 74 77 static USHORT lastid = 0; 75 78 76 switch (msg) 77 { 79 switch (msg) { 78 80 case WM_CREATE: 79 81 return CommonTextProc(hwnd, msg, mp1, mp2); … … 85 87 86 88 id = WinQueryWindowUShort(hwnd, QWS_ID); 87 switch (id) 88 { 89 switch (id) { 89 90 case DIR_SELECTED: 90 91 case DIR_VIEW: … … 96 97 if (hwndButtonPopup) 97 98 WinDestroyWindow(hwndButtonPopup); 98 if (id == lastid) 99 { 99 if (id == lastid) { 100 100 ULONG check; 101 101 … … 104 104 &check, 105 105 sizeof(check)); 106 if (check < timestamp + 500) 107 { 106 if (check < timestamp + 500) { 108 107 lastid = 0; 109 108 goto MenuAbort; … … 113 112 FM3ModHandle, 114 113 id); 115 if (hwndButtonPopup) 116 { 114 if (hwndButtonPopup) { 117 115 WinSetWindowUShort(hwndButtonPopup, 118 116 QWS_ID, … … 122 120 COLLECTOR_CNR), 123 121 QWL_USER); 124 if (id == DIR_VIEW) 125 { 126 if (dcd) 127 { 122 if (id == DIR_VIEW) { 123 if (dcd) { 128 124 SetViewMenu(hwndButtonPopup, 129 125 dcd -> flWindowAttr); … … 140 136 141 137 } 142 else if (id == DIR_SORT) 143 { 138 else if (id == DIR_SORT) { 144 139 if (dcd) 145 140 SetSortChecks(hwndButtonPopup, … … 159 154 ptl.y = -(swp.cy + 2); 160 155 } 161 else 162 { 156 else { 163 157 WinQueryWindowPos(hwnd, 164 158 &swp); … … 199 193 200 194 case WM_MENUEND: 201 if (hwndButtonPopup == (HWND)mp2) 202 { 195 if (hwndButtonPopup == (HWND)mp2) { 203 196 lastid = WinQueryWindowUShort((HWND)mp2, QWS_ID); 204 197 WinDestroyWindow(hwndButtonPopup); … … 208 201 ×tamp, 209 202 sizeof(timestamp)); 210 switch (lastid) 211 { 203 switch (lastid) { 212 204 case DIR_SELECTED: 213 205 case DIR_VIEW: … … 253 245 char *s = NULL; 254 246 255 if (fOtherHelp) 256 { 247 if (fOtherHelp) { 257 248 if ((!hwndBubble || 258 249 WinQueryWindowULong(hwndBubble, QWL_USER) != hwnd) && 259 250 !WinQueryCapture(HWND_DESKTOP)) 260 251 { 261 switch (id) 262 { 252 switch (id) { 263 253 case DIR_SELECTED: 264 254 s = GetPString(IDS_COLSELECTEDHELP); … … 285 275 } 286 276 } 287 switch (id) 288 { 277 switch (id) { 289 278 case DIR_FILTER: 290 279 case DIR_SORT: … … 304 293 305 294 id = WinQueryWindowUShort(hwnd, QWS_ID); 306 switch (id) 307 { 295 switch (id) { 308 296 case DIR_FILTER: 309 297 case DIR_SORT: … … 321 309 322 310 id = WinQueryWindowUShort(hwnd, QWS_ID); 323 switch (id) 324 { 311 switch (id) { 325 312 case DIR_VIEW: 326 313 case DIR_SORT: … … 351 338 case DM_DRAGLEAVE: 352 339 case DM_DROPHELP: 353 if (msg == DM_DRAGOVER) 354 { 355 if (!emphasized) 356 { 340 if (msg == DM_DRAGOVER) { 341 if (!emphasized) { 357 342 emphasized = TRUE; 358 343 DrawTargetEmphasis(hwnd, emphasized); 359 344 } 360 345 } 361 else 362 { 363 if (emphasized) 364 { 346 else { 347 if (emphasized) { 365 348 emphasized = FALSE; 366 349 DrawTargetEmphasis(hwnd, emphasized); … … 371 354 USHORT dcmd; 372 355 373 switch (msg) 374 { 356 switch (msg) { 375 357 case DM_DROP: 376 358 dcmd = CN_DROP; … … 399 381 MPARAM mp2) 400 382 { 401 switch (msg) 402 { 383 switch (msg) { 403 384 case UM_CONTAINERHWND: 404 385 return MRFROMLONG(WinWindowFromID(hwnd, COLLECTOR_CNR)); … … 432 413 433 414 hps = WinBeginPaint(hwnd, NULLHANDLE, NULL); 434 if (hps) 435 { 415 if (hps) { 436 416 WinQueryWindowRect(hwnd, &rcl); 437 417 WinFillRect(hps, &rcl, CLR_PALEGRAY); … … 444 424 case UM_SIZE: 445 425 case WM_SIZE: 446 if (msg == UM_SIZE) 447 { 426 if (msg == UM_SIZE) { 448 427 SWP swp; 449 428 … … 496 475 } 497 476 CommonTextPaint(hwnd, NULLHANDLE); 498 if (msg == UM_SIZE) 499 { 477 if (msg == UM_SIZE) { 500 478 WinSetWindowPos(WinQueryWindow(hwnd, QW_PARENT), HWND_TOP, 0, 0, 0, 0, 501 479 SWP_SHOW | SWP_ZORDER | SWP_ACTIVATE); … … 519 497 DIRCNRDATA *dcd; 520 498 521 switch (msg) 522 { 499 switch (msg) { 523 500 case WM_CREATE: 524 501 break; … … 529 506 case DM_DISCARDOBJECT: 530 507 dcd = INSTDATA(hwnd); 531 if (fFM2Deletes && dcd) 532 { 508 if (fFM2Deletes && dcd) { 533 509 LISTINFO *li; 534 510 CNRDRAGINFO cni; … … 537 513 cni.pDragInfo = (PDRAGINFO) mp1; 538 514 li = DoFileDrop(dcd -> hwndCnr, NULL, FALSE, MPVOID, MPFROMP(&cni)); 539 if (li) 540 { 515 if (li) { 541 516 li -> type = (fDefaultDeletePerm) ? IDM_PERMDELETE : IDM_DELETE; 542 517 if (!PostMsg(hwnd, UM_MASSACTION, MPFROMP(li), MPVOID)) … … 550 525 case UM_UPDATERECORDLIST: 551 526 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 552 if (dcd && mp1) 553 { 527 if (dcd && mp1) { 554 528 INT numentries = 0; 555 529 CHAR **list = (CHAR **) mp1; … … 564 538 case UM_SETUP: 565 539 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 566 if (dcd) 567 { 540 if (dcd) { 568 541 /* set unique id */ 569 542 WinSetWindowUShort(hwnd, … … 579 552 580 553 case UM_COMMAND: 581 if (mp1) 582 { 554 if (mp1) { 583 555 LISTINFO *li = (LISTINFO *) mp1; 584 556 585 switch (li -> type) 586 { 557 switch (li -> type) { 587 558 case IDM_DOITYOURSELF: 588 559 case IDM_APPENDTOCLIP: … … 621 592 DosError(FERR_DISABLEHARDERR); 622 593 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 623 if (dcd) 624 { 594 if (dcd) { 625 595 LISTINFO *li = (LISTINFO *) mp1; 626 596 INT x; … … 650 620 else { 651 621 pciFirst = pci; 652 for (x = 0; li -> list[x]; x++) 653 { 622 for (x = 0; li -> list[x]; x++) { 654 623 nm = 1L; 655 624 hdir = HDIR_CREATE; … … 688 657 pci = (PCNRITEM) pci -> rc.preccNextRecord; 689 658 } 690 else 691 { 659 else { 692 660 pciT = pci; 693 661 pci = (PCNRITEM) pci -> rc.preccNextRecord; … … 702 670 DosSleep(1L); 703 671 } 704 if (ulMaxFiles) 705 { 672 if (ulMaxFiles) { 706 673 memset(&ri, 0, sizeof(RECORDINSERT)); 707 674 ri.cb = sizeof(RECORDINSERT); … … 741 708 FILE *fp; 742 709 ULONG errs = 0L; 710 BOOL first = FALSE; 711 size_t c; 743 712 744 713 fp = _fsopen((CHAR *) mp1, "r", SH_DENYNO); 745 714 if (fp) { 746 715 while (!feof(fp)) { 747 if (!xfgets_bstripcr(fullname, sizeof(fullname), fp,pszSrcFile, __LINE__)) 716 // Avoid too much noise if collecting from binary file - oops 717 if (!fgets(fullname, sizeof(fullname), fp)) { 718 if (ferror(fp)) 719 Runtime_Error(pszSrcFile, __LINE__, "fgets"); 748 720 break; 749 if (*fullname == '\"') { 750 memmove(fullname, fullname + 1, strlen(fullname) + 1); 751 lstrip(fullname); 752 p = strchr(fullname, '\"'); 753 if (p) 754 *p = 0; 755 rstrip(fullname); 756 } 721 } 722 723 c = strlen(fullname); 724 if (c + 1 >= sizeof(fullname)) 725 errs++; 726 else if (!c || (fullname[c-1] != '\n' && fullname[c-1] != '\r')) 727 errs++; 757 728 else { 758 p = strchr(fullname, ' '); 759 if (p) 760 *p = 0; 761 } 762 /* fullname now contains name of file to collect */ 763 DosError(FERR_DISABLEHARDERR); 764 if (IsFullName(fullname) && 765 !IsRoot(fullname) && 766 !DosQueryPathInfo(fullname, 767 FIL_QUERYEASIZE, 768 &fs4, 769 sizeof(fs4)) && 770 !FindCnrRecord(dcd -> hwndCnr, 771 fullname, 772 NULL, 773 FALSE, 774 FALSE, 775 TRUE)) 776 { 777 /* collect it */ 778 pci = WinSendMsg(dcd -> hwndCnr, 779 CM_ALLOCRECORD, 780 MPFROMLONG(EXTRA_RECORD_BYTES), 781 MPFROMLONG(1L)); 782 if (pci) 729 bstripcr(fullname); 730 731 if (*fullname == '\"') { 732 memmove(fullname, fullname + 1, strlen(fullname) + 1); 733 lstrip(fullname); 734 p = strchr(fullname, '\"'); 735 if (p) 736 *p = 0; 737 rstrip(fullname); 738 } 739 else { 740 p = strchr(fullname, ' '); 741 if (p) 742 *p = 0; 743 } 744 /* fullname now contains name of file to collect */ 745 DosError(FERR_DISABLEHARDERR); 746 if (IsFullName(fullname) && 747 !IsRoot(fullname) && 748 !DosQueryPathInfo(fullname, 749 FIL_QUERYEASIZE, 750 &fs4, 751 sizeof(fs4)) && 752 !FindCnrRecord(dcd -> hwndCnr, 753 fullname, 754 NULL, 755 FALSE, 756 FALSE, 757 TRUE)) 783 758 { 784 dcd -> ullTotalBytes += FillInRecordFromFSA(dcd -> hwndCnr, pci, 785 fullname, 786 &fs4, FALSE, dcd); 787 memset(&ri, 0, sizeof(RECORDINSERT)); 788 ri.cb = sizeof(RECORDINSERT); 789 ri.pRecordOrder = (PRECORDCORE) CMA_END; 790 ri.pRecordParent = (PRECORDCORE) 0; 791 ri.zOrder = (ULONG) CMA_TOP; 792 ri.cRecordsInsert = 1L; 793 ri.fInvalidateRecord = TRUE; 794 WinSendMsg(dcd -> hwndCnr, CM_INSERTRECORD, 795 MPFROMP(pci), MPFROMP(&ri)); 796 } 797 } 798 else 799 { 800 errs++; 801 if (errs > 50L) 802 { /* prevent runaway on bad file */ 803 804 APIRET ret; 805 806 ret = saymsg(MB_YESNO, dcd -> hwndCnr, 807 GetPString(IDS_COLLECTNOLISTHDRTEXT), 808 GetPString(IDS_COLLECTNOLISTTEXT), 809 (CHAR *) mp1); 810 if (ret == MBID_NO) 811 break; 812 errs = 0L; 813 } 814 } 815 } 759 /* collect it */ 760 pci = WinSendMsg(dcd -> hwndCnr, 761 CM_ALLOCRECORD, 762 MPFROMLONG(EXTRA_RECORD_BYTES), 763 MPFROMLONG(1L)); 764 if (pci) { 765 dcd -> ullTotalBytes += FillInRecordFromFSA(dcd -> hwndCnr, pci, 766 fullname, 767 &fs4, FALSE, dcd); 768 memset(&ri, 0, sizeof(RECORDINSERT)); 769 ri.cb = sizeof(RECORDINSERT); 770 ri.pRecordOrder = (PRECORDCORE) CMA_END; 771 ri.pRecordParent = (PRECORDCORE) 0; 772 ri.zOrder = (ULONG) CMA_TOP; 773 ri.cRecordsInsert = 1L; 774 ri.fInvalidateRecord = TRUE; 775 WinSendMsg(dcd -> hwndCnr, CM_INSERTRECORD, 776 MPFROMP(pci), MPFROMP(&ri)); 777 } 778 } 779 else 780 errs++; 781 } 782 if (errs > (first ? 0 : 50)) { 783 /* prevent runaway on bad file */ 784 APIRET ret = saymsg(MB_YESNO, dcd -> hwndCnr, 785 GetPString(IDS_COLLECTNOLISTHDRTEXT), 786 GetPString(IDS_COLLECTNOLISTTEXT), 787 (CHAR *)mp1); 788 if (ret == MBID_NO) 789 break; 790 if (!first) 791 errs = 0; 792 else 793 first = FALSE; 794 } 795 } // while not eof 816 796 fclose(fp); 817 797 } … … 822 802 case UM_SELECT: 823 803 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 824 if (dcd) 825 { 826 switch (SHORT1FROMMP(mp1)) 827 { 804 if (dcd) { 805 switch (SHORT1FROMMP(mp1)) { 828 806 case IDM_SELECTLIST: 829 807 { … … 841 819 pp = filename; 842 820 p = strrchr(pp, '.'); 843 if (p && *(p + 1) && p > pp + 1) 844 { 821 if (p && *(p + 1) && p > pp + 1) { 845 822 if (pp > filename) 846 823 pp++; … … 906 883 907 884 list = ListFromClipboard(hwnd); 908 if (list) 909 { 885 if (list) { 910 886 SelectList(dcd -> hwndCnr, TRUE, FALSE, 911 887 (SHORT1FROMMP(mp1) == IDM_DESELECTCLIP), … … 924 900 925 901 case UM_MASSACTION: 926 if (mp1) 927 { 902 if (mp1) { 928 903 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 929 if (dcd) 930 { 931 WORKER *wk; 932 933 wk = xmallocz(sizeof(WORKER),pszSrcFile,__LINE__); 934 if (!wk) { 935 FreeListInfo((LISTINFO *) mp1); 936 } 937 else { 938 wk -> size = sizeof(WORKER); 939 wk -> hwndCnr = dcd -> hwndCnr; 940 wk -> hwndParent = dcd -> hwndParent; 941 wk -> hwndFrame = dcd -> hwndFrame; 942 wk -> hwndClient = dcd -> hwndClient; 943 wk -> li = (LISTINFO *) mp1; 944 strcpy(wk -> directory, dcd -> directory); 945 if (_beginthread(MassAction, NULL, 122880, (PVOID) wk) == -1) 946 { 947 Runtime_Error(pszSrcFile, __LINE__, GetPString(IDS_COULDNTSTARTTHREADTEXT)); 948 free(wk); 949 FreeListInfo((LISTINFO *) mp1); 950 } 951 } 952 } 953 } 954 return 0; 955 956 case UM_ACTION: 957 if (mp1) 958 { 959 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 960 if (dcd) 961 { 904 if (dcd) { 962 905 WORKER *wk; 963 906 … … 973 916 wk -> li = (LISTINFO *) mp1; 974 917 strcpy(wk -> directory, dcd -> directory); 975 if (_beginthread(Action, NULL, 122880, (PVOID) wk) == -1) 976 { 977 Runtime_Error(pszSrcFile, __LINE__, GetPString(IDS_COULDNTSTARTTHREADTEXT)); 918 if (_beginthread(MassAction, NULL, 122880, (PVOID) wk) == -1) { 919 Runtime_Error(pszSrcFile, __LINE__, GetPString(IDS_COULDNTSTARTTHREADTEXT)); 920 free(wk); 921 FreeListInfo((LISTINFO *) mp1); 922 } 923 } 924 } 925 } 926 return 0; 927 928 case UM_ACTION: 929 if (mp1) { 930 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 931 if (dcd) { 932 WORKER *wk; 933 934 wk = xmallocz(sizeof(WORKER),pszSrcFile,__LINE__); 935 if (!wk) 936 FreeListInfo((LISTINFO *) mp1); 937 else { 938 wk -> size = sizeof(WORKER); 939 wk -> hwndCnr = dcd -> hwndCnr; 940 wk -> hwndParent = dcd -> hwndParent; 941 wk -> hwndFrame = dcd -> hwndFrame; 942 wk -> hwndClient = dcd -> hwndClient; 943 wk -> li = (LISTINFO *) mp1; 944 strcpy(wk -> directory, dcd -> directory); 945 if (_beginthread(Action, NULL, 122880, (PVOID) wk) == -1) { 946 Runtime_Error(pszSrcFile, __LINE__, GetPString(IDS_COULDNTSTARTTHREADTEXT)); 978 947 free(wk); 979 948 FreeListInfo((LISTINFO *) mp1); … … 990 959 case WM_DESTROY: 991 960 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 992 if (dcd) 993 { 994 INT x = 0; 995 961 if (dcd) { 962 INT x; 996 963 dcd -> stopflag = 1; 997 964 // Allow rescan logic to quiesce 998 while (x++ < 10 && dcd -> amextracted)965 for (x = 0; x < 10 && dcd -> amextracted;x++) 999 966 DosSleep(250L); 1000 967 WinSendMsg(dcd -> hwndCnr, UM_CLOSE, MPVOID, MPVOID); … … 1017 984 static INT savedSortFlags; 1018 985 1019 switch (msg) 1020 { 986 switch (msg) { 1021 987 case DM_PRINTOBJECT: 1022 988 return MRFROMLONG(DRR_TARGET); … … 1032 998 if (SHORT1FROMMP(mp1) & KC_KEYUP) 1033 999 return (MRESULT) TRUE; 1034 if (SHORT1FROMMP(mp1) & KC_VIRTUALKEY) 1035 { 1036 switch (SHORT2FROMMP(mp2)) 1037 { 1000 if (SHORT1FROMMP(mp1) & KC_VIRTUALKEY) { 1001 switch (SHORT2FROMMP(mp2)) { 1038 1002 case VK_DELETE: 1039 1003 if ((shiftstate & KC_CTRL) == KC_CTRL) … … 1048 1012 if (shiftstate || fNoSearch) 1049 1013 break; 1050 if (SHORT1FROMMP(mp1) & KC_CHAR) 1051 { 1014 if (SHORT1FROMMP(mp1) & KC_CHAR) { 1052 1015 ULONG thistime, len; 1053 1016 SEARCHSTRING srch; … … 1056 1019 if (!dcd) 1057 1020 break; 1058 switch (SHORT1FROMMP(mp2)) 1059 { 1021 switch (SHORT1FROMMP(mp2)) { 1060 1022 case '\x1b': 1061 1023 case '\r': … … 1073 1035 KbdRetry: 1074 1036 len = strlen(dcd -> szCommonName); 1075 if (len >= CCHMAXPATH - 1) 1076 { 1037 if (len >= CCHMAXPATH - 1) { 1077 1038 *dcd -> szCommonName = 0; 1078 1039 len = 0; … … 1088 1049 pci = WinSendMsg(hwnd, CM_SEARCHSTRING, MPFROMP(&srch), 1089 1050 MPFROMLONG(CMA_FIRST)); 1090 if (pci && (INT) pci != -1) 1091 { 1051 if (pci && (INT) pci != -1) { 1092 1052 USHORT attrib = CRA_CURSORED; 1093 1053 … … 1101 1061 return (MRESULT) TRUE; 1102 1062 } 1103 else 1104 { 1105 if (SHORT1FROMMP(mp2) == ' ') 1106 { 1063 else { 1064 if (SHORT1FROMMP(mp2) == ' ') { 1107 1065 dcd -> szCommonName[len] = 0; 1108 1066 break; … … 1148 1106 1149 1107 case UM_COMPARE: 1150 if (dcd && mp1 && mp2) 1151 { 1108 if (dcd && mp1 && mp2) { 1152 1109 COMPARE *cmp; 1153 1110 CHAR *leftdir = (CHAR *) mp1, *rightdir = (CHAR *) mp2; 1154 1111 1155 if (!IsFile(leftdir) && !IsFile(rightdir)) 1156 { 1112 if (!IsFile(leftdir) && !IsFile(rightdir)) { 1157 1113 cmp = xmallocz(sizeof(COMPARE),pszSrcFile,__LINE__); 1158 if (cmp) 1159 { 1114 if (cmp) { 1160 1115 cmp -> size = sizeof(COMPARE); 1161 1116 strcpy(cmp -> leftdir, leftdir); … … 1176 1131 1177 1132 case UM_UPDATERECORD: 1178 if (dcd && mp1) 1179 { 1133 if (dcd && mp1) { 1180 1134 CHAR *filename; 1181 1135 … … 1190 1144 * put name of our window on status line 1191 1145 */ 1192 if (dcd && hwndStatus && mp2) 1193 { 1146 if (dcd && hwndStatus && mp2) { 1194 1147 PCNRITEM pci = NULL; 1195 1148 1196 if (fAutoView && hwndMain) 1197 { 1149 if (fAutoView && hwndMain) { 1198 1150 pci = WinSendMsg(hwnd, 1199 1151 CM_QUERYRECORDEMPHASIS, … … 1223 1175 1224 1176 case UM_RESCAN: 1225 if (dcd) 1226 { 1177 if (dcd) { 1227 1178 CNRINFO cnri; 1228 1179 CHAR s[CCHMAXPATH + 69], tb[81], tf[81], *p; … … 1247 1198 dcd -> hwndFrame == WinQueryActiveWindow(dcd -> hwndParent)) 1248 1199 { 1249 if (hwndMain) 1250 { 1200 if (hwndMain) { 1251 1201 pci = WinSendMsg(hwnd, CM_QUERYRECORDEMPHASIS, 1252 1202 MPFROMLONG(CMA_FIRST), … … 1274 1224 MPFROMLONG(CMA_FIRST), 1275 1225 MPFROMSHORT(CRA_CURSORED)); 1276 if (pci && (INT) pci != -1) 1277 { 1226 if (pci && (INT) pci != -1) { 1278 1227 BOOL fStatus2Used = FALSE; 1279 if (fSplitStatus && hwndStatus2) 1280 { 1228 if (fSplitStatus && hwndStatus2) { 1281 1229 if (pci -> attrFile & FILE_DIRECTORY) 1282 1230 p = pci -> pszFileName; 1283 else 1284 { 1231 else { 1285 1232 p = strrchr(pci -> szFileName, '\\'); 1286 if (p) 1287 { 1233 if (p) { 1288 1234 if (*(p + 1)) 1289 1235 p++; … … 1295 1241 } 1296 1242 CommaFmtULL(tb, sizeof(tb), pci -> cbFile + pci -> easize, ' '); 1297 if (!fMoreButtons) 1298 { 1243 if (!fMoreButtons) { 1299 1244 sprintf(s, " %s %04u/%02u/%02u %02u:%02u:%02u [%s] %s", 1300 1245 tb, pci -> date.year, pci -> date.month, … … 1302 1247 pci -> time.seconds, pci -> pszDispAttr, p); 1303 1248 } 1304 else 1305 { 1249 else { 1306 1250 if (pci -> cbFile + pci -> easize > 1024) 1307 1251 CommaFmtULL(tf, sizeof(tf), pci -> cbFile + pci -> easize, 'K'); … … 1317 1261 fStatus2Used = TRUE; 1318 1262 } 1319 if (fMoreButtons) 1320 { 1263 if (fMoreButtons) { 1321 1264 WinSetWindowText(hwndName, pci -> pszFileName); 1322 1265 sprintf(s, "%04u/%02u/%02u %02u:%02u:%02u", … … 1330 1273 WinSetWindowText(hwndStatus2, GetPString(IDS_INSEEKSCANTEXT)); // Say working 1331 1274 } 1332 else 1333 { 1275 else { 1334 1276 if (hwndStatus2) 1335 1277 WinSetWindowText(hwndStatus2, NullStr); 1336 if (fMoreButtons) 1337 { 1278 if (fMoreButtons) { 1338 1279 WinSetWindowText(hwndName, NullStr); 1339 1280 WinSetWindowText(hwndDate, NullStr); … … 1363 1304 MPVOID, 1364 1305 MPVOID); 1365 if (dcd) 1366 { 1306 if (dcd) { 1367 1307 dcd -> stopflag = 0; 1368 1308 dcd -> amextracted = FALSE; // Say not scanning 1369 if (dcd -> namecanchange) 1370 { 1309 if (dcd -> namecanchange) { 1371 1310 if (!PostMsg(hwnd, 1372 1311 WM_CLOSE, … … 1391 1330 1392 1331 case UM_SETUP: 1393 if (dcd) 1394 { 1395 if (!dcd -> hwndObject) 1396 { 1332 if (dcd) { 1333 if (!dcd -> hwndObject) { 1397 1334 /* 1398 1335 * first time through -- set things up … … 1423 1360 cnri.pSortRecord = (PVOID) SortCollectorCnr; 1424 1361 1362 size = sizeof(ULONG); 1363 PrfQueryProfileData(fmprof, appname, "CollectorflWindowAttr", 1364 (PVOID) & cnri.flWindowAttr, &size); 1365 size = sizeof(MASK); 1366 if (PrfQueryProfileSize(fmprof, appname, "CollectorFilter", &size) && 1367 size) 1425 1368 { 1426 size = sizeof(ULONG); 1427 PrfQueryProfileData(fmprof, appname, "CollectorflWindowAttr", 1428 (PVOID) & cnri.flWindowAttr, &size); 1429 size = sizeof(MASK); 1430 if (PrfQueryProfileSize(fmprof, appname, "CollectorFilter", &size) && 1431 size) 1432 { 1433 PrfQueryProfileData(fmprof, appname, "CollectorFilter", &dcd -> mask, 1434 &size); 1435 SetMask(dcd -> mask.szMask, &dcd -> mask); 1436 } 1437 else 1438 { 1439 dcd -> mask.attrFile = (FILE_NORMAL | FILE_READONLY | 1440 FILE_DIRECTORY | FILE_HIDDEN | 1441 FILE_SYSTEM | FILE_ARCHIVED); 1442 dcd -> mask.antiattr = 0; 1443 } 1444 *(dcd -> mask.prompt) = 0; 1445 } 1369 PrfQueryProfileData(fmprof, appname, "CollectorFilter", &dcd -> mask, 1370 &size); 1371 SetMask(NULL, &dcd -> mask); 1372 } 1373 else { 1374 dcd -> mask.attrFile = (FILE_NORMAL | FILE_READONLY | 1375 FILE_DIRECTORY | FILE_HIDDEN | 1376 FILE_SYSTEM | FILE_ARCHIVED); 1377 dcd -> mask.antiattr = 0; 1378 } 1379 1380 *(dcd -> mask.prompt) = 0; 1381 1446 1382 cnri.flWindowAttr |= CV_FLOW; 1447 1383 cnri.flWindowAttr &= (~(CA_MIXEDTARGETEMPH | CA_ORDEREDTARGETEMPH)); … … 1463 1399 MPFROMLONG(CMA_XVERTSPLITBAR)); 1464 1400 1465 if (_beginthread(MakeObjWin, NULL, 245760, (PVOID) dcd) == -1) 1466 { 1467 Runtime_Error(pszSrcFile, __LINE__, GetPString(IDS_COULDNTSTARTTHREADTEXT)); 1401 if (_beginthread(MakeObjWin, NULL, 245760, (PVOID) dcd) == -1) { 1402 Runtime_Error(pszSrcFile, __LINE__, GetPString(IDS_COULDNTSTARTTHREADTEXT)); 1468 1403 PostMsg(hwnd, WM_CLOSE, MPVOID, MPVOID); 1469 1404 return 0; … … 1479 1414 DIR_VIEW), dcd -> flWindowAttr); 1480 1415 } 1481 else 1482 { 1416 else { 1483 1417 PostMsg(hwnd, WM_CLOSE, MPVOID, MPVOID); 1484 1418 return 0; … … 1487 1421 1488 1422 case WM_MENUEND: 1489 if (dcd) 1490 { 1423 if (dcd) { 1491 1424 HWND hwndMenu = (HWND)mp2; 1492 1425 … … 1495 1428 { 1496 1429 MarkAll(hwnd, TRUE, FALSE, TRUE); 1497 if (dcd -> cnremphasized) 1498 { 1430 if (dcd -> cnremphasized) { 1499 1431 WinSendMsg(hwnd, CM_SETRECORDEMPHASIS, MPVOID, 1500 1432 MPFROM2SHORT(FALSE, CRA_SOURCE)); … … 1506 1438 1507 1439 case UM_OPENWINDOWFORME: 1508 if (dcd) 1509 { 1440 if (dcd) { 1510 1441 if (mp1 && 1511 1442 !IsFile((CHAR *) mp1)) … … 1526 1457 1527 1458 case MM_PORTHOLEINIT: 1528 if (dcd) 1529 { 1530 switch (SHORT1FROMMP(mp1)) 1531 { 1459 if (dcd) { 1460 switch (SHORT1FROMMP(mp1)) { 1532 1461 case 0: 1533 1462 case 1: … … 1546 1475 case UM_INITMENU: 1547 1476 case WM_INITMENU: 1548 if (dcd) 1549 { 1550 switch (SHORT1FROMMP(mp1)) 1551 { 1477 if (dcd) { 1478 switch (SHORT1FROMMP(mp1)) { 1552 1479 case IDM_VIEWSMENU: 1553 1480 SetViewMenu((HWND)mp2, dcd -> flWindowAttr); … … 1575 1502 1576 1503 case UM_COLLECTFROMFILE: 1577 if (mp1) 1578 { 1579 if (dcd) 1580 { 1581 if (!PostMsg(dcd -> hwndObject, UM_COLLECTFROMFILE, mp1, mp2)) 1582 { 1583 Runtime_Error(pszSrcFile, __LINE__, "PostMsg"); 1504 if (mp1) { 1505 if (!dcd) { 1506 free(mp1); 1507 Runtime_Error2(pszSrcFile, __LINE__, IDS_NODATATEXT); 1508 } 1509 else { 1510 if (!PostMsg(dcd -> hwndObject, UM_COLLECTFROMFILE, mp1, mp2)) { 1511 Runtime_Error(pszSrcFile, __LINE__, "PostMsg"); 1584 1512 free(mp1); 1585 1513 } 1586 1514 } 1587 else 1588 free(mp1); 1589 } 1590 else 1591 free(mp1); 1515 } 1592 1516 return 0; 1593 1517 1594 1518 case UM_COMMAND: 1595 if (mp1) 1596 { 1597 if (dcd) 1598 { 1599 if (!PostMsg(dcd -> hwndObject, UM_COMMAND, mp1, mp2)) 1600 { 1601 Runtime_Error(pszSrcFile, __LINE__, "PostMsg"); 1519 if (mp1) { 1520 if (dcd) { 1521 if (!PostMsg(dcd -> hwndObject, UM_COMMAND, mp1, mp2)) { 1522 Runtime_Error(pszSrcFile, __LINE__, "PostMsg"); 1602 1523 FreeListInfo((LISTINFO *) mp1); 1603 1524 } … … 1617 1538 case WM_COMMAND: 1618 1539 DosError(FERR_DISABLEHARDERR); 1619 if (dcd) 1620 { 1621 switch (SHORT1FROMMP(mp1)) 1622 { 1540 if (dcd) { 1541 switch (SHORT1FROMMP(mp1)) { 1623 1542 case IDM_SETTARGET: 1624 1543 SetTargetDir(hwnd, FALSE); … … 1642 1561 MPFROMLONG(CMA_FIRST), 1643 1562 MPFROMSHORT(CRA_CURSORED)); 1644 if (pci && (INT) pci != -1) 1645 { 1563 if (pci && (INT) pci != -1) { 1646 1564 static CHAR dirname[CCHMAXPATH]; 1647 1565 … … 1679 1597 MPFROMLONG(CMA_FIRST), 1680 1598 MPFROMSHORT(CRA_CURSORED)); 1681 if (pci && (INT) pci != -1) 1682 { 1599 if (pci && (INT) pci != -1) { 1683 1600 WinQueryWindowPos(dcd -> hwndFrame, &swp); 1684 1601 DefaultViewKeys(hwnd, dcd -> hwndFrame, dcd -> hwndParent, &swp, … … 1706 1623 pp = filename; 1707 1624 p = strrchr(pp, '.'); 1708 if (p && *(p + 1) && p > pp + 1) 1709 { 1625 if (p && *(p + 1) && p > pp + 1) { 1710 1626 if (pp > filename) 1711 1627 pp++; … … 1715 1631 memmove(pp, p, strlen(p) + 1); 1716 1632 } 1717 if (insert_filename(hwnd, filename, FALSE, FALSE)) 1718 { 1633 if (insert_filename(hwnd, filename, FALSE, FALSE)) { 1719 1634 p = xstrdup(filename,pszSrcFile,__LINE__); 1720 if (p) 1721 { 1635 if (p) { 1722 1636 if (!PostMsg(hwnd, UM_COLLECTFROMFILE, MPFROMP(p), MPVOID)) 1723 1637 free(p); … … 1763 1677 case IDM_SORTDIRSLAST: 1764 1678 case IDM_SORTREVERSE: 1765 switch (SHORT1FROMMP(mp1)) 1766 { 1679 switch (SHORT1FROMMP(mp1)) { 1767 1680 case IDM_SORTSUBJECT: 1768 1681 CollectorsortFlags |= SORT_SUBJECT; … … 1802 1715 if (CollectorsortFlags & SORT_DIRSFIRST) 1803 1716 CollectorsortFlags &= (~SORT_DIRSFIRST); 1804 else 1805 { 1717 else { 1806 1718 CollectorsortFlags |= SORT_DIRSFIRST; 1807 1719 CollectorsortFlags &= (~SORT_DIRSLAST); … … 1811 1723 if (CollectorsortFlags & SORT_DIRSLAST) 1812 1724 CollectorsortFlags &= (~SORT_DIRSLAST); 1813 else 1814 { 1725 else { 1815 1726 CollectorsortFlags |= SORT_DIRSLAST; 1816 1727 CollectorsortFlags &= (~SORT_DIRSFIRST); … … 1836 1747 1837 1748 li = xmallocz(sizeof(LISTINFO),pszSrcFile,__LINE__); 1838 if (li) 1839 { 1749 if (li) { 1840 1750 li -> list = ListFromClipboard(hwnd); 1841 1751 if (!li -> list || !li -> list[0]) 1842 1752 FreeListInfo(li); 1843 else 1844 { 1753 else { 1845 1754 li -> type = IDM_COLLECT; 1846 1755 if (!PostMsg(dcd -> hwndObject, UM_COLLECT, MPFROMP(li), … … 1879 1788 MPFROM2SHORT(CMA_FIRST, 1880 1789 CMA_ITEMORDER)); 1881 if (pci && (INT) pci != -1) 1882 { 1790 if (pci && (INT) pci != -1) { 1883 1791 WinSendMsg(hwnd, 1884 1792 CM_REMOVERECORD, … … 1901 1809 1902 1810 case IDM_COLLECTOR: 1903 if (mp2) 1904 { 1811 if (mp2) { 1905 1812 LISTINFO *li; 1906 1813 1907 1814 li = xmallocz(sizeof(LISTINFO),pszSrcFile,__LINE__); 1908 if (li) 1909 { 1815 if (li) { 1910 1816 li -> list = mp2; 1911 1817 if (!li -> list || !li -> list[0]) 1912 1818 FreeListInfo(li); 1913 else 1914 { 1819 else { 1915 1820 li -> type = IDM_COLLECT; 1916 1821 if (!PostMsg(dcd -> hwndObject, UM_COLLECT, MPFROMP(li), … … 1930 1835 1931 1836 pci = (PCNRITEM) CurrentRecord(hwnd); 1932 if (pci) 1933 { 1837 if (pci) { 1934 1838 strcpy(path, pci -> szFileName); 1935 1839 MakeValidDir(path); … … 1943 1847 if (dcd -> amextracted) { 1944 1848 // fixme to disable? 1945 Runtime_Error(pszSrcFile, __LINE__, "busy"); 1946 } 1947 else 1948 { 1849 Runtime_Error(pszSrcFile, __LINE__, "busy"); 1850 } 1851 else { 1949 1852 if (WinDlgBox(HWND_DESKTOP, hwnd, GrepDlgProc, 1950 1853 FM3ModHandle, GREP_FRAME, (PVOID) & hwnd)) … … 1972 1875 CHAR *p; 1973 1876 1974 if (!*dcd -> mask.szMask) 1975 { 1877 if (!*dcd -> mask.szMask) { 1976 1878 empty = TRUE; 1977 1879 pci = (PCNRITEM) CurrentRecord(hwnd); 1978 if (pci && !(pci -> attrFile & FILE_DIRECTORY)) 1979 { 1880 if (pci && !(pci -> attrFile & FILE_DIRECTORY)) { 1980 1881 p = strrchr(pci -> szFileName, '\\'); 1981 if (p) 1982 { 1882 if (p) { 1983 1883 p++; 1984 1884 strcpy(dcd -> mask.szMask, p); … … 1993 1893 size = sizeof(MASK); 1994 1894 PrfWriteProfileData(fmprof, appname, "CollectorFilter", 1995 &dcd -> mask, size);1895 &dcd -> mask, size); 1996 1896 dcd -> suspendview = 1; 1997 1897 WinSendMsg(hwnd, CM_FILTER, MPFROMP(Filter), MPFROMP(&dcd -> mask)); 1998 1898 dcd -> suspendview = 0; 1999 if (fAutoView && hwndMain) 2000 { 1899 if (fAutoView && hwndMain) { 2001 1900 pci = WinSendMsg(hwnd, CM_QUERYRECORDEMPHASIS, 2002 1901 MPFROMLONG(CMA_FIRST), … … 2045 1944 if ((INT) pci == -1) 2046 1945 pci = NULL; 2047 if (SHORT1FROMMP(mp1) == IDM_HIDEALL) 2048 { 2049 if (pci) 2050 { 1946 if (SHORT1FROMMP(mp1) == IDM_HIDEALL) { 1947 if (pci) { 2051 1948 if (!(pci -> rc.flRecordAttr & CRA_SELECTED)) 2052 1949 pci -> rc.flRecordAttr |= CRA_FILTERED; … … 2094 1991 WinSendMsg(hwnd, CM_QUERYCNRINFO, MPFROMP(&cnri), 2095 1992 MPFROMLONG(sizeof(CNRINFO))); 2096 switch (SHORT1FROMMP(mp1)) 2097 { 1993 switch (SHORT1FROMMP(mp1)) { 2098 1994 case IDM_ICON: 2099 1995 cnri.flWindowAttr &= (~(CV_ICON | CV_TREE | CV_TEXT | … … 2219 2115 2220 2116 li = xmallocz(sizeof(LISTINFO),pszSrcFile,__LINE__); 2221 if (li) 2222 { 2117 if (li) { 2223 2118 li -> type = SHORT1FROMMP(mp1); 2224 2119 li -> hwnd = hwnd; 2225 2120 li -> list = BuildList(hwnd); 2226 if (li -> list) 2227 { 2228 switch (SHORT1FROMMP(mp1)) 2229 { 2121 if (li -> list) { 2122 switch (SHORT1FROMMP(mp1)) { 2230 2123 case IDM_DOITYOURSELF: 2231 2124 case IDM_APPENDTOCLIP: … … 2259 2152 MPVOID)) 2260 2153 { 2261 Runtime_Error(pszSrcFile, __LINE__, "PostMsg");2154 Runtime_Error(pszSrcFile, __LINE__, "PostMsg"); 2262 2155 FreeListInfo(li); 2263 2156 } … … 2280 2173 2281 2174 x = SHORT1FROMMP(mp1) - IDM_COMMANDSTART; 2282 if (x >= 0) 2283 { 2175 if (x >= 0) { 2284 2176 x++; 2285 2177 RunCommand(hwnd, x); … … 2303 2195 2304 2196 pci = (PCNRITEM) CurrentRecord(hwnd); 2305 if (pci && (INT) pci != -1) 2306 { 2197 if (pci && (INT) pci != -1) { 2307 2198 if (pci -> attrFile & FILE_DIRECTORY) 2308 2199 menuHwnd = CheckMenu(&CollectorDirMenu, COLLECTORDIR_POPUP); … … 2315 2206 case WM_CONTROL: 2316 2207 DosError(FERR_DISABLEHARDERR); 2317 if (dcd) 2318 { 2319 switch (SHORT2FROMMP(mp1)) 2320 { 2208 if (dcd) { 2209 switch (SHORT2FROMMP(mp1)) { 2321 2210 case CN_CONTEXTMENU: 2322 2211 { 2323 2212 PCNRITEM pci = (PCNRITEM) mp2; 2324 2213 2325 if (pci) 2326 { 2214 if (pci) { 2327 2215 WinSendMsg(hwnd, CM_SETRECORDEMPHASIS, MPFROMP(pci), 2328 2216 MPFROM2SHORT(TRUE, CRA_CURSORED)); … … 2335 2223 COLLECTORFILE_POPUP); 2336 2224 } 2337 else 2338 { 2225 else { 2339 2226 dcd -> hwndLastMenu = CheckMenu(&CollectorCnrMenu, 2340 2227 COLLECTORCNR_POPUP); 2341 if (dcd -> hwndLastMenu && !dcd -> cnremphasized) 2342 { 2228 if (dcd -> hwndLastMenu && !dcd -> cnremphasized) { 2343 2229 WinSendMsg(hwnd, CM_SETRECORDEMPHASIS, MPVOID, 2344 2230 MPFROM2SHORT(TRUE, CRA_SOURCE)); … … 2346 2232 } 2347 2233 } 2348 if (dcd -> hwndLastMenu) 2349 { 2350 if (dcd -> hwndLastMenu == CollectorCnrMenu) 2351 { 2234 if (dcd -> hwndLastMenu) { 2235 if (dcd -> hwndLastMenu == CollectorCnrMenu) { 2352 2236 SetViewMenu(dcd -> hwndLastMenu, dcd -> flWindowAttr); 2353 2237 SetDetailsSwitches(dcd -> hwndLastMenu, dcd); … … 2355 2239 WinCheckMenuItem(dcd -> hwndLastMenu, IDM_MINIICONS, TRUE); 2356 2240 } 2357 if (!PopupMenu(hwnd, hwnd, dcd -> hwndLastMenu)) 2358 { 2359 if (dcd -> cnremphasized) 2360 { 2241 if (!PopupMenu(hwnd, hwnd, dcd -> hwndLastMenu)) { 2242 if (dcd -> cnremphasized) { 2361 2243 WinSendMsg(hwnd, CM_SETRECORDEMPHASIS, MPVOID, 2362 2244 MPFROM2SHORT(FALSE, CRA_SOURCE)); … … 2370 2252 2371 2253 case CN_DROPHELP: 2372 if (mp2) 2373 { 2254 if (mp2) { 2374 2255 PDRAGINFO pDInfo; 2375 2256 PCNRITEM pci; … … 2379 2260 pci = (PCNRITEM) ((PCNRDRAGINFO) mp2) -> pRecord; 2380 2261 pDInfo = ((PCNRDRAGINFO) mp2) -> pDragInfo; 2381 if (!DrgAccessDraginfo(pDInfo)) 2382 { 2262 if (!DrgAccessDraginfo(pDInfo)) { 2383 2263 Win_Error(hwnd, hwnd, pszSrcFile, __LINE__, 2384 2264 "%s", … … 2408 2288 2409 2289 case CN_DRAGLEAVE: 2410 if (mp2) 2411 { 2290 if (mp2) { 2412 2291 PDRAGINFO pDInfo; 2413 2292 2414 2293 pDInfo = ((PCNRDRAGINFO) mp2) -> pDragInfo; 2415 2294 DrgAccessDraginfo(pDInfo); /* Access DRAGINFO */ 2416 DrgFreeDraginfo(pDInfo); /* Free DRAGINFO */2295 DrgFreeDraginfo(pDInfo); /* Free DRAGINFO */ 2417 2296 } 2418 2297 return 0; … … 2420 2299 case CN_DRAGAFTER: 2421 2300 case CN_DRAGOVER: 2422 if (mp2) 2423 { 2301 if (mp2) { 2424 2302 PDRAGITEM pDItem; /* Pointer to DRAGITEM */ 2425 2303 PDRAGINFO pDInfo; /* Pointer to DRAGINFO */ … … 2428 2306 2429 2307 pci = (PCNRITEM) ((PCNRDRAGINFO) mp2) -> pRecord; 2430 // if(SHORT1FROMMP(mp1) == CN_DRAGAFTER)2431 // pci = NULL;2308 // if(SHORT1FROMMP(mp1) == CN_DRAGAFTER) 2309 // pci = NULL; 2432 2310 pDInfo = ((PCNRDRAGINFO) mp2) -> pDragInfo; 2433 2311 DrgAccessDraginfo(pDInfo); /* Access DRAGINFO */ 2434 if (pci) 2435 { 2436 if (pci -> rc.flRecordAttr & CRA_SOURCE) 2437 { 2312 if (pci) { 2313 if (pci -> rc.flRecordAttr & CRA_SOURCE) { 2438 2314 DrgFreeDraginfo(pDInfo); 2439 2315 return (MRFROM2SHORT(DOR_NODROP, 0)); … … 2442 2318 if (uso == DO_DEFAULT) 2443 2319 uso = (fCopyDefault) ? DO_COPY : DO_MOVE; 2444 if (!(pci -> attrFile & FILE_DIRECTORY)) 2445 { 2320 if (!(pci -> attrFile & FILE_DIRECTORY)) { 2446 2321 if (uso != DO_LINK && uso != DO_MOVE && 2447 2322 uso != DO_COPY) … … 2477 2352 NULL)) 2478 2353 { 2479 DrgFreeDraginfo(pDInfo); /* Free DRAGINFO */ 2480 if (pci) 2481 { 2354 DrgFreeDraginfo(pDInfo); /* Free DRAGINFO */ 2355 if (pci) { 2482 2356 if (driveflags[toupper(*pci -> szFileName) - 'A'] & 2483 2357 DRIVE_NOTWRITEABLE) … … 2494 2368 DO_COPY); 2495 2369 } 2496 DrgFreeDraginfo(pDInfo); /* Free DRAGINFO */2497 } 2498 return (MRFROM2SHORT(DOR_NODROP, 0)); /* Drop not valid */2370 DrgFreeDraginfo(pDInfo); /* Free DRAGINFO */ 2371 } 2372 return (MRFROM2SHORT(DOR_NODROP, 0)); /* Drop not valid */ 2499 2373 2500 2374 case CN_INITDRAG: 2501 if (mp2) 2502 { 2375 if (mp2) { 2503 2376 BOOL wasemphasized = FALSE; 2504 2377 PCNRDRAGINIT pcd = (PCNRDRAGINIT) mp2; 2505 2378 PCNRITEM pci; 2506 2379 2507 if (pcd) 2508 { 2380 if (pcd) { 2509 2381 pci = (PCNRITEM) pcd -> pRecord; 2510 if (pci) 2511 { 2382 if (pci) { 2512 2383 if (pci -> rc.flRecordAttr & CRA_SELECTED) 2513 2384 wasemphasized = TRUE; … … 2535 2406 2536 2407 case CN_DROP: 2537 if (mp2) 2538 { 2408 if (mp2) { 2539 2409 LISTINFO *li; 2540 2410 ULONG action = UM_ACTION; 2541 2411 2542 2412 li = DoFileDrop(hwnd, NULL, TRUE, mp1, mp2); 2543 if (li) 2544 { 2545 if (!*li -> targetpath) 2546 { 2413 if (li) { 2414 if (!*li -> targetpath) { 2547 2415 li -> type = IDM_COLLECT; 2548 2416 action = UM_COLLECT; 2549 2417 } 2550 else 2551 { 2418 else { 2552 2419 if (li -> list && li -> list[0] && IsRoot(li -> list[0])) 2553 2420 li -> type = DO_LINK; 2554 else if (fDragndropDlg && (!*li -> arcname || !li -> info)) 2555 { 2421 else if (fDragndropDlg && (!*li -> arcname || !li -> info)) { 2556 2422 CHECKLIST cl; 2557 2423 … … 2565 2431 DropListProc, FM3ModHandle, 2566 2432 DND_FRAME, MPFROMP(&cl)); 2567 if (!li -> type) 2568 { 2433 if (!li -> type) { 2569 2434 FreeListInfo(li); 2570 2435 return 0; 2571 2436 } 2572 2437 li -> list = cl.list; 2573 if (!li -> list || !li -> list[0]) 2574 { 2438 if (!li -> list || !li -> list[0]) { 2575 2439 FreeListInfo(li); 2576 2440 return 0; 2577 2441 } 2578 2442 } 2579 switch (li -> type) 2580 { 2443 switch (li -> type) { 2581 2444 case DND_LAUNCH: 2582 2445 strcat(li -> targetpath, " %a"); … … 2587 2450 break; 2588 2451 case DO_LINK: 2589 if (fLinkSetsIcon) 2590 { 2452 if (fLinkSetsIcon) { 2591 2453 li -> type = IDM_SETICON; 2592 2454 action = UM_MASSACTION; … … 2601 2463 case DND_MOVE: 2602 2464 li -> type = IDM_MOVE; 2603 if (*li -> targetpath && IsFile(li -> targetpath) == 1) 2604 { 2465 if (*li -> targetpath && IsFile(li -> targetpath) == 1) { 2605 2466 action = UM_MASSACTION; 2606 2467 li -> type = IDM_ARCHIVEM; … … 2609 2470 case DND_WILDMOVE: 2610 2471 li -> type = IDM_WILDMOVE; 2611 if (*li -> targetpath && IsFile(li -> targetpath) == 1) 2612 { 2472 if (*li -> targetpath && IsFile(li -> targetpath) == 1) { 2613 2473 action = UM_MASSACTION; 2614 2474 li -> type = IDM_ARCHIVEM; … … 2632 2492 case DND_WILDCOPY: 2633 2493 li -> type = IDM_WILDCOPY; 2634 if (*li -> targetpath && IsFile(li -> targetpath) == 1) 2635 { 2494 if (*li -> targetpath && IsFile(li -> targetpath) == 1) { 2636 2495 action = UM_MASSACTION; 2637 2496 li -> type = IDM_ARCHIVE; … … 2640 2499 case DND_COPY: 2641 2500 li -> type = IDM_COPY; 2642 if (*li -> targetpath && IsFile(li -> targetpath) == 1) 2643 { 2501 if (*li -> targetpath && IsFile(li -> targetpath) == 1) { 2644 2502 action = UM_MASSACTION; 2645 2503 li -> type = IDM_ARCHIVE; … … 2647 2505 break; 2648 2506 default: 2649 if (*li -> arcname && li -> info) 2650 { 2507 if (*li -> arcname && li -> info) { 2651 2508 action = UM_MASSACTION; 2652 2509 li -> type = (li -> type == DO_MOVE) ? IDM_FAKEEXTRACTM : IDM_FAKEEXTRACT; 2653 2510 } 2654 else if (*li -> targetpath && IsFile(li -> targetpath) == 1) 2655 { 2511 else if (*li -> targetpath && IsFile(li -> targetpath) == 1) { 2656 2512 action = UM_MASSACTION; 2657 2513 li -> type = (li -> type == DO_MOVE) ? IDM_ARCHIVEM : IDM_ARCHIVE; … … 2666 2522 else if (!PostMsg(dcd -> hwndObject, action, MPFROMP(li), MPVOID)) 2667 2523 FreeListInfo(li); 2668 else 2669 { 2524 else { 2670 2525 USHORT usop = 0; 2671 2526 2672 switch (li -> type) 2673 { 2527 switch (li -> type) { 2674 2528 case IDM_COPY: 2675 2529 case IDM_WILDCOPY: … … 2702 2556 2703 2557 case CN_EMPHASIS: 2704 if (mp2) 2705 { 2558 if (mp2) { 2706 2559 PNOTIFYRECORDEMPHASIS pre = mp2; 2707 2560 PCNRITEM pci; … … 2709 2562 2710 2563 pci = (PCNRITEM) ((pre) ? pre -> pRecord : NULL); 2711 if (!pci) 2712 { 2564 if (!pci) { 2713 2565 if (hwndStatus2) 2714 2566 WinSetWindowText(hwndStatus2, NullStr); 2715 if (fMoreButtons) 2716 { 2567 if (fMoreButtons) { 2717 2568 WinSetWindowText(hwndName, NullStr); 2718 2569 WinSetWindowText(hwndDate, NullStr); … … 2723 2574 break; 2724 2575 } 2725 if (pre -> fEmphasisMask & CRA_SELECTED) 2726 { 2727 if (pci -> rc.flRecordAttr & CRA_SELECTED) 2728 { 2576 if (pre -> fEmphasisMask & CRA_SELECTED) { 2577 if (pci -> rc.flRecordAttr & CRA_SELECTED) { 2729 2578 dcd -> selectedbytes += (pci -> cbFile + pci -> easize); 2730 2579 dcd -> selectedfiles++; 2731 2580 } 2732 else if (dcd -> selectedfiles) 2733 { 2581 else if (dcd -> selectedfiles) { 2734 2582 dcd -> selectedbytes -= (pci -> cbFile + pci -> easize); 2735 2583 dcd -> selectedfiles--; 2736 2584 } 2737 if (!dcd -> suspendview) 2738 { 2585 if (!dcd -> suspendview) { 2739 2586 commafmt(tf, sizeof(tf), dcd -> selectedfiles); 2740 2587 CommaFmtULL(tb, sizeof(tb), dcd -> selectedbytes, ' '); … … 2746 2593 WinQueryActiveWindow(dcd -> hwndParent) == dcd -> hwndFrame) 2747 2594 { 2748 if (pre -> fEmphasisMask & CRA_CURSORED) 2749 { 2750 if (pci -> rc.flRecordAttr & CRA_CURSORED) 2751 { 2752 if (fSplitStatus && hwndStatus2) 2753 { 2595 if (pre -> fEmphasisMask & CRA_CURSORED) { 2596 if (pci -> rc.flRecordAttr & CRA_CURSORED) { 2597 if (fSplitStatus && hwndStatus2) { 2754 2598 if (pci -> attrFile & FILE_DIRECTORY) 2755 2599 p = pci -> pszFileName; 2756 else 2757 { 2600 else { 2758 2601 p = strrchr(pci -> szFileName, '\\'); 2759 if (p) 2760 { 2602 if (p) { 2761 2603 if (*(p + 1)) 2762 2604 p++; … … 2774 2616 pci -> time.minutes, pci -> time.seconds, 2775 2617 pci -> pszDispAttr, p); 2776 else 2777 { 2618 else { 2778 2619 if (pci -> cbFile + pci -> easize > 1024) 2779 2620 CommaFmtULL(tf, sizeof(tf), pci -> cbFile + pci -> easize, ' '); … … 2788 2629 WinSetWindowText(hwndStatus2, s); 2789 2630 } 2790 if (fMoreButtons) 2791 { 2631 if (fMoreButtons) { 2792 2632 WinSetWindowText(hwndName, pci -> pszFileName); 2793 2633 sprintf(s, "%04u/%02u/%02u %02u:%02u:%02u", … … 2812 2652 2813 2653 case CN_ENTER: 2814 if (mp2) 2815 { 2654 if (mp2) { 2816 2655 PCNRITEM pci = (PCNRITEM) ((PNOTIFYRECORDENTER) mp2) -> pRecord; 2817 2656 FILEFINDBUF3 ffb; … … 2821 2660 2822 2661 SetShiftState(); 2823 if (pci) 2824 { 2662 if (pci) { 2825 2663 if (pci -> rc.flRecordAttr & CRA_INUSE) 2826 2664 break; … … 2833 2671 FIL_STANDARD); 2834 2672 priority_bumped(); 2835 if (!status) 2836 { 2673 if (!status) { 2837 2674 DosFindClose(hDir); 2838 if (ffb.attrFile & FILE_DIRECTORY) 2839 { 2675 if (ffb.attrFile & FILE_DIRECTORY) { 2840 2676 if ((shiftstate & (KC_CTRL | KC_ALT)) == 2841 2677 (KC_CTRL | KC_ALT)) … … 2854 2690 pci -> szFileName); 2855 2691 } 2856 else 2857 { 2692 else { 2858 2693 SWP swp; 2859 2694 … … 2889 2724 2890 2725 case UM_LOADFILE: 2891 if (dcd && mp2) 2892 { 2726 if (dcd && mp2) { 2893 2727 HWND ret; 2894 2728 … … 2914 2748 2915 2749 case WM_CLOSE: 2916 if (dcd) 2917 { 2750 if (dcd) { 2918 2751 dcd -> namecanchange = TRUE; 2919 2752 dcd -> stopflag = 1; … … 2922 2755 } 2923 2756 WinSendMsg(hwnd, WM_SAVEAPPLICATION, MPVOID, MPVOID); 2924 if (dcd) 2925 { 2757 if (dcd) { 2926 2758 if (!dcd -> dontclose && ParentIsDesktop(hwnd, dcd -> hwndParent)) 2927 2759 PostMsg(hwnd, UM_FOLDUP, MPVOID, MPVOID); 2928 if (dcd -> hwndObject) 2929 { 2760 if (dcd -> hwndObject) { 2930 2761 DosSleep(64L); 2931 2762 if (!PostMsg(dcd -> hwndObject, WM_CLOSE, MPVOID, MPVOID)) … … 2958 2789 HWND hwndClient; 2959 2790 ULONG FrameFlags = FCF_TITLEBAR | FCF_SYSMENU | 2960 FCF_SIZEBORDER | FCF_MINMAX |2961 FCF_ICON | FCF_NOBYTEALIGN |2962 FCF_ACCELTABLE;2791 FCF_SIZEBORDER | FCF_MINMAX | 2792 FCF_ICON | FCF_NOBYTEALIGN | 2793 FCF_ACCELTABLE; 2963 2794 USHORT id; 2964 2795 DIRCNRDATA *dcd; … … 2968 2799 if (ParentIsDesktop(hwndParent, hwndParent)) 2969 2800 FrameFlags |= (FCF_TASKLIST | FCF_SHELLPOSITION | FCF_MENU); 2970 if (Collector) 2971 { 2801 if (Collector) { 2972 2802 WinSetWindowPos(WinQueryWindow(WinQueryWindow(Collector, 2973 2803 QW_PARENT), … … 2992 2822 COLLECTOR_FRAME, 2993 2823 &hwndClient); 2994 if (hwndFrame && hwndClient) 2995 { 2824 if (hwndFrame && hwndClient) { 2996 2825 id = COLLECTOR_FRAME + idinc++; 2997 2826 WinSetWindowUShort(hwndFrame, QWS_ID, id); … … 3036 2865 NULL); 3037 2866 if (!dcd -> hwndCnr) { 3038 Win_Error2(hwndClient,hwndClient,pszSrcFile,__LINE__,IDS_WINCREATEWINDOW);2867 Win_Error2(hwndClient,hwndClient,pszSrcFile,__LINE__,IDS_WINCREATEWINDOW); 3039 2868 PostMsg(hwndClient,WM_CLOSE,MPVOID,MPVOID); 3040 2869 free(dcd); … … 3046 2875 WinSetWindowText(hwndFrame, 3047 2876 GetPString(IDS_COLLECTORTITLETEXT)); 3048 if (FrameFlags & FCF_MENU) 3049 { 3050 if (!fToolbar) 3051 { 2877 if (FrameFlags & FCF_MENU) { 2878 if (!fToolbar) { 3052 2879 HWND hwndMenu = WinWindowFromID(hwndFrame, FID_MENU); 3053 2880 3054 if (hwndMenu) 3055 { 2881 if (hwndMenu) { 3056 2882 WinSendMsg(hwndMenu, 3057 2883 MM_DELETEITEM,
Note:
See TracChangeset
for help on using the changeset viewer.
