source: trunk/dll/init.h@ 1786

Last change on this file since 1786 was 1786, checked in by Gregg Young, 11 years ago

Add semaphore hmtxFiltering to prevent freeing dcd while filtering. Prevents a trap when FM2 is shutdown while directory containers are still populating (Ticket 535)

  • Property svn:eolstyle set to native
  • Property svn:keywords set to Id
File size: 8.2 KB
Line 
1
2/***********************************************************************
3
4 $Id: init.h 1786 2014-08-30 20:03:35Z gyoung $
5
6 <<<description here>>>
7
8 Copyright (c) 1993-98 M. Kimes
9 Copyright (c) 2008-10 Steven H. Levine
10
11 Change log
12 29 Nov 08 GKY Remove or replace with a mutex semaphore DosEnterCriSec where appropriate.
13 03 Jan 09 GKY Check for system that is protectonly to gray out Dos/Win command lines and prevent
14 Dos/Win programs from being inserted into the execute dialog with message why.
15 11 Jan 09 GKY Move strings that shouldn't be translated (font names etc) compile time variables
16 07 Feb 09 GKY Eliminate Win_Error2 by moving function names to PCSZs used in Win_Error
17 07 Feb 09 GKY Move repeated strings to PCSZs.
18 07 Feb 09 GKY Add *DateFormat functions to format dates based on locale
19 08 Mar 09 GKY Additional strings move to PCSZs in init.c
20 22 Jul 09 GKY Drivebar enhancements add refresh removable, rescan all drives, drive button
21 loads drive root directory in directory container or expands drive tree
22 and rescans drive in tree container depending on container focus, greyed out
23 inappropriate menu context choices
24 15 Nov 09 GKY Add more PCSZs
25 17 JAN 10 GKY Changes to get working with Watcom 1.9 Beta (1/16/10).
26 Mostly cast CHAR CONSTANT * as CHAR *.
27 20 Nov 10 GKY Rework scanning code to remove redundant scans, prevent double directory
28 entries in the tree container, fix related semaphore performance using
29 combination of event and mutex semaphores
30 08 Jan 12 GKY Add support for changing PresParams in the notify status window
31 04 Aug 12 GKY Changes to use Unlock to unlock files if Unlock.exe is in path both from menu/toolbar and as part of
32 copy, move and delete operations
33 04 Aug 12 GKY Changes to allow copy and move over readonly files with a warning dialog; also added a warning dialog
34 for delete of readonly files
35 16 Feb 14 GKY Add "#" command line switch to workaround problem with blank command shell
36 started from fm2 after fm2 has been started with stdout and stderr
37 redirected to a file.
38 02 Mar 14 GKY Fixed typo that reversed the function of the saymsg dialog g/bzip check.
39 Added option to suppress message regarding missing bzip2.exe
40 or gzip.exe on TAR.B/GZ archives.
41 30 Aug 14 GKY Add semaphore hmtxFiltering to prevent freeing dcd while filtering. Prevents
42 a trap when FM2 is shutdown while directory containers are still populating
43
44***********************************************************************/
45
46#if !defined(INIT_H)
47#define INIT_H
48
49BOOL InitFM3DLL(HAB hab, int argc, char **argv);
50HWND StartFM3(HAB hab, INT argc, CHAR ** argv);
51
52// Data declarations
53extern PCSZ PCSZ_ARCHIVERBB2;
54extern PCSZ PCSZ_ASSOCDAT;
55extern PCSZ PCSZ_CMDLINESDAT;
56extern PCSZ PCSZ_CMDMINIDAT;
57extern PCSZ PCSZ_COMMANDSDAT;
58extern PCSZ PCSZ_FILTERSDAT;
59extern PCSZ PCSZ_GREPMASKDAT;
60extern PCSZ PCSZ_PATTERNSDAT;
61extern PCSZ PCSZ_RESOURCEDAT;
62extern PCSZ PCSZ_QUICKTLSDAT;
63extern PCSZ PCSZ_FM3TOOLSDAT;
64extern PCSZ PCSZ_USERDIRSDAT;
65extern PCSZ PCSZ_FM2PLAYEXE;
66extern PCSZ PCSZ_FM2PLAYTEMP;
67extern PCSZ PCSZ_LVMGUICMD;
68extern PCSZ PCSZ_DFSOS2EXE;
69extern PCSZ PCSZ_MINILVMEXE;
70extern PCSZ PCSZ_FDISKPMEXE;
71extern PCSZ PCSZ_IMAGEEXE;
72extern PCSZ PCSZ_LVMEXE;
73extern PCSZ PCSZ_UNLOCKEXE;
74extern PCSZ PCSZ_ARCCNR;
75extern PCSZ PCSZ_COLLECTOR;
76extern PCSZ PCSZ_DIRCNR;
77extern PCSZ PCSZ_DIRCMP;
78extern PCSZ PCSZ_DIRSIZES;
79extern PCSZ PCSZ_NOTIFYWND;
80extern PCSZ PCSZ_TOOLBAR;
81extern PCSZ PCSZ_TREECNR;
82extern PCSZ PCSZ_SHUTDOWNSTATE;
83extern PCSZ PCSZ_FM2TEMPTEXT;
84extern PCSZ DRMDRFFM2ARC;
85extern PCSZ DRF_FM2ARCHIVE;
86extern PCSZ DRMDRFOS2FILE;
87extern PCSZ DRM_FM2ARCMEMBER;
88extern PCSZ DRM_OS2FILE;
89extern PCSZ FM2Str;
90extern PCSZ FM3Folder;
91extern CHAR HomePath[CCHMAXPATH];
92extern PCSZ LONGNAME;
93extern CHAR *NullStr;
94extern ULONG OS2ver[2];
95extern PFNWP PFNWPCnr;
96extern PFNWP PFNWPMLE;
97extern PCSZ Settings;
98extern PCSZ Details;
99extern PCSZ PCSZ_TREE;
100extern PCSZ PCSZ_ICON;
101extern CHAR SwapperDat[CCHMAXPATH];
102extern CHAR ThousandsSeparator[2];
103extern CHAR DateSeparator[2];
104extern CHAR TimeSeparator[2];
105extern ULONG ulTimeFmt;
106extern ULONG ulDateFmt;
107extern ULONG ulScanPostCnt;
108extern PCSZ FNT_HELVETICA;
109extern PCSZ FNT_6HELVETICA;
110extern PCSZ FNT_8HELVETICA;
111extern PCSZ FNT_8HELVETICABOLD;
112extern PCSZ FNT_10SYSTEMMONOTEXT;
113extern PCSZ FNT_10SYSTEMPROPORT;
114extern PCSZ FNT_2SYSTEMVIO;
115extern PCSZ FNT_4SYSTEMVIO;
116extern PCSZ FNT_10SYSTEMVIO;
117extern PCSZ FNT_8TIMESNEWROMAN;
118extern PCSZ PCSZ_CM_ALLOCRECORD;
119extern PCSZ PCSZ_QUERYCNRINFO;
120extern PCSZ PCSZ_DOSCREATEMUTEXSEM;
121extern PCSZ PCSZ_DOSCREATEEVENTSEM;
122extern PCSZ PCSZ_DOSDUPHANDLE;
123extern PCSZ PCSZ_DOSGETINFOBLOCKS;
124extern PCSZ PCSZ_DOSQUERYPATHINFO;
125extern PCSZ PCSZ_DOSSEARCHPATH;
126extern PCSZ PCSZ_DRGACCESSDRAGINFO;
127extern PCSZ PCSZ_POSTMSG;
128extern PCSZ PCSZ_WINCREATEWINDOW;
129extern PCSZ PCSZ_WINLOADACCELTABLE;
130extern PCSZ PCSZ_WINSETACCELTABLE;
131extern PCSZ PCSZ_INIQUERYPRFTEXT;
132extern PCSZ PCSZ_PRFOPENPROFILEFAILED;
133extern PCSZ PCSZ_PRFQUERYPROFILEDATA;
134extern PCSZ PCSZ_PRFQUERYPROFILESIZE;
135extern PCSZ PCSZ_PRFQUERYPROFILESTRING;
136extern PCSZ PCSZ_FILLDIRQCURERRTEXT;
137extern PCSZ PCSZ_NODATA;
138extern PCSZ PCSZ_BACKSLASH;
139extern PCSZ PCSZ_STARDOTEXE;
140extern PCSZ PCSZ_STARDOTINI;
141extern PCSZ PCSZ_STARDOTLST;
142extern PCSZ PCSZ_STARDOTPMD;
143extern PCSZ PCSZ_STARDOTTXT;
144extern PCSZ PCSZ_FM3DOTINI;
145extern PCSZ PCSZ_FM3INI;
146extern PCSZ PCSZ_FM3INIDOTBAK;
147extern PCSZ PCSZ_FM3INIDOTBAD;
148extern PCSZ PCSZ_FM3INIDOTBAD2;
149extern PCSZ PCSZ_FM3RES;
150extern PCSZ PCSZ_FM3DOTHLP;
151extern PCSZ PCSZ_DOTEXE;
152extern PCSZ PCSZ_DOTCOM;
153extern PCSZ PCSZ_DOTCMD;
154extern PCSZ PCSZ_DOTBTM;
155extern PCSZ PCSZ_DOTBAT;
156extern PCSZ PCSZ_DOTLST;
157extern PCSZ PCSZ_DOTTLS;
158extern PCSZ PCSZ_DOTHLP;
159extern PCSZ PCSZ_DOTINF;
160extern PCSZ PCSZ_DOTMP3;
161extern PCSZ PCSZ_DOTMPG;
162extern PCSZ PCSZ_DOTMPEG;
163extern PCSZ PCSZ_DOTOGG;
164extern PCSZ PCSZ_DOTFLAC;
165extern PCSZ PCSZ_DOTJPEG;
166extern PCSZ PCSZ_DOTJPG;
167extern PCSZ PCSZ_DOTICO;
168extern PCSZ PCSZ_DOTPTR;
169extern PCSZ PCSZ_DOTBB2;
170extern PCSZ PCSZ_DOTBMP;
171extern PCSZ PCSZ_DOTCOMMENTS;
172extern PCSZ PCSZ_PATH;
173extern PCSZ PCSZ_LIBPATH;
174extern PCSZ PCSZ_WPURLDEFAULTSETTINGS;
175extern PCSZ WC_ARCCONTAINER;
176extern PCSZ WC_ARCSTATUS;
177extern PCSZ WC_AUTOVIEW;
178extern PCSZ WC_BUBBLE;
179extern PCSZ WC_COLLECTOR;
180extern PCSZ WC_COLSTATUS;
181extern PCSZ WC_DATABAR;
182extern PCSZ WC_DIRCONTAINER;
183extern PCSZ WC_DIRSTATUS;
184extern PCSZ WC_DRIVEBACK;
185extern PCSZ WC_DRIVEBUTTONS;
186extern PCSZ WC_ERRORWND;
187extern PCSZ WC_INIEDITOR;
188extern PCSZ WC_LED;
189extern PCSZ WC_MAINWND;
190extern PCSZ WC_MAINWND2;
191extern PCSZ WC_MINITIME;
192extern PCSZ WC_MLEEDITOR;
193extern PCSZ WC_NEWVIEW;
194extern PCSZ WC_OBJECTWINDOW;
195extern PCSZ WC_SEEALL;
196extern PCSZ WC_SEESTATUS;
197extern PCSZ WC_STATUS;
198extern PCSZ WC_TOOLBACK;
199extern PCSZ WC_TOOLBUTTONS;
200extern PCSZ WC_TREECONTAINER;
201extern PCSZ WC_TREEOPENBUTTON;
202extern PCSZ WC_TREESTATUS;
203extern PCSZ WC_VIEWSTATUS;
204extern BOOL fDontSuggestAgain;
205extern BOOL fInitialDriveScan;
206extern BOOL fAmAV2;
207extern BOOL fChangeTarget;
208extern BOOL fIniExisted;
209extern BOOL fLogFile;
210extern BOOL fProtectOnly;
211extern BOOL fReminimize;
212extern BOOL fWantFirstTimeInit;
213extern BOOL fUseShellEnv;
214extern BOOL fDontAskBzip;
215extern BOOL fDontAskGzip;
216extern HPOINTER hptrApp;
217extern HPOINTER hptrArc;
218extern HPOINTER hptrArrow;
219extern HPOINTER hptrArt;
220extern HPOINTER hptrBusy;
221extern HPOINTER hptrCDROM;
222extern HPOINTER hptrDrive;
223extern HPOINTER hptrEW;
224extern HPOINTER hptrFloppy;
225extern HPOINTER hptrNS;
226extern HPOINTER hptrRamdisk;
227extern HPOINTER hptrRemote;
228extern HPOINTER hptrRemovable;
229extern HPOINTER hptrVirtual;
230extern HPOINTER hptrZipstrm;
231extern CHAR *pFM2SaveDirectory;
232extern CHAR *pTmpDir;
233extern CHAR profile[CCHMAXPATH];
234extern CHAR *pLibPathStrict;
235extern ULONGLONG ullTmpSpaceNeeded;
236#ifdef INCL_DOSSEMAPHORES
237extern HMTX hmtxFM2Globals;
238extern HMTX hmtxFM2Delete;
239extern HMTX hmtxScanning;
240extern HMTX hmtxFiltering;
241extern HEV hevTreeCnrScanComplete;
242#endif
243
244#endif // INIT_H
Note: See TracBrowser for help on using the repository browser.