]>
Commit | Line | Data |
---|---|---|
b7301c43 RC |
1 | #ifndef CINSTALL_PROPSHEET_H |
2 | #define CINSTALL_PROPSHEET_H | |
3 | ||
4 | /* | |
5 | * Copyright (c) 2001, Gary R. Van Sickle. | |
6 | * | |
7 | * This program is free software; you can redistribute it and/or modify | |
8 | * it under the terms of the GNU General Public License as published by | |
9 | * the Free Software Foundation; either version 2 of the License, or | |
10 | * (at your option) any later version. | |
11 | * | |
12 | * A copy of the GNU General Public License can be found at | |
13 | * http://www.gnu.org/ | |
14 | * | |
15 | * Written by Gary R. Van Sickle <g.r.vansickle@worldnet.att.net> | |
16 | * | |
17 | */ | |
18 | ||
19 | // This is the header for the PropSheet class. This class encapsulates | |
20 | // a Windows property sheet / wizard and interfaces with the PropertyPage class. | |
21 | // It's named PropSheet instead of PropertySheet because the latter conflicts with | |
22 | // the Windows function of the same name. | |
23 | ||
24 | ||
25 | #include <windows.h> | |
26 | #include <prsht.h> | |
27 | ||
28 | #include "window.h" | |
29 | ||
30 | class PropertyPage; | |
31 | ||
32 | class PropSheet:public Window | |
33 | { | |
34 | PropertyPage *PropertyPages[MAXPROPPAGES]; | |
35 | int NumPropPages; | |
36 | ||
37 | HPROPSHEETPAGE *PageHandles; | |
38 | HPROPSHEETPAGE *CreatePages (); | |
39 | ||
40 | public: | |
41 | PropSheet (); | |
42 | virtual ~ PropSheet (); | |
43 | ||
44 | // Should be private and friended to PropertyPage | |
45 | void SetHWNDFromPage (HWND h); | |
46 | ||
47 | virtual bool Create (const Window * Parent = NULL, | |
48 | DWORD Style = | |
49 | WS_OVERLAPPEDWINDOW | WS_VISIBLE | WS_CLIPCHILDREN); | |
50 | ||
51 | void AddPage (PropertyPage * p); | |
52 | ||
53 | bool SetActivePage (int i); | |
54 | bool SetActivePageByID (int resource_id); | |
55 | void SetButtons (DWORD flags); | |
56 | void PressButton (int button); | |
57 | }; | |
58 | ||
59 | #endif // CINSTALL_PROPSHEET_H |