| [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
 | 
|---|