|
|
1.1 root 1: /*
2: Copyright (c) 2008 TrueCrypt Foundation. All rights reserved.
3:
4: Governed by the TrueCrypt License 2.4 the full text of which is contained
5: in the file License.txt included in TrueCrypt binary and source code
6: distribution packages.
7: */
8:
9: #ifndef TC_HEADER_Main_Forms_VolumeCreationWizard
10: #define TC_HEADER_Main_Forms_VolumeCreationWizard
11:
12: #include "WizardFrame.h"
13: #include "TravelerMountOptionsWizardPage.h"
14: #include "Core/VolumeCreator.h"
15:
16: namespace TrueCrypt
17: {
18: class VolumeCreationWizard : public WizardFrame
19: {
20: public:
21: VolumeCreationWizard (wxWindow* parent);
22: ~VolumeCreationWizard ();
23:
24: protected:
25: struct Step
26: {
27: enum Enum
28: {
29: VolumeType,
30: VolumeLocation,
31: VolumeSize,
32: EncryptionOptions,
33: VolumePassword,
34: FormatOptions,
35: CreationProgress,
36: VolumeCreatedInfo
37: };
38: };
39:
40: void CreateVolume ();
41: WizardPage *GetPage (WizardStep step);
42: void OnAbortButtonClick (EventArgs &args);
43: void OnMouseMotion (wxMouseEvent& event);
44: void OnProgressTimer ();
45: void OnRandomPoolUpdateTimer ();
46: void OnThreadExiting (wxCommandEvent& event);
47: void OnVolumeCreatorFinished ();
48: WizardStep ProcessPageChangeRequest (bool forward);
49:
50: volatile bool AbortConfirmationPending;
51: volatile bool AbortRequested;
52: volatile bool CreationAborted;
53: auto_ptr <VolumeCreator> Creator;
54: bool DeviceWarningConfirmed;
55: bool DisplayKeyInfo;
56: auto_ptr <wxTimer> ProgressTimer;
57: auto_ptr <wxTimer> RandomPoolUpdateTimer;
58: shared_ptr <KeyfileList> Keyfiles;
59: bool QuickFormatEnabled;
60: shared_ptr <EncryptionAlgorithm> SelectedEncryptionAlgorithm;
61: uint32 SelectedFilesystemClusterSize;
62: VolumeCreationOptions::FilesystemType::Enum SelectedFilesystemType;
63: VolumePath SelectedVolumePath;
64: VolumeType::Enum SelectedVolumeType;
65: shared_ptr <VolumePassword> Password;
66: shared_ptr <Hash> SelectedHash;
67: uint64 VolumeSize;
68:
69: private:
70: void UpdateControls ();
71: };
72: }
73:
74: #endif // TC_HEADER_Main_Forms_VolumeCreationWizard
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.