Changeset 1077 for trunk/dll/dircnrs.c
- Timestamp:
- Jul 18, 2008, 8:11:54 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/dircnrs.c
r1065 r1077 42 42 06 Jul 08 GKY Update delete/undelete to include move to and open XWP trashcan 43 43 11 Jul 08 JBS Ticket 230: Simplified code and eliminated some local variables by incorporating 44 45 44 all the details view settings (both the global variables and those in the 45 DIRCNRDATA struct) into a new struct: DETAILS_SETTINGS. 46 46 47 47 ***********************************************************************/ … … 70 70 #include "command.h" // RunCommand 71 71 #include "fm3dll.h" 72 #include "avl.h" 72 #include "avl.h" // free_archivers 73 73 #include "fortify.h" 74 74 … … 598 598 switch (msg) { 599 599 case WM_CREATE: 600 DbgMsg(pszSrcFile, __LINE__, "WM_CREATE mp1 %p mp2 %p", mp1, mp2); // 18 Jul 08 SHL fixme 600 601 break; 601 602 … … 606 607 dcd = INSTDATA(hwnd); 607 608 if (fFM2Deletes && dcd) { 608 609 609 LISTINFO *li; 610 610 CNRDRAGINFO cni; 611 612 611 cni.pRecord = NULL; 613 612 cni.pDragInfo = (PDRAGINFO) mp1; … … 641 640 642 641 case UM_SETUP: 642 # ifdef FORTIFY 643 Fortify_EnterScope(); 644 # endif 643 645 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 644 646 if (dcd) { 647 # ifdef FORTIFY 648 Fortify_ChangeOwner(dcd); 649 # endif 645 650 /* set unique id */ 646 651 WinSetWindowUShort(hwnd, QWS_ID, DIROBJ_FRAME + (DIR_FRAME - dcd->id)); … … 988 993 case UM_MASSACTION: 989 994 if (mp1) { 990 991 995 dcd = WinQueryWindowPtr(hwnd, QWL_USER); 992 996 if (dcd) { 993 994 997 WORKER *wk; 995 # 996 997 # 998 # ifdef FORTIFY 999 Fortify_EnterScope(); 1000 # endif 998 1001 wk = xmallocz(sizeof(WORKER), pszSrcFile, __LINE__); 999 1002 if (!wk) … … 1010 1013 Runtime_Error(pszSrcFile, __LINE__, 1011 1014 GetPString(IDS_COULDNTSTARTTHREADTEXT)); 1012 1015 free(wk); 1013 1016 FreeListInfo((LISTINFO *) mp1); 1014 # ifdef FORTIFY 1015 Fortify_LeaveScope(); 1016 # endif 1017 } 1018 } 1017 } 1018 } 1019 # ifdef FORTIFY 1020 DosSleep(1); // Allow MassAction to take ownership 1021 Fortify_LeaveScope(); 1022 # endif 1019 1023 } 1020 1024 } … … 1028 1032 1029 1033 WORKER *wk; 1030 # 1031 1032 # 1034 # ifdef FORTIFY 1035 Fortify_EnterScope(); 1036 # endif 1033 1037 wk = xmallocz(sizeof(WORKER), pszSrcFile, __LINE__); 1034 1038 if (!wk) … … 1045 1049 Runtime_Error(pszSrcFile, __LINE__, 1046 1050 GetPString(IDS_COULDNTSTARTTHREADTEXT)); 1047 1051 free(wk); 1048 1052 FreeListInfo((LISTINFO *) mp1); 1049 # ifdef FORTIFY 1050 Fortify_LeaveScope(); 1051 # endif1052 }1053 } 1053 } 1054 } 1055 # ifdef FORTIFY 1056 Fortify_LeaveScope(); 1057 # endif 1054 1058 } 1055 1059 } … … 1091 1095 1092 1096 switch (msg) { 1097 case WM_CREATE: 1098 # ifdef FORTIFY 1099 Fortify_EnterScope(); 1100 # endif 1101 break; 1102 1093 1103 case DM_PRINTOBJECT: 1094 1104 return MRFROMLONG(DRR_TARGET); … … 1242 1252 1243 1253 if (!IsFile(leftdir) && !IsFile(rightdir)) { 1254 # ifdef FORTIFY 1255 Fortify_EnterScope(); 1256 # endif 1244 1257 cmp = xmallocz(sizeof(COMPARE), pszSrcFile, __LINE__); 1245 1258 if (cmp) { … … 1253 1266 CompareDlgProc, FM3ModHandle, COMP_FRAME, MPFROMP(cmp)); 1254 1267 } 1268 # ifdef FORTIFY 1269 Fortify_LeaveScope(); 1270 # endif 1255 1271 } 1256 1272 } … … 2040 2056 { 2041 2057 PCNRITEM pci; 2042 2043 2044 2045 2046 2047 2048 2058 CHAR path[CCHMAXPATH]; 2059 HOBJECT hObject; 2060 HWND hwndDesktop; 2061 2062 hObject = WinQueryObject("<XWP_TRASHCAN>"); 2063 if (hObject != NULLHANDLE && fTrashCan) { 2064 hwndDesktop = WinQueryDesktopWindow((HAB) 0, NULLHANDLE); 2049 2065 WinSetFocus(HWND_DESKTOP, hwndDesktop); 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2066 WinOpenObject(hObject, 0, TRUE); 2067 } 2068 else { 2069 pci = (PCNRITEM) CurrentRecord(hwnd); 2070 if (pci && (INT) pci != -1) { 2071 strcpy(path, pci->pszFileName); 2072 MakeValidDir(path); 2073 WinDlgBox(HWND_DESKTOP, hwnd, UndeleteDlgProc, FM3ModHandle, 2074 UNDEL_FRAME, MPFROMP(path)); 2075 } 2060 2076 } 2061 2077 } … … 2063 2079 2064 2080 case IDM_UNDELETESPEC: 2065 2066 2067 2068 2069 2070 2071 2081 { 2082 HOBJECT hObject; 2083 HWND hwndDesktop; 2084 2085 hObject = WinQueryObject("<XWP_TRASHCAN>"); 2086 if (hObject != NULLHANDLE && fTrashCan) { 2087 hwndDesktop = WinQueryDesktopWindow((HAB) 0, NULLHANDLE); 2072 2088 WinSetFocus(HWND_DESKTOP, hwndDesktop); 2073 2074 2075 2089 WinOpenObject(hObject, 0, TRUE); 2090 } 2091 else 2076 2092 WinDlgBox(HWND_DESKTOP, 2077 2093 hwnd, 2078 2094 UndeleteDlgProc, 2079 2080 2081 2095 FM3ModHandle, UNDEL_FRAME, MPFROMP(dcd->directory)); 2096 } 2097 break; 2082 2098 2083 2099 case IDM_RESORT: … … 3338 3354 3339 3355 if ((INT)mp1 == 5 || (INT)mp1 == 13 || (INT)mp1 == 21) 3340 3341 3356 hwnd = StartViewer(HWND_DESKTOP, (INT)mp1, 3357 (CHAR *)mp2, dcd->hwndFrame); 3342 3358 else 3343 3344 3359 hwnd = StartMLEEditor(dcd->hwndParent, 3360 (INT)mp1, (CHAR *)mp2, dcd->hwndFrame); 3345 3361 xfree((CHAR *)mp2, pszSrcFile, __LINE__); 3346 3362 return MRFROMLONG(hwnd); … … 3400 3416 DirMenu = DirCnrMenu = FileMenu = (HWND) 0; 3401 3417 EmptyCnr(hwnd); 3418 # ifdef FORTIFY 3419 Fortify_LeaveScope(); 3420 # endif 3402 3421 break; 3403 3422 } // switch … … 3440 3459 if (!hwndMain && !first) { 3441 3460 if (DirCnrMenu) { 3442 3443 3461 MENUITEM mi; 3444 3445 3462 memset(&mi, 0, sizeof(mi)); 3446 3463 WinSendMsg(DirCnrMenu, … … 3470 3487 # ifdef FORTIFY 3471 3488 Fortify_EnterScope(); 3472 # 3489 # endif 3473 3490 dcd = xmallocz(sizeof(DIRCNRDATA), pszSrcFile, __LINE__); 3474 3491 if (!dcd) { … … 3521 3538 IDS_WINCREATEWINDOW); 3522 3539 PostMsg(hwndClient, WM_CLOSE, MPVOID, MPVOID); 3523 free(dcd); 3524 # ifdef FORTIFY 3525 Fortify_LeaveScope(); 3526 # endif 3540 free(dcd); 3527 3541 hwndFrame = (HWND) 0; 3528 3542 } … … 3573 3587 } 3574 3588 } 3589 # ifdef FORTIFY 3590 Fortify_LeaveScope(); 3591 # endif 3575 3592 } 3576 3593 }
Note:
See TracChangeset
for help on using the changeset viewer.