| [907] | 1 |  | 
|---|
|  | 2 | /*********************************************************************** | 
|---|
|  | 3 |  | 
|---|
| [1196] | 4 | $Id: filldir.h 1550 2010-11-03 02:50:42Z gyoung $ | 
|---|
| [907] | 5 |  | 
|---|
|  | 6 | filldir.c definitions | 
|---|
|  | 7 |  | 
|---|
|  | 8 | Copyright (c) 1993-98 M. Kimes | 
|---|
|  | 9 | Copyright (c) 2001, 2008 Steven H. Levine | 
|---|
|  | 10 |  | 
|---|
|  | 11 | 05 Jan 08 SHL Split from fm3dll.h | 
|---|
| [1358] | 12 | 25 Dec 08 GKY Add ProcessDirectoryThread to allow optional recursive drive scan at startup. | 
|---|
| [1402] | 13 | 08 Mar 09 GKY Additional strings move to PCSZs | 
|---|
| [1430] | 14 | 06 Jun 09 GKY Add option to show file system type or drive label in tree | 
|---|
| [1444] | 15 | 22 Jul 09 GKY Code changes to use semaphores to serialize drive scanning | 
|---|
| [907] | 16 |  | 
|---|
|  | 17 | ***********************************************************************/ | 
|---|
|  | 18 |  | 
|---|
|  | 19 | #if !defined(FILLDIR_H) | 
|---|
|  | 20 |  | 
|---|
|  | 21 | #define FILLDIR_H | 
|---|
|  | 22 |  | 
|---|
|  | 23 | #if !defined(OS2_INCLUDED) | 
|---|
|  | 24 | #define INCL_WINSTDCNR                  // dircnrs.h | 
|---|
|  | 25 | #include <os2.h> | 
|---|
|  | 26 | #else | 
|---|
|  | 27 | #if !defined(INCL_WINSTDCNR) | 
|---|
|  | 28 | #error INCL_WINSTDCNR required | 
|---|
|  | 29 | #endif | 
|---|
|  | 30 | #endif | 
|---|
|  | 31 |  | 
|---|
|  | 32 | #include "dircnrs.h"                    // DIRCNRDATA | 
|---|
|  | 33 |  | 
|---|
|  | 34 | VOID EmptyCnr(HWND hwnd); | 
|---|
|  | 35 | const PSZ FileAttrToString(ULONG fileAttr); | 
|---|
|  | 36 | VOID FillDirCnr(HWND hwndCnr, CHAR *pszDirectory, DIRCNRDATA *pdcd, | 
|---|
|  | 37 | PULONGLONG pullBytes); | 
|---|
|  | 38 | VOID FillTreeCnr(HWND hwndCnr, HWND hwndParent); | 
|---|
|  | 39 | VOID ProcessDirectory(const HWND hwndCnr, const PCNRITEM pciParent, | 
|---|
|  | 40 | const CHAR *szDirBase, const BOOL filestoo, | 
|---|
|  | 41 | const BOOL recurse, const BOOL partial, | 
|---|
|  | 42 | CHAR *stopflag, DIRCNRDATA *pdcd, | 
|---|
|  | 43 | PULONG pullTotalFiles, PULONGLONG pullTotalBytes); | 
|---|
|  | 44 | ULONGLONG FillInRecordFromFFB(HWND hwndCnr, PCNRITEM pci, | 
|---|
|  | 45 | const PSZ pszDirectory, | 
|---|
|  | 46 | const PFILEFINDBUF4L pffb, const BOOL partial, | 
|---|
|  | 47 | DIRCNRDATA *pdcd); | 
|---|
|  | 48 | ULONGLONG FillInRecordFromFSA(HWND hwndCnr, PCNRITEM pci, | 
|---|
|  | 49 | const PSZ pszFileName, const PFILESTATUS4L pfsa4, | 
|---|
| [1424] | 50 | const BOOL partial, CHAR *szFSType, DIRCNRDATA *pdcd); | 
|---|
| [907] | 51 | VOID FreeCnrItem(HWND hwnd, PCNRITEM pci); | 
|---|
|  | 52 | VOID FreeCnrItemList(HWND hwnd, PCNRITEM pciFirst); | 
|---|
|  | 53 | VOID FreeCnrItemData(PCNRITEM pci); | 
|---|
|  | 54 | INT RemoveCnrItems(HWND hwnd, PCNRITEM pci, USHORT usCnt, USHORT usFlags); | 
|---|
| [1354] | 55 | VOID ProcessDirectoryThread(VOID * arg); | 
|---|
| [907] | 56 |  | 
|---|
| [1207] | 57 | // Data declarations | 
|---|
| [1402] | 58 | extern PCSZ FM3Tools; | 
|---|
|  | 59 | extern PCSZ WPProgram; | 
|---|
| [1207] | 60 | extern HPOINTER hptrEnv; | 
|---|
|  | 61 | extern HPOINTER hptrHidden; | 
|---|
|  | 62 | extern HPOINTER hptrReadonly; | 
|---|
|  | 63 | extern HPOINTER hptrSystem; | 
|---|
| [1550] | 64 | extern INT FixedVolume; | 
|---|
| [1207] | 65 |  | 
|---|
| [1354] | 66 | typedef struct { | 
|---|
|  | 67 |  | 
|---|
|  | 68 | HWND     hwndCnr; | 
|---|
|  | 69 | PCNRITEM pciParent; | 
|---|
|  | 70 | CHAR     *szDirBase; | 
|---|
|  | 71 | BOOL     filestoo; | 
|---|
|  | 72 | BOOL     recurse; | 
|---|
|  | 73 | BOOL     partial; | 
|---|
|  | 74 | CHAR           *stopflag; | 
|---|
|  | 75 | DIRCNRDATA     *dcd;                // Optional | 
|---|
|  | 76 | ULONG          *pulTotalFiles;       // Optional | 
|---|
|  | 77 | PULONGLONG     pullTotalBytes;      // Optional | 
|---|
|  | 78 | } | 
|---|
|  | 79 | PROCESSDIR; | 
|---|
|  | 80 |  | 
|---|
| [907] | 81 | #endif // FILLDIR_H | 
|---|