source: trunk/dll/makelist.h@ 1036

Last change on this file since 1036 was 1029, checked in by Gregg Young, 17 years ago

Fixed early memory free; Added free_... functions to make fortify checking easier; Added fortify scopes; Delete now moves to trash can on systems with the xworkplace trash can installed.

File size: 1.9 KB
Line 
1
2/***********************************************************************
3
4 $Id: $
5
6 makelist common definitions
7
8 Copyright (c) 1993-98 M. Kimes
9 Copyright (c) 2001, 2008 Steven H. Levine
10
11 05 Jan 08 SHL Move makelist.c definitions here
12 22 Jun 08 GKY Change variable type to fix compiler warning
13
14***********************************************************************/
15
16#if !defined(MAKELIST_H)
17#define MAKELIST_H
18
19#if defined(__IBMC__)
20#if __IBMC__ != 430
21#error VAC365 required for long long support
22#endif
23#if !defined(_LONG_LONG)
24#error Long long support not enabled
25#endif
26#endif
27
28#if !defined(OS2_INCLUDED)
29#define INCL_WINSTDCNR // avl.h
30#define INCL_LONGLONG
31#include <os2.h>
32#else
33#if !defined(INCL_WINSTDCNR)
34#error INCL_WINSTDCNR required
35#endif
36#if !defined(INCL_LONGLONG)
37#error INCL_LONGLONG required by makelist.h
38#endif
39#endif
40
41#include "avl.h" // ARC_TYPE
42
43typedef struct
44{
45 ULONG attrFile;
46 ULONGLONG cbFile;
47 ULONGLONG easize;
48 FDATE date;
49 FTIME time;
50 FDATE ladate;
51 FTIME latime;
52 FDATE crdate;
53 FTIME crtime;
54 CHAR fname[1];
55}
56FILELIST;
57
58typedef struct
59{
60 HWND hwnd;
61 HWND hwndS;
62 ULONG type;
63 USHORT id;
64 INT flags;
65 struct __arc_type__ *info;
66 CHAR **list;
67 ULONG *ulitemID;
68 ULONGLONG *cbFile;
69 CHAR targetpath[CCHMAXPATH + 6];
70 CHAR arcname[CCHMAXPATH];
71 CHAR runfile[CCHMAXPATH];
72}
73LISTINFO;
74
75INT AddToList(CHAR *string, CHAR ***list, UINT *pnumfiles, UINT *pnumalloced);
76INT AddToFileList(CHAR *string, FILEFINDBUF4L *ffb4, FILELIST ***list,
77 UINT *pnumfiles, UINT *numalloced);
78CHAR **BuildList(HWND hwndCnr);
79VOID FreeListInfo(LISTINFO *li);
80VOID FreeList(CHAR **list);
81VOID SortList(LISTINFO *li);
82CHAR **BuildArcList(HWND hwndCnr);
83CHAR **RemoveFromList(CHAR **list, CHAR *item);
84CHAR **CombineLists(CHAR **prime, CHAR **add);
85
86#endif // MAKELIST_H
Note: See TracBrowser for help on using the repository browser.