|
|
#ifndef __WIZARD_H
#define __WIZARD_H
#endif
#define STAGE_ENTRY 0
#define STAGE_LAYER1 1
#define STAGE_FILEMATCH 2
#define STAGE_SHIM1 3
#define STAGE_SHIM2 4
#define STAGE_SHIM3 5
#define STAGE_APPNAME 6
#define STAGE_DONE 7
#define STAGE_FINISH 8
#define STAGE_CANCEL -1
#define MAX_AUTO_MATCH 7
enum { TYPE_LAYER=0, TYPE_SHIM, TYPE_APPHELP, TYPE_FORCEDWORD=0xFFFFFFFF };
class CShimWizard { public:
HWND m_hDlg; UINT m_uType; DBRECORD m_Record; CSTRING m_szLongName; BOOL m_bManualMatch;
public:
void STDCALL WipeRecord(BOOL bMatching, BOOL bShims, BOOL bLayers, BOOL bAppHelp = FALSE); void STDCALL GrabMatchingInfo(void); void STDCALL GetFileAttributes(PMATCHENTRY pNew); void STDCALL AddMatchFile(PPMATCHENTRY, CSTRING & szFile); void STDCALL WalkDirectory(PMATCHENTRY * ppHead, LPCTSTR szDirectory, int nDepth);
CSTRING STDCALL ShortFile(CSTRING &); BOOL STDCALL InsertMatchingInfo(PMATCHENTRY pNew); //CSTRING STDCALL RelativePath(void);
BOOL STDCALL BeginWizard(HWND hParent); };
BOOL CALLBACK EntryPoint(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); BOOL CALLBACK GetAppName(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); BOOL CALLBACK SelectLayer(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); BOOL CALLBACK SelectMatching(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); BOOL CALLBACK SelectShims(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); BOOL CALLBACK SelectFiles(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); BOOL CALLBACK WizardDone(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); INT_PTR CALLBACK EditCmdLineDlgProc(HWND hdlg,UINT uMsg,WPARAM wParam,LPARAM lParam);
|