|
|
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 "Core/VolumeCreator.h"
14:
15: namespace TrueCrypt
16: {
17: class VolumeCreationWizard : public WizardFrame
18: {
19: public:
20: VolumeCreationWizard (wxWindow* parent);
21: ~VolumeCreationWizard ();
22:
23: protected:
24: struct Step
25: {
26: enum Enum
27: {
28: VolumeType,
29: VolumeLocation,
30: VolumeSize,
31: EncryptionOptions,
32: VolumePassword,
33: FormatOptions,
34: CreationProgress,
35: VolumeCreatedInfo
36: };
37: };
38:
39: void CreateVolume ();
40: WizardPage *GetPage (WizardStep step);
41: void OnAbortButtonClick (EventArgs &args);
42: void OnMouseMotion (wxMouseEvent& event);
43: void OnProgressTimer ();
44: void OnRandomPoolUpdateTimer ();
45: void OnThreadExiting (wxCommandEvent& event);
46: void OnVolumeCreatorFinished ();
47: WizardStep ProcessPageChangeRequest (bool forward);
48:
49: volatile bool AbortConfirmationPending;
50: volatile bool AbortRequested;
51: volatile bool CreationAborted;
52: auto_ptr <VolumeCreator> Creator;
53: bool DeviceWarningConfirmed;
54: bool DisplayKeyInfo;
55: auto_ptr <wxTimer> ProgressTimer;
56: auto_ptr <wxTimer> RandomPoolUpdateTimer;
57: shared_ptr <KeyfileList> Keyfiles;
58: bool QuickFormatEnabled;
59: shared_ptr <EncryptionAlgorithm> SelectedEncryptionAlgorithm;
60: uint32 SelectedFilesystemClusterSize;
61: VolumeCreationOptions::FilesystemType::Enum SelectedFilesystemType;
62: VolumePath SelectedVolumePath;
63: VolumeType::Enum SelectedVolumeType;
64: shared_ptr <VolumePassword> Password;
65: shared_ptr <Hash> SelectedHash;
66: uint64 VolumeSize;
67:
68: private:
69: void UpdateControls ();
70: };
71: }
72:
73: #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.