source: trunk/dll/filldir.h@ 1570

Last change on this file since 1570 was 1550, checked in by Gregg Young, 15 years ago

This actually fixes the double names in the tree container. It also streamlines the initial scan code by eliminating multiple redundant scans.

  • Property svn:eolstyle set to native
  • Property svn:keywords set to Id
File size: 2.5 KB
Line 
1
2/***********************************************************************
3
4 $Id: filldir.h 1550 2010-11-03 02:50:42Z gyoung $
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
12 25 Dec 08 GKY Add ProcessDirectoryThread to allow optional recursive drive scan at startup.
13 08 Mar 09 GKY Additional strings move to PCSZs
14 06 Jun 09 GKY Add option to show file system type or drive label in tree
15 22 Jul 09 GKY Code changes to use semaphores to serialize drive scanning
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
34VOID EmptyCnr(HWND hwnd);
35const PSZ FileAttrToString(ULONG fileAttr);
36VOID FillDirCnr(HWND hwndCnr, CHAR *pszDirectory, DIRCNRDATA *pdcd,
37 PULONGLONG pullBytes);
38VOID FillTreeCnr(HWND hwndCnr, HWND hwndParent);
39VOID 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);
44ULONGLONG FillInRecordFromFFB(HWND hwndCnr, PCNRITEM pci,
45 const PSZ pszDirectory,
46 const PFILEFINDBUF4L pffb, const BOOL partial,
47 DIRCNRDATA *pdcd);
48ULONGLONG FillInRecordFromFSA(HWND hwndCnr, PCNRITEM pci,
49 const PSZ pszFileName, const PFILESTATUS4L pfsa4,
50 const BOOL partial, CHAR *szFSType, DIRCNRDATA *pdcd);
51VOID FreeCnrItem(HWND hwnd, PCNRITEM pci);
52VOID FreeCnrItemList(HWND hwnd, PCNRITEM pciFirst);
53VOID FreeCnrItemData(PCNRITEM pci);
54INT RemoveCnrItems(HWND hwnd, PCNRITEM pci, USHORT usCnt, USHORT usFlags);
55VOID ProcessDirectoryThread(VOID * arg);
56
57// Data declarations
58extern PCSZ FM3Tools;
59extern PCSZ WPProgram;
60extern HPOINTER hptrEnv;
61extern HPOINTER hptrHidden;
62extern HPOINTER hptrReadonly;
63extern HPOINTER hptrSystem;
64extern INT FixedVolume;
65
66typedef 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}
79PROCESSDIR;
80
81#endif // FILLDIR_H
Note: See TracBrowser for help on using the repository browser.