Annotation of truecrypt/main/forms/forms.cpp, revision 1.1.1.1

1.1       root        1: ///////////////////////////////////////////////////////////////////////////
                      2: // C++ code generated with wxFormBuilder
                      3: // http://www.wxformbuilder.org/
                      4: //
                      5: // PLEASE DO "NOT" EDIT THIS FILE!
                      6: ///////////////////////////////////////////////////////////////////////////
                      7: 
                      8: #include "System.h"
                      9: 
                     10: #include "Forms.h"
                     11: 
                     12: ///////////////////////////////////////////////////////////////////////////
                     13: using namespace TrueCrypt;
                     14: 
                     15: MainFrameBase::MainFrameBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style )
                     16: {
                     17:        this->SetSizeHints( wxSize( -1,496 ), wxDefaultSize );
                     18:        
                     19:        MainMenuBar = new wxMenuBar( 0 );
                     20:        VolumesMenu = new wxMenu();
                     21:        MountVolumeMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Mount Volume") ) , wxEmptyString, wxITEM_NORMAL );
                     22:        VolumesMenu->Append( MountVolumeMenuItem );
                     23:        
                     24:        wxMenuItem* AutoMountDevicesMenuItem;
                     25:        AutoMountDevicesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Auto-Mount All Device-Hosted Volumes") ) , wxEmptyString, wxITEM_NORMAL );
                     26:        VolumesMenu->Append( AutoMountDevicesMenuItem );
                     27:        
                     28:        VolumesMenu->AppendSeparator();
                     29:        
                     30:        DismountVolumeMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Dismount Volume") ) , wxEmptyString, wxITEM_NORMAL );
                     31:        VolumesMenu->Append( DismountVolumeMenuItem );
                     32:        
                     33:        DismountAllMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Dismount All Mounted Volumes") ) , wxEmptyString, wxITEM_NORMAL );
                     34:        VolumesMenu->Append( DismountAllMenuItem );
                     35:        
                     36:        VolumesMenu->AppendSeparator();
                     37:        
                     38:        wxMenuItem* CreateNewVolumeMenuItem;
                     39:        CreateNewVolumeMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Create New Volume...") ) , wxEmptyString, wxITEM_NORMAL );
                     40:        VolumesMenu->Append( CreateNewVolumeMenuItem );
                     41:        
                     42:        wxMenuItem* ChangePasswordMenuItem;
                     43:        ChangePasswordMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Change Volume Password...") ) , wxEmptyString, wxITEM_NORMAL );
                     44:        VolumesMenu->Append( ChangePasswordMenuItem );
                     45:        
                     46:        wxMenuItem* ChangePkcs5PrfMenuItem;
                     47:        ChangePkcs5PrfMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Change Header Key Derivation Algorithm...") ) , wxEmptyString, wxITEM_NORMAL );
                     48:        VolumesMenu->Append( ChangePkcs5PrfMenuItem );
                     49:        
                     50:        VolumesMenu->AppendSeparator();
                     51:        
                     52:        VolumePropertiesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Volume Properties...") ) , wxEmptyString, wxITEM_NORMAL );
                     53:        VolumesMenu->Append( VolumePropertiesMenuItem );
                     54:        
                     55:        MainMenuBar->Append( VolumesMenu, _("&Volumes") );
                     56:        
                     57:        KeyfilesMenu = new wxMenu();
                     58:        wxMenuItem* ChangeKeyfilesMenuItem;
                     59:        ChangeKeyfilesMenuItem = new wxMenuItem( KeyfilesMenu, wxID_ANY, wxString( _("Add/Remove Keyfiles to/from Volume...") ) , wxEmptyString, wxITEM_NORMAL );
                     60:        KeyfilesMenu->Append( ChangeKeyfilesMenuItem );
                     61:        
                     62:        wxMenuItem* RemoveKeyfilesMenuItem;
                     63:        RemoveKeyfilesMenuItem = new wxMenuItem( KeyfilesMenu, wxID_ANY, wxString( _("Remove All Keyfiles from Volume...") ) , wxEmptyString, wxITEM_NORMAL );
                     64:        KeyfilesMenu->Append( RemoveKeyfilesMenuItem );
                     65:        
                     66:        KeyfilesMenu->AppendSeparator();
                     67:        
                     68:        wxMenuItem* SetDefaultKeyfilesMenuItem;
                     69:        SetDefaultKeyfilesMenuItem = new wxMenuItem( KeyfilesMenu, wxID_ANY, wxString( _("Set Default Keyfiles/Paths...") ) , wxEmptyString, wxITEM_NORMAL );
                     70:        KeyfilesMenu->Append( SetDefaultKeyfilesMenuItem );
                     71:        
                     72:        MainMenuBar->Append( KeyfilesMenu, _("&Keyfiles") );
                     73:        
                     74:        FavoritesMenu = new wxMenu();
                     75:        AddToFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("Add Selected Volume...") ) , wxEmptyString, wxITEM_NORMAL );
                     76:        FavoritesMenu->Append( AddToFavoritesMenuItem );
                     77:        
                     78:        AddAllMountedToFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("Add All Mounted Volumes...") ) , wxEmptyString, wxITEM_NORMAL );
                     79:        FavoritesMenu->Append( AddAllMountedToFavoritesMenuItem );
                     80:        
                     81:        wxMenuItem* OrganizeFavoritesMenuItem;
                     82:        OrganizeFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("Organize Favorite Volumes...") ) , wxEmptyString, wxITEM_NORMAL );
                     83:        FavoritesMenu->Append( OrganizeFavoritesMenuItem );
                     84:        
                     85:        FavoritesMenu->AppendSeparator();
                     86:        
                     87:        wxMenuItem* MountAllFavoritesMenuItem;
                     88:        MountAllFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("Mount All Favorite Volumes") ) , wxEmptyString, wxITEM_NORMAL );
                     89:        FavoritesMenu->Append( MountAllFavoritesMenuItem );
                     90:        
                     91:        FavoritesMenu->AppendSeparator();
                     92:        
                     93:        MainMenuBar->Append( FavoritesMenu, _("&Favorites") );
                     94:        
                     95:        ToolsMenu = new wxMenu();
                     96:        wxMenuItem* EncryptionTestMenuItem;
                     97:        EncryptionTestMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Test Vectors...") ) , wxEmptyString, wxITEM_NORMAL );
                     98:        ToolsMenu->Append( EncryptionTestMenuItem );
                     99:        
                    100:        ToolsMenu->AppendSeparator();
                    101:        
                    102:        wxMenuItem* VolumeCreationWizardMenuItem;
                    103:        VolumeCreationWizardMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Volume Creation Wizard") ) , wxEmptyString, wxITEM_NORMAL );
                    104:        ToolsMenu->Append( VolumeCreationWizardMenuItem );
                    105:        
                    106:        TravelerDiskWizardMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Traveller Disk Wizard...") ) , wxEmptyString, wxITEM_NORMAL );
                    107:        ToolsMenu->Append( TravelerDiskWizardMenuItem );
                    108:        
                    109:        ToolsMenu->AppendSeparator();
                    110:        
                    111:        BackupVolumeHeadersMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Backup Volume Header...") ) , wxEmptyString, wxITEM_NORMAL );
                    112:        ToolsMenu->Append( BackupVolumeHeadersMenuItem );
                    113:        
                    114:        RestoreVolumeHeaderMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Restore Volume Header...") ) , wxEmptyString, wxITEM_NORMAL );
                    115:        ToolsMenu->Append( RestoreVolumeHeaderMenuItem );
                    116:        
                    117:        ToolsMenu->AppendSeparator();
                    118:        
                    119:        WipeCachedPasswordsMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Wipe Cached Passwords") ) , wxEmptyString, wxITEM_NORMAL );
                    120:        ToolsMenu->Append( WipeCachedPasswordsMenuItem );
                    121:        
                    122:        MainMenuBar->Append( ToolsMenu, _("T&ools") );
                    123:        
                    124:        SettingsMenu = new wxMenu();
                    125:        HotkeysMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("Hotkeys...") ) , wxEmptyString, wxITEM_NORMAL );
                    126:        SettingsMenu->Append( HotkeysMenuItem );
                    127:        
                    128:        wxMenuItem* DefaultKeyfilesMenuItem;
                    129:        DefaultKeyfilesMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("Default Keyfiles...") ) , wxEmptyString, wxITEM_NORMAL );
                    130:        SettingsMenu->Append( DefaultKeyfilesMenuItem );
                    131:        
                    132:        SettingsMenu->AppendSeparator();
                    133:        
                    134:        PreferencesMenuItem = new wxMenuItem( SettingsMenu, wxID_PREFERENCES, wxString( _("&Preferences...") ) , wxEmptyString, wxITEM_NORMAL );
                    135:        SettingsMenu->Append( PreferencesMenuItem );
                    136:        
                    137:        MainMenuBar->Append( SettingsMenu, _("Setti&ngs") );
                    138:        
                    139:        HelpMenu = new wxMenu();
                    140:        wxMenuItem* UserGuideMenuItem;
                    141:        UserGuideMenuItem = new wxMenuItem( HelpMenu, wxID_HELP, wxString( _("User's Guide") ) , wxEmptyString, wxITEM_NORMAL );
                    142:        HelpMenu->Append( UserGuideMenuItem );
                    143:        
                    144:        wxMenuItem* OnlineHelpMenuItem;
                    145:        OnlineHelpMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Online Help") ) , wxEmptyString, wxITEM_NORMAL );
                    146:        HelpMenu->Append( OnlineHelpMenuItem );
                    147:        
                    148:        wxMenuItem* BeginnersTutorialMenuItem;
                    149:        BeginnersTutorialMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Beginner's Tutorial") ) , wxEmptyString, wxITEM_NORMAL );
                    150:        HelpMenu->Append( BeginnersTutorialMenuItem );
                    151:        
                    152:        wxMenuItem* FaqMenuItem;
                    153:        FaqMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Frequently Asked Questions") ) , wxEmptyString, wxITEM_NORMAL );
                    154:        HelpMenu->Append( FaqMenuItem );
                    155:        
                    156:        HelpMenu->AppendSeparator();
                    157:        
                    158:        wxMenuItem* WebsiteMenuItem;
                    159:        WebsiteMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("TrueCrypt Website") ) , wxEmptyString, wxITEM_NORMAL );
                    160:        HelpMenu->Append( WebsiteMenuItem );
                    161:        
                    162:        wxMenuItem* DownloadsMenuItem;
                    163:        DownloadsMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Downloads") ) , wxEmptyString, wxITEM_NORMAL );
                    164:        HelpMenu->Append( DownloadsMenuItem );
                    165:        
                    166:        wxMenuItem* NewsMenuItem;
                    167:        NewsMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("News") ) , wxEmptyString, wxITEM_NORMAL );
                    168:        HelpMenu->Append( NewsMenuItem );
                    169:        
                    170:        HelpMenu->AppendSeparator();
                    171:        
                    172:        wxMenuItem* VersionHistoryMenuItem;
                    173:        VersionHistoryMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Version History") ) , wxEmptyString, wxITEM_NORMAL );
                    174:        HelpMenu->Append( VersionHistoryMenuItem );
                    175:        
                    176:        wxMenuItem* LegalNoticesMenuItem;
                    177:        LegalNoticesMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Legal Notices") ) , wxEmptyString, wxITEM_NORMAL );
                    178:        HelpMenu->Append( LegalNoticesMenuItem );
                    179:        
                    180:        HelpMenu->AppendSeparator();
                    181:        
                    182:        wxMenuItem* ReportBugMenuItem;
                    183:        ReportBugMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Report a Bug...") ) , wxEmptyString, wxITEM_NORMAL );
                    184:        HelpMenu->Append( ReportBugMenuItem );
                    185:        
                    186:        wxMenuItem* ForumsMenuItem;
                    187:        ForumsMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Forums") ) , wxEmptyString, wxITEM_NORMAL );
                    188:        HelpMenu->Append( ForumsMenuItem );
                    189:        
                    190:        wxMenuItem* ContactMenuItem;
                    191:        ContactMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Contact...") ) , wxEmptyString, wxITEM_NORMAL );
                    192:        HelpMenu->Append( ContactMenuItem );
                    193:        
                    194:        HelpMenu->AppendSeparator();
                    195:        
                    196:        wxMenuItem* DonationsMenuItem;
                    197:        DonationsMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Donations...") ) , wxEmptyString, wxITEM_NORMAL );
                    198:        HelpMenu->Append( DonationsMenuItem );
                    199:        
                    200:        HelpMenu->AppendSeparator();
                    201:        
                    202:        wxMenuItem* AboutMenuItem;
                    203:        AboutMenuItem = new wxMenuItem( HelpMenu, wxID_ABOUT, wxString( _("About...") ) , wxEmptyString, wxITEM_NORMAL );
                    204:        HelpMenu->Append( AboutMenuItem );
                    205:        
                    206:        MainMenuBar->Append( HelpMenu, _("Help") );
                    207:        
                    208:        this->SetMenuBar( MainMenuBar );
                    209:        
                    210:        wxBoxSizer* bSizer1;
                    211:        bSizer1 = new wxBoxSizer( wxVERTICAL );
                    212:        
                    213:        MainPanel = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                    214:        wxBoxSizer* bSizer2;
                    215:        bSizer2 = new wxBoxSizer( wxVERTICAL );
                    216:        
                    217:        wxBoxSizer* bSizer48;
                    218:        bSizer48 = new wxBoxSizer( wxVERTICAL );
                    219:        
                    220:        wxStaticBoxSizer* sbSizer1;
                    221:        sbSizer1 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL );
                    222:        
                    223:        SlotListCtrl = new wxListCtrl( MainPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SINGLE_SEL|wxLC_VRULES|wxSUNKEN_BORDER );
                    224:        SlotListCtrl->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxEmptyString ) );
                    225:        
                    226:        sbSizer1->Add( SlotListCtrl, 1, wxALL|wxEXPAND, 5 );
                    227:        
                    228:        bSizer48->Add( sbSizer1, 1, wxEXPAND, 5 );
                    229:        
                    230:        LowStaticBoxSizer = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL );
                    231:        
                    232:        HigherButtonSizer = new wxBoxSizer( wxVERTICAL );
                    233:        
                    234:        LowStaticBoxSizer->Add( HigherButtonSizer, 0, wxEXPAND|wxTOP, 2 );
                    235:        
                    236:        wxGridSizer* gSizer1;
                    237:        gSizer1 = new wxGridSizer( 1, 3, 0, 0 );
                    238:        
                    239:        wxBoxSizer* bSizer17;
                    240:        bSizer17 = new wxBoxSizer( wxVERTICAL );
                    241:        
                    242:        bSizer17->SetMinSize( wxSize( 138,34 ) ); 
                    243:        CreateVolumeButton = new wxButton( MainPanel, wxID_ANY, _("&Create Volume"), wxDefaultPosition, wxDefaultSize, 0 );
                    244:        bSizer17->Add( CreateVolumeButton, 1, wxALL|wxEXPAND, 5 );
                    245:        
                    246:        gSizer1->Add( bSizer17, 0, 0, 5 );
                    247:        
                    248:        wxBoxSizer* bSizer18;
                    249:        bSizer18 = new wxBoxSizer( wxVERTICAL );
                    250:        
                    251:        bSizer18->SetMinSize( wxSize( 138,34 ) ); 
                    252:        VolumePropertiesButton = new wxButton( MainPanel, wxID_ANY, _("&Volume Properties..."), wxDefaultPosition, wxDefaultSize, 0 );
                    253:        bSizer18->Add( VolumePropertiesButton, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxEXPAND, 5 );
                    254:        
                    255:        gSizer1->Add( bSizer18, 0, wxALIGN_CENTER_HORIZONTAL, 5 );
                    256:        
                    257:        wxBoxSizer* bSizer19;
                    258:        bSizer19 = new wxBoxSizer( wxVERTICAL );
                    259:        
                    260:        bSizer19->SetMinSize( wxSize( 138,34 ) ); 
                    261:        WipeCacheButton = new wxButton( MainPanel, wxID_ANY, _("&Wipe Cache"), wxDefaultPosition, wxDefaultSize, 0 );
                    262:        bSizer19->Add( WipeCacheButton, 1, wxALL|wxALIGN_RIGHT|wxEXPAND, 5 );
                    263:        
                    264:        gSizer1->Add( bSizer19, 0, wxALIGN_RIGHT, 5 );
                    265:        
                    266:        LowStaticBoxSizer->Add( gSizer1, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
                    267:        
                    268:        
                    269:        LowStaticBoxSizer->Add( 0, 0, 0, 0, 5 );
                    270:        
                    271:        VolumeStaticBoxSizer = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, _("Volume") ), wxVERTICAL );
                    272:        
                    273:        VolumeGridBagSizer = new wxGridBagSizer( 0, 0 );
                    274:        VolumeGridBagSizer->AddGrowableCol( 1 );
                    275:        VolumeGridBagSizer->AddGrowableRow( 0 );
                    276:        VolumeGridBagSizer->SetFlexibleDirection( wxBOTH );
                    277:        VolumeGridBagSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
                    278:        
                    279:        LogoBitmap = new wxStaticBitmap( MainPanel, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER );
                    280:        LogoBitmap->SetMinSize( wxSize( 42,52 ) );
                    281:        
                    282:        VolumeGridBagSizer->Add( LogoBitmap, wxGBPosition( 0, 0 ), wxGBSpan( 2, 1 ), wxALIGN_CENTER_VERTICAL|wxALL, 5 );
                    283:        
                    284:        VolumePathComboBox = new wxComboBox( MainPanel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_DROPDOWN ); 
                    285:        VolumeGridBagSizer->Add( VolumePathComboBox, wxGBPosition( 0, 1 ), wxGBSpan( 1, 2 ), wxEXPAND|wxALL, 5 );
                    286:        
                    287:        wxBoxSizer* bSizer191;
                    288:        bSizer191 = new wxBoxSizer( wxVERTICAL );
                    289:        
                    290:        bSizer191->SetMinSize( wxSize( 138,34 ) ); 
                    291:        SelectFileButton = new wxButton( MainPanel, wxID_ANY, _("Select &File..."), wxDefaultPosition, wxDefaultSize, 0 );
                    292:        bSizer191->Add( SelectFileButton, 1, wxALL|wxEXPAND, 5 );
                    293:        
                    294:        VolumeGridBagSizer->Add( bSizer191, wxGBPosition( 0, 3 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
                    295:        
                    296:        NoHistoryCheckBox = new wxCheckBox( MainPanel, wxID_ANY, _("&Never save history"), wxDefaultPosition, wxDefaultSize, 0 );
                    297:        
                    298:        VolumeGridBagSizer->Add( NoHistoryCheckBox, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxBOTTOM|wxRIGHT|wxLEFT, 5 );
                    299:        
                    300:        wxBoxSizer* bSizer20;
                    301:        bSizer20 = new wxBoxSizer( wxVERTICAL );
                    302:        
                    303:        bSizer20->SetMinSize( wxSize( 138,34 ) ); 
                    304:        VolumeToolsButton = new wxButton( MainPanel, wxID_ANY, _("Volume &Tools..."), wxDefaultPosition, wxDefaultSize, 0 );
                    305:        bSizer20->Add( VolumeToolsButton, 1, wxALL|wxEXPAND, 5 );
                    306:        
                    307:        VolumeGridBagSizer->Add( bSizer20, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxALIGN_RIGHT, 5 );
                    308:        
                    309:        wxBoxSizer* bSizer21;
                    310:        bSizer21 = new wxBoxSizer( wxVERTICAL );
                    311:        
                    312:        bSizer21->SetMinSize( wxSize( 138,34 ) ); 
                    313:        SelectDeviceButton = new wxButton( MainPanel, wxID_ANY, _("Select D&evice..."), wxDefaultPosition, wxDefaultSize, 0 );
                    314:        bSizer21->Add( SelectDeviceButton, 1, wxEXPAND|wxALL, 5 );
                    315:        
                    316:        VolumeGridBagSizer->Add( bSizer21, wxGBPosition( 1, 3 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 );
                    317:        
                    318:        VolumeStaticBoxSizer->Add( VolumeGridBagSizer, 1, wxEXPAND|wxALL, 4 );
                    319:        
                    320:        LowStaticBoxSizer->Add( VolumeStaticBoxSizer, 1, wxEXPAND, 5 );
                    321:        
                    322:        
                    323:        LowStaticBoxSizer->Add( 0, 0, 0, 0, 5 );
                    324:        
                    325:        wxGridSizer* gSizer2;
                    326:        gSizer2 = new wxGridSizer( 1, 4, 0, 0 );
                    327:        
                    328:        wxStaticBoxSizer* sbSizer4;
                    329:        sbSizer4 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL );
                    330:        
                    331:        sbSizer4->SetMinSize( wxSize( 139,-1 ) ); 
                    332:        VolumeButton = new wxButton( MainPanel, wxID_ANY, _("&Mount"), wxDefaultPosition, wxDefaultSize, 0 );
                    333:        VolumeButton->SetDefault(); 
                    334:        VolumeButton->SetMinSize( wxSize( -1,32 ) );
                    335:        
                    336:        sbSizer4->Add( VolumeButton, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxTOP, 2 );
                    337:        
                    338:        gSizer2->Add( sbSizer4, 1, wxEXPAND, 0 );
                    339:        
                    340:        wxStaticBoxSizer* sbSizer41;
                    341:        sbSizer41 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL );
                    342:        
                    343:        MountAllDevicesButton = new wxButton( MainPanel, wxID_ANY, _("&Auto-Mount Devices"), wxDefaultPosition, wxDefaultSize, 0 );
                    344:        MountAllDevicesButton->SetMinSize( wxSize( -1,32 ) );
                    345:        
                    346:        sbSizer41->Add( MountAllDevicesButton, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxTOP, 2 );
                    347:        
                    348:        gSizer2->Add( sbSizer41, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND, 5 );
                    349:        
                    350:        wxStaticBoxSizer* sbSizer42;
                    351:        sbSizer42 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL );
                    352:        
                    353:        DismountAllButton = new wxButton( MainPanel, wxID_ANY, _("Di&smount All"), wxDefaultPosition, wxDefaultSize, 0 );
                    354:        DismountAllButton->SetMinSize( wxSize( -1,32 ) );
                    355:        
                    356:        sbSizer42->Add( DismountAllButton, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxTOP, 2 );
                    357:        
                    358:        gSizer2->Add( sbSizer42, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND, 5 );
                    359:        
                    360:        wxStaticBoxSizer* sbSizer43;
                    361:        sbSizer43 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL );
                    362:        
                    363:        ExitButton = new wxButton( MainPanel, wxID_ANY, _("E&xit"), wxDefaultPosition, wxDefaultSize, 0 );
                    364:        ExitButton->SetMinSize( wxSize( -1,32 ) );
                    365:        
                    366:        sbSizer43->Add( ExitButton, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxTOP, 2 );
                    367:        
                    368:        gSizer2->Add( sbSizer43, 1, wxALIGN_RIGHT|wxEXPAND, 5 );
                    369:        
                    370:        LowStaticBoxSizer->Add( gSizer2, 0, wxEXPAND, 5 );
                    371:        
                    372:        bSizer48->Add( LowStaticBoxSizer, 0, wxEXPAND, 5 );
                    373:        
                    374:        bSizer2->Add( bSizer48, 1, wxEXPAND, 5 );
                    375:        
                    376:        MainPanel->SetSizer( bSizer2 );
                    377:        MainPanel->Layout();
                    378:        bSizer2->Fit( MainPanel );
                    379:        bSizer1->Add( MainPanel, 1, wxEXPAND, 0 );
                    380:        
                    381:        this->SetSizer( bSizer1 );
                    382:        this->Layout();
                    383:        
                    384:        this->Centre( wxBOTH );
                    385:        
                    386:        // Connect Events
                    387:        this->Connect( wxEVT_ACTIVATE, wxActivateEventHandler( MainFrameBase::OnActivate ) );
                    388:        this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainFrameBase::OnClose ) );
                    389:        this->Connect( MountVolumeMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnMountVolumeMenuItemSelected ) );
                    390:        this->Connect( AutoMountDevicesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnMountAllDevicesButtonClick ) );
                    391:        this->Connect( DismountVolumeMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDismountVolumeMenuItemSelected ) );
                    392:        this->Connect( DismountAllMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDismountAllButtonClick ) );
                    393:        this->Connect( CreateNewVolumeMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnCreateVolumeButtonClick ) );
                    394:        this->Connect( ChangePasswordMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnChangePasswordMenuItemSelected ) );
                    395:        this->Connect( ChangePkcs5PrfMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnChangePkcs5PrfMenuItemSelected ) );
                    396:        this->Connect( VolumePropertiesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnVolumePropertiesButtonClick ) );
                    397:        this->Connect( ChangeKeyfilesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnChangeKeyfilesMenuItemSelected ) );
                    398:        this->Connect( RemoveKeyfilesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnRemoveKeyfilesMenuItemSelected ) );
                    399:        this->Connect( SetDefaultKeyfilesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDefaultKeyfilesMenuItemSelected ) );
                    400:        this->Connect( AddToFavoritesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnAddToFavoritesMenuItemSelected ) );
                    401:        this->Connect( AddAllMountedToFavoritesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnAddAllMountedToFavoritesMenuItemSelected ) );
                    402:        this->Connect( OrganizeFavoritesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnOrganizeFavoritesMenuItemSelected ) );
                    403:        this->Connect( MountAllFavoritesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnMountAllFavoritesMenuItemSelected ) );
                    404:        this->Connect( EncryptionTestMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnEncryptionTestMenuItemSelected ) );
                    405:        this->Connect( VolumeCreationWizardMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnCreateVolumeButtonClick ) );
                    406:        this->Connect( TravelerDiskWizardMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnTravelerDiskWizardMenuItemSelected ) );
                    407:        this->Connect( BackupVolumeHeadersMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnBackupVolumeHeadersMenuItemSelected ) );
                    408:        this->Connect( RestoreVolumeHeaderMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnRestoreVolumeHeaderMenuItemSelected ) );
                    409:        this->Connect( WipeCachedPasswordsMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnWipeCacheButtonClick ) );
                    410:        this->Connect( HotkeysMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnHotkeysMenuItemSelected ) );
                    411:        this->Connect( DefaultKeyfilesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDefaultKeyfilesMenuItemSelected ) );
                    412:        this->Connect( PreferencesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnPreferencesMenuItemSelected ) );
                    413:        this->Connect( UserGuideMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnUserGuideMenuItemSelected ) );
                    414:        this->Connect( OnlineHelpMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnOnlineHelpMenuItemSelected ) );
                    415:        this->Connect( BeginnersTutorialMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnBeginnersTutorialMenuItemSelected ) );
                    416:        this->Connect( FaqMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnFaqMenuItemSelected ) );
                    417:        this->Connect( WebsiteMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnWebsiteMenuItemSelected ) );
                    418:        this->Connect( DownloadsMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDownloadsMenuItemSelected ) );
                    419:        this->Connect( NewsMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnNewsMenuItemSelected ) );
                    420:        this->Connect( VersionHistoryMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnVersionHistoryMenuItemSelected ) );
                    421:        this->Connect( LegalNoticesMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnLegalNoticesMenuItemSelected ) );
                    422:        this->Connect( ReportBugMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnReportBugMenuItemSelected ) );
                    423:        this->Connect( ForumsMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnForumsMenuItemSelected ) );
                    424:        this->Connect( ContactMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnContactMenuItemSelected ) );
                    425:        this->Connect( DonationsMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDonationsMenuItemSelected ) );
                    426:        this->Connect( AboutMenuItem->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnAboutMenuItemSelected ) );
                    427:        SlotListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_ACTIVATED, wxListEventHandler( MainFrameBase::OnListItemActivated ), NULL, this );
                    428:        SlotListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( MainFrameBase::OnListItemDeselected ), NULL, this );
                    429:        SlotListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK, wxListEventHandler( MainFrameBase::OnListItemRightClick ), NULL, this );
                    430:        SlotListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( MainFrameBase::OnListItemSelected ), NULL, this );
                    431:        CreateVolumeButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnCreateVolumeButtonClick ), NULL, this );
                    432:        VolumePropertiesButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnVolumePropertiesButtonClick ), NULL, this );
                    433:        WipeCacheButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnWipeCacheButtonClick ), NULL, this );
                    434:        LogoBitmap->Connect( wxEVT_LEFT_DOWN, wxMouseEventHandler( MainFrameBase::OnLogoBitmapClick ), NULL, this );
                    435:        SelectFileButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnSelectFileButtonClick ), NULL, this );
                    436:        NoHistoryCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( MainFrameBase::OnNoHistoryCheckBoxClick ), NULL, this );
                    437:        VolumeToolsButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnVolumeToolsButtonClick ), NULL, this );
                    438:        SelectDeviceButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnSelectDeviceButtonClick ), NULL, this );
                    439:        VolumeButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnVolumeButtonClick ), NULL, this );
                    440:        MountAllDevicesButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnMountAllDevicesButtonClick ), NULL, this );
                    441:        DismountAllButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnDismountAllButtonClick ), NULL, this );
                    442:        ExitButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnExitButtonClick ), NULL, this );
                    443: }
                    444: 
                    445: MainFrameBase::~MainFrameBase()
                    446: {
                    447:        // Disconnect Events
                    448:        this->Disconnect( wxEVT_ACTIVATE, wxActivateEventHandler( MainFrameBase::OnActivate ) );
                    449:        this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainFrameBase::OnClose ) );
                    450:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnMountVolumeMenuItemSelected ) );
                    451:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnMountAllDevicesButtonClick ) );
                    452:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDismountVolumeMenuItemSelected ) );
                    453:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDismountAllButtonClick ) );
                    454:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnCreateVolumeButtonClick ) );
                    455:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnChangePasswordMenuItemSelected ) );
                    456:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnChangePkcs5PrfMenuItemSelected ) );
                    457:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnVolumePropertiesButtonClick ) );
                    458:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnChangeKeyfilesMenuItemSelected ) );
                    459:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnRemoveKeyfilesMenuItemSelected ) );
                    460:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDefaultKeyfilesMenuItemSelected ) );
                    461:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnAddToFavoritesMenuItemSelected ) );
                    462:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnAddAllMountedToFavoritesMenuItemSelected ) );
                    463:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnOrganizeFavoritesMenuItemSelected ) );
                    464:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnMountAllFavoritesMenuItemSelected ) );
                    465:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnEncryptionTestMenuItemSelected ) );
                    466:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnCreateVolumeButtonClick ) );
                    467:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnTravelerDiskWizardMenuItemSelected ) );
                    468:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnBackupVolumeHeadersMenuItemSelected ) );
                    469:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnRestoreVolumeHeaderMenuItemSelected ) );
                    470:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnWipeCacheButtonClick ) );
                    471:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnHotkeysMenuItemSelected ) );
                    472:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDefaultKeyfilesMenuItemSelected ) );
                    473:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnPreferencesMenuItemSelected ) );
                    474:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnUserGuideMenuItemSelected ) );
                    475:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnOnlineHelpMenuItemSelected ) );
                    476:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnBeginnersTutorialMenuItemSelected ) );
                    477:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnFaqMenuItemSelected ) );
                    478:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnWebsiteMenuItemSelected ) );
                    479:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDownloadsMenuItemSelected ) );
                    480:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnNewsMenuItemSelected ) );
                    481:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnVersionHistoryMenuItemSelected ) );
                    482:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnLegalNoticesMenuItemSelected ) );
                    483:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnReportBugMenuItemSelected ) );
                    484:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnForumsMenuItemSelected ) );
                    485:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnContactMenuItemSelected ) );
                    486:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnDonationsMenuItemSelected ) );
                    487:        this->Disconnect( wxID_ANY, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( MainFrameBase::OnAboutMenuItemSelected ) );
                    488:        SlotListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_ACTIVATED, wxListEventHandler( MainFrameBase::OnListItemActivated ), NULL, this );
                    489:        SlotListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( MainFrameBase::OnListItemDeselected ), NULL, this );
                    490:        SlotListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_RIGHT_CLICK, wxListEventHandler( MainFrameBase::OnListItemRightClick ), NULL, this );
                    491:        SlotListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( MainFrameBase::OnListItemSelected ), NULL, this );
                    492:        CreateVolumeButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnCreateVolumeButtonClick ), NULL, this );
                    493:        VolumePropertiesButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnVolumePropertiesButtonClick ), NULL, this );
                    494:        WipeCacheButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnWipeCacheButtonClick ), NULL, this );
                    495:        LogoBitmap->Disconnect( wxEVT_LEFT_DOWN, wxMouseEventHandler( MainFrameBase::OnLogoBitmapClick ), NULL, this );
                    496:        SelectFileButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnSelectFileButtonClick ), NULL, this );
                    497:        NoHistoryCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( MainFrameBase::OnNoHistoryCheckBoxClick ), NULL, this );
                    498:        VolumeToolsButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnVolumeToolsButtonClick ), NULL, this );
                    499:        SelectDeviceButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnSelectDeviceButtonClick ), NULL, this );
                    500:        VolumeButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnVolumeButtonClick ), NULL, this );
                    501:        MountAllDevicesButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnMountAllDevicesButtonClick ), NULL, this );
                    502:        DismountAllButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnDismountAllButtonClick ), NULL, this );
                    503:        ExitButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnExitButtonClick ), NULL, this );
                    504: }
                    505: 
                    506: WizardFrameBase::WizardFrameBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style )
                    507: {
                    508:        this->SetSizeHints( wxDefaultSize, wxDefaultSize );
                    509:        
                    510:        wxBoxSizer* bSizer92;
                    511:        bSizer92 = new wxBoxSizer( wxVERTICAL );
                    512:        
                    513:        MainPanel = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                    514:        wxBoxSizer* bSizer63;
                    515:        bSizer63 = new wxBoxSizer( wxVERTICAL );
                    516:        
                    517:        wxBoxSizer* bSizer64;
                    518:        bSizer64 = new wxBoxSizer( wxVERTICAL );
                    519:        
                    520:        wxStaticBoxSizer* sbSizer27;
                    521:        sbSizer27 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxHORIZONTAL );
                    522:        
                    523:        WizardBitmap = new wxStaticBitmap( MainPanel, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
                    524:        sbSizer27->Add( WizardBitmap, 0, wxALL|wxEXPAND, 5 );
                    525:        
                    526:        wxBoxSizer* bSizer66;
                    527:        bSizer66 = new wxBoxSizer( wxVERTICAL );
                    528:        
                    529:        wxBoxSizer* bSizer126;
                    530:        bSizer126 = new wxBoxSizer( wxHORIZONTAL );
                    531:        
                    532:        PageTitleStaticText = new wxStaticText( MainPanel, wxID_ANY, _("Page Title"), wxDefaultPosition, wxDefaultSize, 0 );
                    533:        PageTitleStaticText->Wrap( -1 );
                    534:        PageTitleStaticText->SetFont( wxFont( 16, 70, 90, 90, false, wxT("Times New Roman") ) );
                    535:        
                    536:        bSizer126->Add( PageTitleStaticText, 0, wxALL, 5 );
                    537:        
                    538:        bSizer66->Add( bSizer126, 0, wxLEFT, 5 );
                    539:        
                    540:        PageSizer = new wxBoxSizer( wxVERTICAL );
                    541:        
                    542:        bSizer66->Add( PageSizer, 1, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 );
                    543:        
                    544:        sbSizer27->Add( bSizer66, 1, wxEXPAND|wxLEFT, 5 );
                    545:        
                    546:        bSizer64->Add( sbSizer27, 1, wxEXPAND|wxRIGHT|wxLEFT, 5 );
                    547:        
                    548:        wxBoxSizer* bSizer70;
                    549:        bSizer70 = new wxBoxSizer( wxHORIZONTAL );
                    550:        
                    551:        
                    552:        bSizer70->Add( 0, 0, 1, wxEXPAND, 5 );
                    553:        
                    554:        HelpButton = new wxButton( MainPanel, wxID_HELP, _("&Help"), wxDefaultPosition, wxDefaultSize, 0 );
                    555:        bSizer70->Add( HelpButton, 0, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
                    556:        
                    557:        
                    558:        bSizer70->Add( 0, 0, 0, wxLEFT|wxALIGN_RIGHT, 5 );
                    559:        
                    560:        PreviousButton = new wxButton( MainPanel, wxID_ANY, _("< &Prev"), wxDefaultPosition, wxDefaultSize, 0 );
                    561:        bSizer70->Add( PreviousButton, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
                    562:        
                    563:        NextButton = new wxButton( MainPanel, wxID_ANY, _("&Next >"), wxDefaultPosition, wxDefaultSize, 0|wxWANTS_CHARS );
                    564:        NextButton->SetDefault(); 
                    565:        bSizer70->Add( NextButton, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
                    566:        
                    567:        
                    568:        bSizer70->Add( 0, 0, 0, wxLEFT|wxALIGN_RIGHT, 5 );
                    569:        
                    570:        CancelButton = new wxButton( MainPanel, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
                    571:        bSizer70->Add( CancelButton, 0, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 );
                    572:        
                    573:        bSizer64->Add( bSizer70, 0, wxEXPAND|wxALIGN_RIGHT|wxALL, 5 );
                    574:        
                    575:        bSizer63->Add( bSizer64, 1, wxEXPAND, 5 );
                    576:        
                    577:        MainPanel->SetSizer( bSizer63 );
                    578:        MainPanel->Layout();
                    579:        bSizer63->Fit( MainPanel );
                    580:        bSizer92->Add( MainPanel, 1, wxEXPAND, 5 );
                    581:        
                    582:        this->SetSizer( bSizer92 );
                    583:        this->Layout();
                    584:        bSizer92->Fit( this );
                    585:        
                    586:        // Connect Events
                    587:        this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( WizardFrameBase::OnClose ) );
                    588:        MainPanel->Connect( wxEVT_MOTION, wxMouseEventHandler( WizardFrameBase::OnMouseMotion ), NULL, this );
                    589:        HelpButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnHelpButtonClick ), NULL, this );
                    590:        PreviousButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnPreviousButtonClick ), NULL, this );
                    591:        NextButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnNextButtonClick ), NULL, this );
                    592:        CancelButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnCancelButtonClick ), NULL, this );
                    593: }
                    594: 
                    595: WizardFrameBase::~WizardFrameBase()
                    596: {
                    597:        // Disconnect Events
                    598:        this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( WizardFrameBase::OnClose ) );
                    599:        MainPanel->Disconnect( wxEVT_MOTION, wxMouseEventHandler( WizardFrameBase::OnMouseMotion ), NULL, this );
                    600:        HelpButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnHelpButtonClick ), NULL, this );
                    601:        PreviousButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnPreviousButtonClick ), NULL, this );
                    602:        NextButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnNextButtonClick ), NULL, this );
                    603:        CancelButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnCancelButtonClick ), NULL, this );
                    604: }
                    605: 
                    606: AboutDialogBase::AboutDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
                    607: {
                    608:        this->SetSizeHints( wxDefaultSize, wxDefaultSize );
                    609:        
                    610:        wxBoxSizer* bSizer116;
                    611:        bSizer116 = new wxBoxSizer( wxVERTICAL );
                    612:        
                    613:        wxBoxSizer* bSizer117;
                    614:        bSizer117 = new wxBoxSizer( wxVERTICAL );
                    615:        
                    616:        wxBoxSizer* bSizer120;
                    617:        bSizer120 = new wxBoxSizer( wxVERTICAL );
                    618:        
                    619:        bSizer120->SetMinSize( wxSize( -1,78 ) ); 
                    620:        m_panel14 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                    621:        m_panel14->SetBackgroundColour( wxColour( 10, 108, 206 ) );
                    622:        
                    623:        wxBoxSizer* bSizer121;
                    624:        bSizer121 = new wxBoxSizer( wxVERTICAL );
                    625:        
                    626:        
                    627:        bSizer121->Add( 0, 0, 1, wxEXPAND|wxALL, 5 );
                    628:        
                    629:        wxBoxSizer* bSizer122;
                    630:        bSizer122 = new wxBoxSizer( wxVERTICAL );
                    631:        
                    632:        LogoBitmap = new wxStaticBitmap( m_panel14, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 );
                    633:        bSizer122->Add( LogoBitmap, 0, wxALL, 10 );
                    634:        
                    635:        bSizer121->Add( bSizer122, 0, wxEXPAND|wxLEFT, 8 );
                    636:        
                    637:        m_panel14->SetSizer( bSizer121 );
                    638:        m_panel14->Layout();
                    639:        bSizer121->Fit( m_panel14 );
                    640:        bSizer120->Add( m_panel14, 1, wxEXPAND, 5 );
                    641:        
                    642:        bSizer117->Add( bSizer120, 0, wxEXPAND, 5 );
                    643:        
                    644:        wxBoxSizer* bSizer118;
                    645:        bSizer118 = new wxBoxSizer( wxVERTICAL );
                    646:        
                    647:        wxBoxSizer* bSizer123;
                    648:        bSizer123 = new wxBoxSizer( wxVERTICAL );
                    649:        
                    650:        VersionStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                    651:        VersionStaticText->Wrap( -1 );
                    652:        VersionStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 92, false, wxEmptyString ) );
                    653:        
                    654:        bSizer123->Add( VersionStaticText, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
                    655:        
                    656:        
                    657:        bSizer123->Add( 0, 0, 0, wxTOP, 3 );
                    658:        
                    659:        CopyrightStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                    660:        CopyrightStaticText->Wrap( -1 );
                    661:        bSizer123->Add( CopyrightStaticText, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
                    662:        
                    663:        
                    664:        bSizer123->Add( 0, 0, 0, wxTOP, 3 );
                    665:        
                    666:        WebsiteHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, wxEmptyString, wxT("."), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
                    667:        
                    668:        WebsiteHyperlink->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                    669:        WebsiteHyperlink->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                    670:        WebsiteHyperlink->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                    671:        bSizer123->Add( WebsiteHyperlink, 0, wxALL, 5 );
                    672:        
                    673:        bSizer118->Add( bSizer123, 1, wxEXPAND|wxLEFT, 5 );
                    674:        
                    675:        bSizer117->Add( bSizer118, 1, wxALL|wxEXPAND, 15 );
                    676:        
                    677:        m_staticline3 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
                    678:        bSizer117->Add( m_staticline3, 0, wxEXPAND|wxBOTTOM, 5 );
                    679:        
                    680:        CreditsTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE|wxTE_READONLY|wxSUNKEN_BORDER );
                    681:        bSizer117->Add( CreditsTextCtrl, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 10 );
                    682:        
                    683:        
                    684:        bSizer117->Add( 0, 0, 0, wxTOP, 5 );
                    685:        
                    686:        m_staticline4 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
                    687:        bSizer117->Add( m_staticline4, 0, wxEXPAND|wxTOP|wxBOTTOM, 3 );
                    688:        
                    689:        m_staticline5 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
                    690:        bSizer117->Add( m_staticline5, 0, wxEXPAND|wxBOTTOM, 5 );
                    691:        
                    692:        wxBoxSizer* bSizer119;
                    693:        bSizer119 = new wxBoxSizer( wxHORIZONTAL );
                    694:        
                    695:        
                    696:        bSizer119->Add( 0, 0, 1, wxEXPAND|wxALL, 5 );
                    697:        
                    698:        DonationsButton = new wxButton( this, wxID_ANY, _("Donations..."), wxDefaultPosition, wxDefaultSize, 0 );
                    699:        bSizer119->Add( DonationsButton, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                    700:        
                    701:        wxButton* OKButton;
                    702:        OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 );
                    703:        OKButton->SetDefault(); 
                    704:        bSizer119->Add( OKButton, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                    705:        
                    706:        
                    707:        bSizer119->Add( 0, 0, 0, wxLEFT, 5 );
                    708:        
                    709:        bSizer117->Add( bSizer119, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 6 );
                    710:        
                    711:        bSizer116->Add( bSizer117, 1, wxEXPAND, 5 );
                    712:        
                    713:        this->SetSizer( bSizer116 );
                    714:        this->Layout();
                    715:        bSizer116->Fit( this );
                    716:        
                    717:        // Connect Events
                    718:        WebsiteHyperlink->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( AboutDialogBase::OnWebsiteHyperlinkClick ), NULL, this );
                    719:        DonationsButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDialogBase::OnDonationsButtonClick ), NULL, this );
                    720: }
                    721: 
                    722: AboutDialogBase::~AboutDialogBase()
                    723: {
                    724:        // Disconnect Events
                    725:        WebsiteHyperlink->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( AboutDialogBase::OnWebsiteHyperlinkClick ), NULL, this );
                    726:        DonationsButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( AboutDialogBase::OnDonationsButtonClick ), NULL, this );
                    727: }
                    728: 
                    729: ChangePasswordDialogBase::ChangePasswordDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
                    730: {
                    731:        this->SetSizeHints( wxDefaultSize, wxDefaultSize );
                    732:        this->SetExtraStyle( wxWS_EX_VALIDATE_RECURSIVELY );
                    733:        
                    734:        wxBoxSizer* bSizer30;
                    735:        bSizer30 = new wxBoxSizer( wxVERTICAL );
                    736:        
                    737:        wxBoxSizer* bSizer31;
                    738:        bSizer31 = new wxBoxSizer( wxHORIZONTAL );
                    739:        
                    740:        wxBoxSizer* bSizer32;
                    741:        bSizer32 = new wxBoxSizer( wxVERTICAL );
                    742:        
                    743:        CurrentSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Current") ), wxVERTICAL );
                    744:        
                    745:        CurrentPasswordPanelSizer = new wxBoxSizer( wxVERTICAL );
                    746:        
                    747:        CurrentSizer->Add( CurrentPasswordPanelSizer, 0, wxALIGN_RIGHT, 5 );
                    748:        
                    749:        bSizer32->Add( CurrentSizer, 0, wxEXPAND, 5 );
                    750:        
                    751:        NewSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("New") ), wxVERTICAL );
                    752:        
                    753:        NewPasswordPanelSizer = new wxBoxSizer( wxVERTICAL );
                    754:        
                    755:        NewSizer->Add( NewPasswordPanelSizer, 0, wxALIGN_RIGHT, 5 );
                    756:        
                    757:        bSizer32->Add( NewSizer, 0, wxTOP|wxEXPAND, 5 );
                    758:        
                    759:        bSizer31->Add( bSizer32, 1, wxEXPAND|wxALL, 5 );
                    760:        
                    761:        wxBoxSizer* bSizer33;
                    762:        bSizer33 = new wxBoxSizer( wxVERTICAL );
                    763:        
                    764:        OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 );
                    765:        OKButton->SetDefault(); 
                    766:        bSizer33->Add( OKButton, 0, wxALL|wxEXPAND, 5 );
                    767:        
                    768:        CancelButton = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
                    769:        bSizer33->Add( CancelButton, 0, wxALL|wxEXPAND, 5 );
                    770:        
                    771:        bSizer31->Add( bSizer33, 0, 0, 5 );
                    772:        
                    773:        bSizer30->Add( bSizer31, 1, wxEXPAND|wxALL, 5 );
                    774:        
                    775:        this->SetSizer( bSizer30 );
                    776:        this->Layout();
                    777:        bSizer30->Fit( this );
                    778:        
                    779:        // Connect Events
                    780:        OKButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ChangePasswordDialogBase::OnOKButtonClick ), NULL, this );
                    781: }
                    782: 
                    783: ChangePasswordDialogBase::~ChangePasswordDialogBase()
                    784: {
                    785:        // Disconnect Events
                    786:        OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ChangePasswordDialogBase::OnOKButtonClick ), NULL, this );
                    787: }
                    788: 
                    789: DeviceSelectionDialogBase::DeviceSelectionDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
                    790: {
                    791:        this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
                    792:        this->SetExtraStyle( wxWS_EX_VALIDATE_RECURSIVELY );
                    793:        
                    794:        wxBoxSizer* bSizer3;
                    795:        bSizer3 = new wxBoxSizer( wxVERTICAL );
                    796:        
                    797:        wxBoxSizer* bSizer4;
                    798:        bSizer4 = new wxBoxSizer( wxVERTICAL );
                    799:        
                    800:        DeviceListCtrl = new wxListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SINGLE_SEL|wxLC_VRULES|wxSUNKEN_BORDER );
                    801:        bSizer4->Add( DeviceListCtrl, 1, wxALL|wxEXPAND, 5 );
                    802:        
                    803:        StdButtons = new wxStdDialogButtonSizer();
                    804:        StdButtonsOK = new wxButton( this, wxID_OK );
                    805:        StdButtons->AddButton( StdButtonsOK );
                    806:        StdButtonsCancel = new wxButton( this, wxID_CANCEL );
                    807:        StdButtons->AddButton( StdButtonsCancel );
                    808:        StdButtons->Realize();
                    809:        bSizer4->Add( StdButtons, 0, wxEXPAND|wxALL, 5 );
                    810:        
                    811:        bSizer3->Add( bSizer4, 1, wxEXPAND|wxALL, 5 );
                    812:        
                    813:        this->SetSizer( bSizer3 );
                    814:        this->Layout();
                    815:        bSizer3->Fit( this );
                    816:        
                    817:        this->Centre( wxBOTH );
                    818:        
                    819:        // Connect Events
                    820:        DeviceListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_ACTIVATED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemActivated ), NULL, this );
                    821:        DeviceListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemDeselected ), NULL, this );
                    822:        DeviceListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemSelected ), NULL, this );
                    823: }
                    824: 
                    825: DeviceSelectionDialogBase::~DeviceSelectionDialogBase()
                    826: {
                    827:        // Disconnect Events
                    828:        DeviceListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_ACTIVATED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemActivated ), NULL, this );
                    829:        DeviceListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemDeselected ), NULL, this );
                    830:        DeviceListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemSelected ), NULL, this );
                    831: }
                    832: 
                    833: FavoriteVolumesDialogBase::FavoriteVolumesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
                    834: {
                    835:        this->SetSizeHints( wxDefaultSize, wxDefaultSize );
                    836:        
                    837:        wxBoxSizer* bSizer57;
                    838:        bSizer57 = new wxBoxSizer( wxVERTICAL );
                    839:        
                    840:        wxBoxSizer* bSizer60;
                    841:        bSizer60 = new wxBoxSizer( wxHORIZONTAL );
                    842:        
                    843:        wxBoxSizer* bSizer58;
                    844:        bSizer58 = new wxBoxSizer( wxVERTICAL );
                    845:        
                    846:        FavoritesListCtrl = new wxListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_VRULES|wxSUNKEN_BORDER );
                    847:        bSizer58->Add( FavoritesListCtrl, 1, wxALL|wxEXPAND, 5 );
                    848:        
                    849:        wxGridSizer* gSizer5;
                    850:        gSizer5 = new wxGridSizer( 1, 4, 0, 0 );
                    851:        
                    852:        MoveUpButton = new wxButton( this, wxID_ANY, _("Move &Up"), wxDefaultPosition, wxDefaultSize, 0 );
                    853:        gSizer5->Add( MoveUpButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT, 5 );
                    854:        
                    855:        MoveDownButton = new wxButton( this, wxID_ANY, _("Move &Down"), wxDefaultPosition, wxDefaultSize, 0 );
                    856:        gSizer5->Add( MoveDownButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT, 5 );
                    857:        
                    858:        RemoveButton = new wxButton( this, wxID_ANY, _("&Remove"), wxDefaultPosition, wxDefaultSize, 0 );
                    859:        gSizer5->Add( RemoveButton, 0, wxALIGN_RIGHT|wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 );
                    860:        
                    861:        RemoveAllButton = new wxButton( this, wxID_ANY, _("Remove &All"), wxDefaultPosition, wxDefaultSize, 0 );
                    862:        gSizer5->Add( RemoveAllButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 );
                    863:        
                    864:        bSizer58->Add( gSizer5, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 );
                    865:        
                    866:        wxFlexGridSizer* fgSizer4;
                    867:        fgSizer4 = new wxFlexGridSizer( 1, 5, 0, 0 );
                    868:        fgSizer4->AddGrowableCol( 2 );
                    869:        fgSizer4->SetFlexibleDirection( wxBOTH );
                    870:        fgSizer4->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
                    871:        
                    872:        
                    873:        fgSizer4->Add( 0, 0, 1, wxEXPAND, 5 );
                    874:        
                    875:        bSizer58->Add( fgSizer4, 0, wxEXPAND, 5 );
                    876:        
                    877:        bSizer60->Add( bSizer58, 1, wxEXPAND, 5 );
                    878:        
                    879:        wxBoxSizer* bSizer59;
                    880:        bSizer59 = new wxBoxSizer( wxVERTICAL );
                    881:        
                    882:        OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 );
                    883:        OKButton->SetDefault(); 
                    884:        bSizer59->Add( OKButton, 0, wxALL, 5 );
                    885:        
                    886:        CancelButton = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
                    887:        bSizer59->Add( CancelButton, 0, wxALL, 5 );
                    888:        
                    889:        bSizer60->Add( bSizer59, 0, wxEXPAND, 5 );
                    890:        
                    891:        bSizer57->Add( bSizer60, 1, wxEXPAND|wxALL, 5 );
                    892:        
                    893:        this->SetSizer( bSizer57 );
                    894:        this->Layout();
                    895:        bSizer57->Fit( this );
                    896:        
                    897:        // Connect Events
                    898:        FavoritesListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( FavoriteVolumesDialogBase::OnListItemDeselected ), NULL, this );
                    899:        FavoritesListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( FavoriteVolumesDialogBase::OnListItemSelected ), NULL, this );
                    900:        MoveUpButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnMoveUpButtonClick ), NULL, this );
                    901:        MoveDownButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnMoveDownButtonClick ), NULL, this );
                    902:        RemoveButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnRemoveButtonClick ), NULL, this );
                    903:        RemoveAllButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnRemoveAllButtonClick ), NULL, this );
                    904:        OKButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnOKButtonClick ), NULL, this );
                    905: }
                    906: 
                    907: FavoriteVolumesDialogBase::~FavoriteVolumesDialogBase()
                    908: {
                    909:        // Disconnect Events
                    910:        FavoritesListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( FavoriteVolumesDialogBase::OnListItemDeselected ), NULL, this );
                    911:        FavoritesListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( FavoriteVolumesDialogBase::OnListItemSelected ), NULL, this );
                    912:        MoveUpButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnMoveUpButtonClick ), NULL, this );
                    913:        MoveDownButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnMoveDownButtonClick ), NULL, this );
                    914:        RemoveButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnRemoveButtonClick ), NULL, this );
                    915:        RemoveAllButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnRemoveAllButtonClick ), NULL, this );
                    916:        OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnOKButtonClick ), NULL, this );
                    917: }
                    918: 
                    919: KeyfilesDialogBase::KeyfilesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
                    920: {
                    921:        this->SetSizeHints( wxDefaultSize, wxDefaultSize );
                    922:        this->SetExtraStyle( wxWS_EX_VALIDATE_RECURSIVELY );
                    923:        
                    924:        wxBoxSizer* bSizer26;
                    925:        bSizer26 = new wxBoxSizer( wxVERTICAL );
                    926:        
                    927:        UpperSizer = new wxBoxSizer( wxHORIZONTAL );
                    928:        
                    929:        PanelSizer = new wxBoxSizer( wxVERTICAL );
                    930:        
                    931:        UpperSizer->Add( PanelSizer, 1, wxEXPAND, 5 );
                    932:        
                    933:        wxBoxSizer* bSizer22;
                    934:        bSizer22 = new wxBoxSizer( wxVERTICAL );
                    935:        
                    936:        OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 );
                    937:        OKButton->SetDefault(); 
                    938:        bSizer22->Add( OKButton, 0, wxALL|wxEXPAND, 5 );
                    939:        
                    940:        CancelButton = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
                    941:        bSizer22->Add( CancelButton, 0, wxALL|wxEXPAND, 5 );
                    942:        
                    943:        WarningStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                    944:        WarningStaticText->Wrap( -1 );
                    945:        bSizer22->Add( WarningStaticText, 1, wxALL|wxEXPAND, 5 );
                    946:        
                    947:        UpperSizer->Add( bSizer22, 0, wxEXPAND, 5 );
                    948:        
                    949:        bSizer26->Add( UpperSizer, 1, wxTOP|wxRIGHT|wxLEFT, 5 );
                    950:        
                    951:        wxBoxSizer* bSizer23;
                    952:        bSizer23 = new wxBoxSizer( wxVERTICAL );
                    953:        
                    954:        KeyfilesNoteSizer = new wxBoxSizer( wxVERTICAL );
                    955:        
                    956:        wxStaticLine* m_staticline1;
                    957:        m_staticline1 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
                    958:        KeyfilesNoteSizer->Add( m_staticline1, 0, wxEXPAND | wxALL, 5 );
                    959:        
                    960:        KeyfilesNoteStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                    961:        KeyfilesNoteStaticText->Wrap( -1 );
                    962:        KeyfilesNoteSizer->Add( KeyfilesNoteStaticText, 0, wxALL|wxEXPAND, 5 );
                    963:        
                    964:        wxStaticLine* m_staticline2;
                    965:        m_staticline2 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
                    966:        KeyfilesNoteSizer->Add( m_staticline2, 0, wxEXPAND | wxALL, 5 );
                    967:        
                    968:        bSizer23->Add( KeyfilesNoteSizer, 1, wxEXPAND, 5 );
                    969:        
                    970:        wxFlexGridSizer* fgSizer2;
                    971:        fgSizer2 = new wxFlexGridSizer( 1, 2, 0, 0 );
                    972:        fgSizer2->AddGrowableCol( 0 );
                    973:        fgSizer2->SetFlexibleDirection( wxBOTH );
                    974:        fgSizer2->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
                    975:        
                    976:        KeyfilesHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, _("What is a keyfile?"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
                    977:        
                    978:        KeyfilesHyperlink->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                    979:        KeyfilesHyperlink->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                    980:        KeyfilesHyperlink->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                    981:        fgSizer2->Add( KeyfilesHyperlink, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                    982:        
                    983:        CreateKeyfileButtton = new wxButton( this, wxID_ANY, _("&Generate Random Keyfile..."), wxDefaultPosition, wxDefaultSize, 0 );
                    984:        CreateKeyfileButtton->Hide();
                    985:        
                    986:        fgSizer2->Add( CreateKeyfileButtton, 0, wxALL, 5 );
                    987:        
                    988:        bSizer23->Add( fgSizer2, 0, wxEXPAND, 5 );
                    989:        
                    990:        bSizer26->Add( bSizer23, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
                    991:        
                    992:        this->SetSizer( bSizer26 );
                    993:        this->Layout();
                    994:        bSizer26->Fit( this );
                    995:        
                    996:        // Connect Events
                    997:        KeyfilesHyperlink->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( KeyfilesDialogBase::OnKeyfilesHyperlinkClick ), NULL, this );
                    998:        CreateKeyfileButtton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesDialogBase::OnCreateKeyfileButttonClick ), NULL, this );
                    999: }
                   1000: 
                   1001: KeyfilesDialogBase::~KeyfilesDialogBase()
                   1002: {
                   1003:        // Disconnect Events
                   1004:        KeyfilesHyperlink->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( KeyfilesDialogBase::OnKeyfilesHyperlinkClick ), NULL, this );
                   1005:        CreateKeyfileButtton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesDialogBase::OnCreateKeyfileButttonClick ), NULL, this );
                   1006: }
                   1007: 
                   1008: LegalNoticesDialogBase::LegalNoticesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
                   1009: {
                   1010:        this->SetSizeHints( wxDefaultSize, wxDefaultSize );
                   1011:        
                   1012:        wxBoxSizer* bSizer114;
                   1013:        bSizer114 = new wxBoxSizer( wxVERTICAL );
                   1014:        
                   1015:        wxBoxSizer* bSizer115;
                   1016:        bSizer115 = new wxBoxSizer( wxVERTICAL );
                   1017:        
                   1018:        LegalNoticesTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE|wxTE_READONLY );
                   1019:        bSizer115->Add( LegalNoticesTextCtrl, 1, wxALL|wxEXPAND, 5 );
                   1020:        
                   1021:        wxButton* OKButton;
                   1022:        OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 );
                   1023:        OKButton->SetDefault(); 
                   1024:        bSizer115->Add( OKButton, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
                   1025:        
                   1026:        bSizer114->Add( bSizer115, 1, wxEXPAND|wxALL, 5 );
                   1027:        
                   1028:        this->SetSizer( bSizer114 );
                   1029:        this->Layout();
                   1030:        bSizer114->Fit( this );
                   1031: }
                   1032: 
                   1033: LegalNoticesDialogBase::~LegalNoticesDialogBase()
                   1034: {
                   1035: }
                   1036: 
                   1037: MountOptionsDialogBase::MountOptionsDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
                   1038: {
                   1039:        this->SetSizeHints( wxDefaultSize, wxDefaultSize );
                   1040:        this->SetExtraStyle( wxWS_EX_VALIDATE_RECURSIVELY );
                   1041:        
                   1042:        wxBoxSizer* bSizer5;
                   1043:        bSizer5 = new wxBoxSizer( wxVERTICAL );
                   1044:        
                   1045:        wxBoxSizer* bSizer19;
                   1046:        bSizer19 = new wxBoxSizer( wxVERTICAL );
                   1047:        
                   1048:        wxBoxSizer* bSizer14;
                   1049:        bSizer14 = new wxBoxSizer( wxHORIZONTAL );
                   1050:        
                   1051:        PasswordSizer = new wxBoxSizer( wxVERTICAL );
                   1052:        
                   1053:        bSizer14->Add( PasswordSizer, 1, wxEXPAND, 5 );
                   1054:        
                   1055:        wxBoxSizer* bSizer9;
                   1056:        bSizer9 = new wxBoxSizer( wxVERTICAL );
                   1057:        
                   1058:        OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 );
                   1059:        OKButton->SetDefault(); 
                   1060:        bSizer9->Add( OKButton, 0, wxALL|wxEXPAND, 5 );
                   1061:        
                   1062:        CancelButton = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
                   1063:        bSizer9->Add( CancelButton, 0, wxALL|wxEXPAND, 5 );
                   1064:        
                   1065:        
                   1066:        bSizer9->Add( 0, 0, 1, wxTOP|wxEXPAND, 5 );
                   1067:        
                   1068:        OptionsButton = new wxButton( this, wxID_ANY, _("Op&tions"), wxDefaultPosition, wxDefaultSize, 0 );
                   1069:        bSizer9->Add( OptionsButton, 0, wxALL|wxEXPAND, 5 );
                   1070:        
                   1071:        bSizer14->Add( bSizer9, 0, wxEXPAND, 5 );
                   1072:        
                   1073:        bSizer19->Add( bSizer14, 0, wxEXPAND|wxALL, 5 );
                   1074:        
                   1075:        wxBoxSizer* bSizer6;
                   1076:        bSizer6 = new wxBoxSizer( wxVERTICAL );
                   1077:        
                   1078:        OptionsPanel = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                   1079:        OptionsSizer = new wxStaticBoxSizer( new wxStaticBox( OptionsPanel, wxID_ANY, wxEmptyString ), wxVERTICAL );
                   1080:        
                   1081:        
                   1082:        OptionsSizer->Add( 0, 0, 0, wxTOP, 5 );
                   1083:        
                   1084:        ReadOnlyCheckBox = new wxCheckBox( OptionsPanel, wxID_ANY, _("Mount volume as &read-only"), wxDefaultPosition, wxDefaultSize, 0 );
                   1085:        
                   1086:        OptionsSizer->Add( ReadOnlyCheckBox, 0, wxALL, 5 );
                   1087:        
                   1088:        RemovableCheckBox = new wxCheckBox( OptionsPanel, wxID_ANY, _("Mount volume as removable &medium"), wxDefaultPosition, wxDefaultSize, 0 );
                   1089:        
                   1090:        OptionsSizer->Add( RemovableCheckBox, 0, wxALL, 5 );
                   1091:        
                   1092:        ProtectionSizer = new wxStaticBoxSizer( new wxStaticBox( OptionsPanel, wxID_ANY, _("Hidden Volume Protection") ), wxVERTICAL );
                   1093:        
                   1094:        ProtectionCheckBox = new wxCheckBox( OptionsPanel, wxID_ANY, _("&Protect hidden volume when mounting outer volume"), wxDefaultPosition, wxDefaultSize, 0 );
                   1095:        
                   1096:        ProtectionSizer->Add( ProtectionCheckBox, 0, wxALL, 5 );
                   1097:        
                   1098:        ProtectionPasswordSizer = new wxBoxSizer( wxVERTICAL );
                   1099:        
                   1100:        ProtectionSizer->Add( ProtectionPasswordSizer, 1, wxEXPAND|wxLEFT, 5 );
                   1101:        
                   1102:        ProtectionHyperlinkCtrl = new wxHyperlinkCtrl( OptionsPanel, wxID_ANY, _("What is hidden volume protection?"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
                   1103:        
                   1104:        ProtectionHyperlinkCtrl->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   1105:        ProtectionHyperlinkCtrl->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   1106:        ProtectionHyperlinkCtrl->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   1107:        ProtectionSizer->Add( ProtectionHyperlinkCtrl, 0, wxALL, 5 );
                   1108:        
                   1109:        OptionsSizer->Add( ProtectionSizer, 1, wxEXPAND|wxALL, 5 );
                   1110:        
                   1111:        FilesystemSizer = new wxBoxSizer( wxVERTICAL );
                   1112:        
                   1113:        m_panel8 = new wxPanel( OptionsPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                   1114:        wxStaticBoxSizer* sbSizer28;
                   1115:        sbSizer28 = new wxStaticBoxSizer( new wxStaticBox( m_panel8, wxID_ANY, _("Filesystem") ), wxVERTICAL );
                   1116:        
                   1117:        wxBoxSizer* bSizer54;
                   1118:        bSizer54 = new wxBoxSizer( wxVERTICAL );
                   1119:        
                   1120:        wxBoxSizer* bSizer55;
                   1121:        bSizer55 = new wxBoxSizer( wxVERTICAL );
                   1122:        
                   1123:        NoFilesystemCheckBox = new wxCheckBox( m_panel8, wxID_ANY, _("Do &not mount"), wxDefaultPosition, wxDefaultSize, 0 );
                   1124:        
                   1125:        bSizer55->Add( NoFilesystemCheckBox, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
                   1126:        
                   1127:        bSizer54->Add( bSizer55, 1, wxEXPAND, 5 );
                   1128:        
                   1129:        FilesystemOptionsSizer = new wxGridBagSizer( 0, 0 );
                   1130:        FilesystemOptionsSizer->AddGrowableCol( 1 );
                   1131:        FilesystemOptionsSizer->SetFlexibleDirection( wxBOTH );
                   1132:        FilesystemOptionsSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
                   1133:        FilesystemOptionsSizer->SetEmptyCellSize( wxSize( 0,0 ) );
                   1134:        
                   1135:        FilesystemSpacer = new wxBoxSizer( wxVERTICAL );
                   1136:        
                   1137:        FilesystemOptionsSizer->Add( FilesystemSpacer, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP, 5 );
                   1138:        
                   1139:        MountPointTextCtrlStaticText = new wxStaticText( m_panel8, wxID_ANY, _("Mount at directory:"), wxDefaultPosition, wxDefaultSize, 0 );
                   1140:        MountPointTextCtrlStaticText->Wrap( -1 );
                   1141:        FilesystemOptionsSizer->Add( MountPointTextCtrlStaticText, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   1142:        
                   1143:        MountPointTextCtrl = new wxTextCtrl( m_panel8, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1144:        FilesystemOptionsSizer->Add( MountPointTextCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
                   1145:        
                   1146:        MountPointButton = new wxButton( m_panel8, wxID_ANY, _("Se&lect..."), wxDefaultPosition, wxDefaultSize, 0 );
                   1147:        FilesystemOptionsSizer->Add( MountPointButton, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
                   1148:        
                   1149:        FilesystemOptionsStaticText = new wxStaticText( m_panel8, wxID_ANY, _("Mount options:"), wxDefaultPosition, wxDefaultSize, 0 );
                   1150:        FilesystemOptionsStaticText->Wrap( -1 );
                   1151:        FilesystemOptionsSizer->Add( FilesystemOptionsStaticText, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxLEFT, 5 );
                   1152:        
                   1153:        FilesystemOptionsTextCtrl = new wxTextCtrl( m_panel8, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1154:        FilesystemOptionsSizer->Add( FilesystemOptionsTextCtrl, wxGBPosition( 2, 1 ), wxGBSpan( 1, 2 ), wxALIGN_CENTER_VERTICAL|wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
                   1155:        
                   1156:        bSizer54->Add( FilesystemOptionsSizer, 0, wxEXPAND, 5 );
                   1157:        
                   1158:        sbSizer28->Add( bSizer54, 0, wxEXPAND|wxBOTTOM, 5 );
                   1159:        
                   1160:        m_panel8->SetSizer( sbSizer28 );
                   1161:        m_panel8->Layout();
                   1162:        sbSizer28->Fit( m_panel8 );
                   1163:        FilesystemSizer->Add( m_panel8, 0, wxEXPAND | wxALL, 5 );
                   1164:        
                   1165:        OptionsSizer->Add( FilesystemSizer, 0, wxEXPAND, 5 );
                   1166:        
                   1167:        OptionsPanel->SetSizer( OptionsSizer );
                   1168:        OptionsPanel->Layout();
                   1169:        OptionsSizer->Fit( OptionsPanel );
                   1170:        bSizer6->Add( OptionsPanel, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
                   1171:        
                   1172:        bSizer19->Add( bSizer6, 0, wxEXPAND, 5 );
                   1173:        
                   1174:        bSizer5->Add( bSizer19, 1, wxEXPAND, 5 );
                   1175:        
                   1176:        this->SetSizer( bSizer5 );
                   1177:        this->Layout();
                   1178:        bSizer5->Fit( this );
                   1179:        
                   1180:        this->Centre( wxBOTH );
                   1181:        
                   1182:        // Connect Events
                   1183:        this->Connect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( MountOptionsDialogBase::OnInitDialog ) );
                   1184:        OKButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnOKButtonClick ), NULL, this );
                   1185:        OptionsButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnOptionsButtonClick ), NULL, this );
                   1186:        ReadOnlyCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnReadOnlyCheckBoxClick ), NULL, this );
                   1187:        ProtectionCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnProtectionCheckBoxClick ), NULL, this );
                   1188:        ProtectionHyperlinkCtrl->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( MountOptionsDialogBase::OnProtectionHyperlinkClick ), NULL, this );
                   1189:        NoFilesystemCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnNoFilesystemCheckBoxClick ), NULL, this );
                   1190:        MountPointButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnMountPointButtonClick ), NULL, this );
                   1191: }
                   1192: 
                   1193: MountOptionsDialogBase::~MountOptionsDialogBase()
                   1194: {
                   1195:        // Disconnect Events
                   1196:        this->Disconnect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( MountOptionsDialogBase::OnInitDialog ) );
                   1197:        OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnOKButtonClick ), NULL, this );
                   1198:        OptionsButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnOptionsButtonClick ), NULL, this );
                   1199:        ReadOnlyCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnReadOnlyCheckBoxClick ), NULL, this );
                   1200:        ProtectionCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnProtectionCheckBoxClick ), NULL, this );
                   1201:        ProtectionHyperlinkCtrl->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( MountOptionsDialogBase::OnProtectionHyperlinkClick ), NULL, this );
                   1202:        NoFilesystemCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnNoFilesystemCheckBoxClick ), NULL, this );
                   1203:        MountPointButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnMountPointButtonClick ), NULL, this );
                   1204: }
                   1205: 
                   1206: PreferencesDialogBase::PreferencesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
                   1207: {
                   1208:        this->SetSizeHints( wxDefaultSize, wxDefaultSize );
                   1209:        this->SetExtraStyle( wxWS_EX_VALIDATE_RECURSIVELY );
                   1210:        
                   1211:        wxBoxSizer* bSizer32;
                   1212:        bSizer32 = new wxBoxSizer( wxVERTICAL );
                   1213:        
                   1214:        wxBoxSizer* bSizer41;
                   1215:        bSizer41 = new wxBoxSizer( wxVERTICAL );
                   1216:        
                   1217:        PreferencesNotebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 );
                   1218:        SecurityPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                   1219:        wxBoxSizer* bSizer44;
                   1220:        bSizer44 = new wxBoxSizer( wxVERTICAL );
                   1221:        
                   1222:        wxBoxSizer* bSizer33;
                   1223:        bSizer33 = new wxBoxSizer( wxVERTICAL );
                   1224:        
                   1225:        AutoDismountSizer = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("Auto-Dismount") ), wxVERTICAL );
                   1226:        
                   1227:        wxStaticBoxSizer* sbSizer13;
                   1228:        sbSizer13 = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("Dismount All Volumes When") ), wxVERTICAL );
                   1229:        
                   1230:        DismountOnLogOffCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("User logs off"), wxDefaultPosition, wxDefaultSize, 0 );
                   1231:        
                   1232:        sbSizer13->Add( DismountOnLogOffCheckBox, 0, wxALL, 5 );
                   1233:        
                   1234:        DismountOnScreenSaverCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Screen saver is launched"), wxDefaultPosition, wxDefaultSize, 0 );
                   1235:        
                   1236:        sbSizer13->Add( DismountOnScreenSaverCheckBox, 0, wxALL, 5 );
                   1237:        
                   1238:        DismountOnPowerSavingCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("System is entering power saving mode"), wxDefaultPosition, wxDefaultSize, 0 );
                   1239:        
                   1240:        sbSizer13->Add( DismountOnPowerSavingCheckBox, 0, wxALL, 5 );
                   1241:        
                   1242:        AutoDismountSizer->Add( sbSizer13, 0, wxEXPAND|wxALL, 5 );
                   1243:        
                   1244:        wxBoxSizer* bSizer34;
                   1245:        bSizer34 = new wxBoxSizer( wxHORIZONTAL );
                   1246:        
                   1247:        DismountOnInactivityCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Auto-dismount volume after no data has been read/written to it for"), wxDefaultPosition, wxDefaultSize, 0 );
                   1248:        
                   1249:        bSizer34->Add( DismountOnInactivityCheckBox, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
                   1250:        
                   1251:        DismountOnInactivitySpinCtrl = new wxSpinCtrl( SecurityPage, wxID_ANY, wxT("1"), wxDefaultPosition, wxSize( 60,-1 ), wxSP_ARROW_KEYS, 1, 9999, 1 );
                   1252:        bSizer34->Add( DismountOnInactivitySpinCtrl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
                   1253:        
                   1254:        wxStaticText* m_staticText5;
                   1255:        m_staticText5 = new wxStaticText( SecurityPage, wxID_ANY, _("minutes"), wxDefaultPosition, wxDefaultSize, 0 );
                   1256:        m_staticText5->Wrap( -1 );
                   1257:        bSizer34->Add( m_staticText5, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
                   1258:        
                   1259:        AutoDismountSizer->Add( bSizer34, 0, wxEXPAND, 5 );
                   1260:        
                   1261:        ForceAutoDismountCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Force auto-dismount even if volume contains open files or directories"), wxDefaultPosition, wxDefaultSize, 0 );
                   1262:        
                   1263:        AutoDismountSizer->Add( ForceAutoDismountCheckBox, 0, wxALL, 5 );
                   1264:        
                   1265:        bSizer33->Add( AutoDismountSizer, 0, wxEXPAND|wxALL, 5 );
                   1266:        
                   1267:        FilesystemSecuritySizer = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("Filesystem") ), wxVERTICAL );
                   1268:        
                   1269:        PreserveTimestampsCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Preserve modification time of file containers"), wxDefaultPosition, wxDefaultSize, 0 );
                   1270:        
                   1271:        FilesystemSecuritySizer->Add( PreserveTimestampsCheckBox, 0, wxALL, 5 );
                   1272:        
                   1273:        bSizer33->Add( FilesystemSecuritySizer, 0, wxEXPAND|wxALL, 5 );
                   1274:        
                   1275:        wxStaticBoxSizer* sbSizer14;
                   1276:        sbSizer14 = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("Password Cache") ), wxVERTICAL );
                   1277:        
                   1278:        WipeCacheOnCloseCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Wipe after TrueCrypt window has been closed"), wxDefaultPosition, wxDefaultSize, 0 );
                   1279:        
                   1280:        sbSizer14->Add( WipeCacheOnCloseCheckBox, 0, wxALL, 5 );
                   1281:        
                   1282:        WipeCacheOnAutoDismountCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Wipe after volume has been auto-dismounted"), wxDefaultPosition, wxDefaultSize, 0 );
                   1283:        
                   1284:        sbSizer14->Add( WipeCacheOnAutoDismountCheckBox, 0, wxALL, 5 );
                   1285:        
                   1286:        bSizer33->Add( sbSizer14, 0, wxEXPAND|wxALL, 5 );
                   1287:        
                   1288:        bSizer44->Add( bSizer33, 1, wxEXPAND|wxALL, 5 );
                   1289:        
                   1290:        SecurityPage->SetSizer( bSizer44 );
                   1291:        SecurityPage->Layout();
                   1292:        bSizer44->Fit( SecurityPage );
                   1293:        PreferencesNotebook->AddPage( SecurityPage, _("Security"), true );
                   1294:        DefaultMountOptionsPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                   1295:        wxBoxSizer* bSizer46;
                   1296:        bSizer46 = new wxBoxSizer( wxVERTICAL );
                   1297:        
                   1298:        wxBoxSizer* bSizer35;
                   1299:        bSizer35 = new wxBoxSizer( wxVERTICAL );
                   1300:        
                   1301:        wxStaticBoxSizer* sbSizer15;
                   1302:        sbSizer15 = new wxStaticBoxSizer( new wxStaticBox( DefaultMountOptionsPage, wxID_ANY, _("Default Mount Options") ), wxVERTICAL );
                   1303:        
                   1304:        MountReadOnlyCheckBox = new wxCheckBox( DefaultMountOptionsPage, wxID_ANY, _("Mount volumes as read-only"), wxDefaultPosition, wxDefaultSize, 0 );
                   1305:        
                   1306:        sbSizer15->Add( MountReadOnlyCheckBox, 0, wxALL, 5 );
                   1307:        
                   1308:        MountRemovableCheckBox = new wxCheckBox( DefaultMountOptionsPage, wxID_ANY, _("Mount volumes as removable media"), wxDefaultPosition, wxDefaultSize, 0 );
                   1309:        
                   1310:        sbSizer15->Add( MountRemovableCheckBox, 0, wxALL, 5 );
                   1311:        
                   1312:        CachePasswordsCheckBox = new wxCheckBox( DefaultMountOptionsPage, wxID_ANY, _("Cache passwords in memory"), wxDefaultPosition, wxDefaultSize, 0 );
                   1313:        
                   1314:        sbSizer15->Add( CachePasswordsCheckBox, 0, wxALL, 5 );
                   1315:        
                   1316:        bSizer35->Add( sbSizer15, 0, wxEXPAND|wxALL, 5 );
                   1317:        
                   1318:        FilesystemSizer = new wxStaticBoxSizer( new wxStaticBox( DefaultMountOptionsPage, wxID_ANY, _("Filesystem") ), wxVERTICAL );
                   1319:        
                   1320:        wxFlexGridSizer* fgSizer3;
                   1321:        fgSizer3 = new wxFlexGridSizer( 1, 2, 0, 0 );
                   1322:        fgSizer3->AddGrowableCol( 1 );
                   1323:        fgSizer3->SetFlexibleDirection( wxBOTH );
                   1324:        fgSizer3->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
                   1325:        
                   1326:        wxStaticText* m_staticText6;
                   1327:        m_staticText6 = new wxStaticText( DefaultMountOptionsPage, wxID_ANY, _("Mount options:"), wxDefaultPosition, wxDefaultSize, 0 );
                   1328:        m_staticText6->Wrap( -1 );
                   1329:        fgSizer3->Add( m_staticText6, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
                   1330:        
                   1331:        FilesystemOptionsTextCtrl = new wxTextCtrl( DefaultMountOptionsPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1332:        fgSizer3->Add( FilesystemOptionsTextCtrl, 0, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
                   1333:        
                   1334:        FilesystemSizer->Add( fgSizer3, 1, wxEXPAND, 5 );
                   1335:        
                   1336:        bSizer35->Add( FilesystemSizer, 0, wxEXPAND|wxALL, 5 );
                   1337:        
                   1338:        bSizer46->Add( bSizer35, 1, wxEXPAND|wxALL, 5 );
                   1339:        
                   1340:        DefaultMountOptionsPage->SetSizer( bSizer46 );
                   1341:        DefaultMountOptionsPage->Layout();
                   1342:        bSizer46->Fit( DefaultMountOptionsPage );
                   1343:        PreferencesNotebook->AddPage( DefaultMountOptionsPage, _("Mount Options"), false );
                   1344:        DefaultKeyfilesPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                   1345:        wxBoxSizer* bSizer40;
                   1346:        bSizer40 = new wxBoxSizer( wxVERTICAL );
                   1347:        
                   1348:        wxBoxSizer* bSizer43;
                   1349:        bSizer43 = new wxBoxSizer( wxVERTICAL );
                   1350:        
                   1351:        wxStaticBoxSizer* bSizer42;
                   1352:        bSizer42 = new wxStaticBoxSizer( new wxStaticBox( DefaultKeyfilesPage, wxID_ANY, _("Default Keyfiles") ), wxVERTICAL );
                   1353:        
                   1354:        DefaultKeyfilesSizer = new wxBoxSizer( wxVERTICAL );
                   1355:        
                   1356:        bSizer42->Add( DefaultKeyfilesSizer, 1, wxEXPAND, 5 );
                   1357:        
                   1358:        bSizer43->Add( bSizer42, 1, wxEXPAND|wxALL, 5 );
                   1359:        
                   1360:        UseKeyfilesCheckBox = new wxCheckBox( DefaultKeyfilesPage, wxID_ANY, _("Use keyfiles by default"), wxDefaultPosition, wxDefaultSize, 0 );
                   1361:        
                   1362:        bSizer43->Add( UseKeyfilesCheckBox, 0, wxALL, 5 );
                   1363:        
                   1364:        bSizer40->Add( bSizer43, 1, wxEXPAND|wxALL, 5 );
                   1365:        
                   1366:        DefaultKeyfilesPage->SetSizer( bSizer40 );
                   1367:        DefaultKeyfilesPage->Layout();
                   1368:        bSizer40->Fit( DefaultKeyfilesPage );
                   1369:        PreferencesNotebook->AddPage( DefaultKeyfilesPage, _("Keyfiles"), false );
                   1370:        BackgroundTaskPanel = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                   1371:        wxBoxSizer* bSizer61;
                   1372:        bSizer61 = new wxBoxSizer( wxVERTICAL );
                   1373:        
                   1374:        wxBoxSizer* bSizer62;
                   1375:        bSizer62 = new wxBoxSizer( wxVERTICAL );
                   1376:        
                   1377:        wxStaticBoxSizer* sbSizer18;
                   1378:        sbSizer18 = new wxStaticBoxSizer( new wxStaticBox( BackgroundTaskPanel, wxID_ANY, _("TrueCrypt Background Task") ), wxVERTICAL );
                   1379:        
                   1380:        BackgroundTaskEnabledCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Enabled"), wxDefaultPosition, wxDefaultSize, 0 );
                   1381:        
                   1382:        sbSizer18->Add( BackgroundTaskEnabledCheckBox, 0, wxALL, 5 );
                   1383:        
                   1384:        CloseBackgroundTaskOnNoVolumesCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Exit when there are no mounted volumes"), wxDefaultPosition, wxDefaultSize, 0 );
                   1385:        
                   1386:        sbSizer18->Add( CloseBackgroundTaskOnNoVolumesCheckBox, 0, wxALL, 5 );
                   1387:        
                   1388:        wxStaticBoxSizer* sbSizer26;
                   1389:        sbSizer26 = new wxStaticBoxSizer( new wxStaticBox( BackgroundTaskPanel, wxID_ANY, _("Task Icon Menu Items") ), wxVERTICAL );
                   1390:        
                   1391:        BackgroundTaskMenuMountItemsEnabledCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Mount Favorite Volumes"), wxDefaultPosition, wxDefaultSize, 0 );
                   1392:        
                   1393:        sbSizer26->Add( BackgroundTaskMenuMountItemsEnabledCheckBox, 0, wxALL, 5 );
                   1394:        
                   1395:        BackgroundTaskMenuOpenItemsEnabledCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Open Mounted Volumes"), wxDefaultPosition, wxDefaultSize, 0 );
                   1396:        
                   1397:        sbSizer26->Add( BackgroundTaskMenuOpenItemsEnabledCheckBox, 0, wxALL, 5 );
                   1398:        
                   1399:        BackgroundTaskMenuDismountItemsEnabledCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Dismount Mounted Volumes"), wxDefaultPosition, wxDefaultSize, 0 );
                   1400:        
                   1401:        sbSizer26->Add( BackgroundTaskMenuDismountItemsEnabledCheckBox, 0, wxALL, 5 );
                   1402:        
                   1403:        sbSizer18->Add( sbSizer26, 1, wxEXPAND|wxALL, 5 );
                   1404:        
                   1405:        bSizer62->Add( sbSizer18, 0, wxEXPAND|wxALL, 5 );
                   1406:        
                   1407:        bSizer61->Add( bSizer62, 1, wxEXPAND|wxALL, 5 );
                   1408:        
                   1409:        BackgroundTaskPanel->SetSizer( bSizer61 );
                   1410:        BackgroundTaskPanel->Layout();
                   1411:        bSizer61->Fit( BackgroundTaskPanel );
                   1412:        PreferencesNotebook->AddPage( BackgroundTaskPanel, _("Background Task"), false );
                   1413:        SystemIntegrationPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                   1414:        wxBoxSizer* bSizer49;
                   1415:        bSizer49 = new wxBoxSizer( wxVERTICAL );
                   1416:        
                   1417:        wxBoxSizer* bSizer37;
                   1418:        bSizer37 = new wxBoxSizer( wxVERTICAL );
                   1419:        
                   1420:        LogOnSizer = new wxStaticBoxSizer( new wxStaticBox( SystemIntegrationPage, wxID_ANY, _("Actions to Perform when User Logs On") ), wxVERTICAL );
                   1421:        
                   1422:        StartOnLogonCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Start TrueCrypt Background Task"), wxDefaultPosition, wxDefaultSize, 0 );
                   1423:        
                   1424:        LogOnSizer->Add( StartOnLogonCheckBox, 0, wxALL, 5 );
                   1425:        
                   1426:        MountFavoritesOnLogonCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Mount favorite volumes"), wxDefaultPosition, wxDefaultSize, 0 );
                   1427:        
                   1428:        LogOnSizer->Add( MountFavoritesOnLogonCheckBox, 0, wxALL, 5 );
                   1429:        
                   1430:        MountDevicesOnLogonCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Mount all device-hosted TrueCrypt volumes"), wxDefaultPosition, wxDefaultSize, 0 );
                   1431:        
                   1432:        LogOnSizer->Add( MountDevicesOnLogonCheckBox, 0, wxALL, 5 );
                   1433:        
                   1434:        bSizer37->Add( LogOnSizer, 0, wxALL|wxEXPAND, 5 );
                   1435:        
                   1436:        ExplorerSizer = new wxStaticBoxSizer( new wxStaticBox( SystemIntegrationPage, wxID_ANY, _("Filesystem Explorer") ), wxVERTICAL );
                   1437:        
                   1438:        OpenExplorerWindowAfterMountCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Open Explorer window for successfully mounted volume"), wxDefaultPosition, wxDefaultSize, 0 );
                   1439:        
                   1440:        ExplorerSizer->Add( OpenExplorerWindowAfterMountCheckBox, 0, wxALL, 5 );
                   1441:        
                   1442:        CloseExplorerWindowsOnDismountCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Close all Explorer windows of volume being dismounted"), wxDefaultPosition, wxDefaultSize, 0 );
                   1443:        
                   1444:        ExplorerSizer->Add( CloseExplorerWindowsOnDismountCheckBox, 0, wxALL, 5 );
                   1445:        
                   1446:        bSizer37->Add( ExplorerSizer, 0, wxEXPAND|wxALL, 5 );
                   1447:        
                   1448:        bSizer49->Add( bSizer37, 1, wxEXPAND|wxALL, 5 );
                   1449:        
                   1450:        SystemIntegrationPage->SetSizer( bSizer49 );
                   1451:        SystemIntegrationPage->Layout();
                   1452:        bSizer49->Fit( SystemIntegrationPage );
                   1453:        PreferencesNotebook->AddPage( SystemIntegrationPage, _("System Integration"), false );
                   1454:        HotkeysPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
                   1455:        wxBoxSizer* bSizer51;
                   1456:        bSizer51 = new wxBoxSizer( wxVERTICAL );
                   1457:        
                   1458:        wxBoxSizer* bSizer38;
                   1459:        bSizer38 = new wxBoxSizer( wxVERTICAL );
                   1460:        
                   1461:        wxStaticBoxSizer* sbSizer21;
                   1462:        sbSizer21 = new wxStaticBoxSizer( new wxStaticBox( HotkeysPage, wxID_ANY, _("System-Wide Hotkeys") ), wxVERTICAL );
                   1463:        
                   1464:        HotkeyListCtrl = new wxListCtrl( HotkeysPage, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SINGLE_SEL|wxLC_VRULES|wxSUNKEN_BORDER );
                   1465:        sbSizer21->Add( HotkeyListCtrl, 1, wxALL|wxEXPAND, 5 );
                   1466:        
                   1467:        wxStaticBoxSizer* sbSizer23;
                   1468:        sbSizer23 = new wxStaticBoxSizer( new wxStaticBox( HotkeysPage, wxID_ANY, _("Shortcut") ), wxVERTICAL );
                   1469:        
                   1470:        wxFlexGridSizer* fgSizer4;
                   1471:        fgSizer4 = new wxFlexGridSizer( 2, 3, 0, 0 );
                   1472:        fgSizer4->SetFlexibleDirection( wxBOTH );
                   1473:        fgSizer4->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
                   1474:        
                   1475:        wxStaticText* m_staticText10;
                   1476:        m_staticText10 = new wxStaticText( HotkeysPage, wxID_ANY, _("Key to assign:"), wxDefaultPosition, wxDefaultSize, 0 );
                   1477:        m_staticText10->Wrap( -1 );
                   1478:        fgSizer4->Add( m_staticText10, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   1479:        
                   1480:        HotkeyTextCtrl = new wxTextCtrl( HotkeysPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1481:        fgSizer4->Add( HotkeyTextCtrl, 0, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
                   1482:        
                   1483:        AssignHotkeyButton = new wxButton( HotkeysPage, wxID_ANY, _("Assign"), wxDefaultPosition, wxDefaultSize, 0 );
                   1484:        fgSizer4->Add( AssignHotkeyButton, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1485:        
                   1486:        
                   1487:        fgSizer4->Add( 0, 0, 1, wxEXPAND, 5 );
                   1488:        
                   1489:        wxGridSizer* gSizer4;
                   1490:        gSizer4 = new wxGridSizer( 1, 4, 0, 0 );
                   1491:        
                   1492:        HotkeyControlCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Control"), wxDefaultPosition, wxDefaultSize, 0 );
                   1493:        
                   1494:        gSizer4->Add( HotkeyControlCheckBox, 0, wxALL, 5 );
                   1495:        
                   1496:        HotkeyShiftCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Shift"), wxDefaultPosition, wxDefaultSize, 0 );
                   1497:        
                   1498:        gSizer4->Add( HotkeyShiftCheckBox, 0, wxALL, 5 );
                   1499:        
                   1500:        HotkeyAltCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Alt"), wxDefaultPosition, wxDefaultSize, 0 );
                   1501:        
                   1502:        gSizer4->Add( HotkeyAltCheckBox, 0, wxALL, 5 );
                   1503:        
                   1504:        HotkeyWinCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Win"), wxDefaultPosition, wxDefaultSize, 0 );
                   1505:        
                   1506:        gSizer4->Add( HotkeyWinCheckBox, 0, wxALL, 5 );
                   1507:        
                   1508:        fgSizer4->Add( gSizer4, 1, wxEXPAND, 5 );
                   1509:        
                   1510:        RemoveHotkeyButton = new wxButton( HotkeysPage, wxID_ANY, _("Remove"), wxDefaultPosition, wxDefaultSize, 0 );
                   1511:        fgSizer4->Add( RemoveHotkeyButton, 1, wxALL, 5 );
                   1512:        
                   1513:        sbSizer23->Add( fgSizer4, 1, wxALIGN_RIGHT, 5 );
                   1514:        
                   1515:        sbSizer21->Add( sbSizer23, 0, wxEXPAND|wxALL, 5 );
                   1516:        
                   1517:        wxStaticBoxSizer* sbSizer24;
                   1518:        sbSizer24 = new wxStaticBoxSizer( new wxStaticBox( HotkeysPage, wxID_ANY, _("Options") ), wxVERTICAL );
                   1519:        
                   1520:        BeepAfterHotkeyMountDismountCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Play system notification sound after mount/dismount"), wxDefaultPosition, wxDefaultSize, 0 );
                   1521:        
                   1522:        sbSizer24->Add( BeepAfterHotkeyMountDismountCheckBox, 0, wxALL, 5 );
                   1523:        
                   1524:        DisplayMessageAfterHotkeyDismountCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Display confirmation message box after dismount"), wxDefaultPosition, wxDefaultSize, 0 );
                   1525:        
                   1526:        sbSizer24->Add( DisplayMessageAfterHotkeyDismountCheckBox, 0, wxALL, 5 );
                   1527:        
                   1528:        sbSizer21->Add( sbSizer24, 0, wxEXPAND|wxALL, 5 );
                   1529:        
                   1530:        bSizer38->Add( sbSizer21, 1, wxEXPAND|wxALL, 5 );
                   1531:        
                   1532:        bSizer51->Add( bSizer38, 1, wxEXPAND|wxALL, 5 );
                   1533:        
                   1534:        HotkeysPage->SetSizer( bSizer51 );
                   1535:        HotkeysPage->Layout();
                   1536:        bSizer51->Fit( HotkeysPage );
                   1537:        PreferencesNotebook->AddPage( HotkeysPage, _("Hotkeys"), false );
                   1538:        
                   1539:        bSizer41->Add( PreferencesNotebook, 1, wxEXPAND | wxALL, 5 );
                   1540:        
                   1541:        StdButtons = new wxStdDialogButtonSizer();
                   1542:        StdButtonsOK = new wxButton( this, wxID_OK );
                   1543:        StdButtons->AddButton( StdButtonsOK );
                   1544:        StdButtonsCancel = new wxButton( this, wxID_CANCEL );
                   1545:        StdButtons->AddButton( StdButtonsCancel );
                   1546:        StdButtons->Realize();
                   1547:        bSizer41->Add( StdButtons, 0, wxEXPAND|wxALL, 5 );
                   1548:        
                   1549:        bSizer32->Add( bSizer41, 1, wxEXPAND|wxALL, 5 );
                   1550:        
                   1551:        this->SetSizer( bSizer32 );
                   1552:        this->Layout();
                   1553:        bSizer32->Fit( this );
                   1554:        
                   1555:        // Connect Events
                   1556:        this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( PreferencesDialogBase::OnClose ) );
                   1557:        DismountOnScreenSaverCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnDismountOnScreenSaverCheckBoxClick ), NULL, this );
                   1558:        DismountOnPowerSavingCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnDismountOnPowerSavingCheckBoxClick ), NULL, this );
                   1559:        ForceAutoDismountCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnForceAutoDismountCheckBoxClick ), NULL, this );
                   1560:        PreserveTimestampsCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnPreserveTimestampsCheckBoxClick ), NULL, this );
                   1561:        BackgroundTaskEnabledCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnBackgroundTaskEnabledCheckBoxClick ), NULL, this );
                   1562:        HotkeyListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( PreferencesDialogBase::OnHotkeyListItemDeselected ), NULL, this );
                   1563:        HotkeyListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( PreferencesDialogBase::OnHotkeyListItemSelected ), NULL, this );
                   1564:        AssignHotkeyButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnAssignHotkeyButtonClick ), NULL, this );
                   1565:        RemoveHotkeyButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnRemoveHotkeyButtonClick ), NULL, this );
                   1566:        StdButtonsCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnCancelButtonClick ), NULL, this );
                   1567:        StdButtonsOK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnOKButtonClick ), NULL, this );
                   1568: }
                   1569: 
                   1570: PreferencesDialogBase::~PreferencesDialogBase()
                   1571: {
                   1572:        // Disconnect Events
                   1573:        this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( PreferencesDialogBase::OnClose ) );
                   1574:        DismountOnScreenSaverCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnDismountOnScreenSaverCheckBoxClick ), NULL, this );
                   1575:        DismountOnPowerSavingCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnDismountOnPowerSavingCheckBoxClick ), NULL, this );
                   1576:        ForceAutoDismountCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnForceAutoDismountCheckBoxClick ), NULL, this );
                   1577:        PreserveTimestampsCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnPreserveTimestampsCheckBoxClick ), NULL, this );
                   1578:        BackgroundTaskEnabledCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnBackgroundTaskEnabledCheckBoxClick ), NULL, this );
                   1579:        HotkeyListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( PreferencesDialogBase::OnHotkeyListItemDeselected ), NULL, this );
                   1580:        HotkeyListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( PreferencesDialogBase::OnHotkeyListItemSelected ), NULL, this );
                   1581:        AssignHotkeyButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnAssignHotkeyButtonClick ), NULL, this );
                   1582:        RemoveHotkeyButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnRemoveHotkeyButtonClick ), NULL, this );
                   1583:        StdButtonsCancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnCancelButtonClick ), NULL, this );
                   1584:        StdButtonsOK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnOKButtonClick ), NULL, this );
                   1585: }
                   1586: 
                   1587: VolumePropertiesDialogBase::VolumePropertiesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style )
                   1588: {
                   1589:        this->SetSizeHints( wxDefaultSize, wxDefaultSize );
                   1590:        
                   1591:        wxBoxSizer* bSizer49;
                   1592:        bSizer49 = new wxBoxSizer( wxVERTICAL );
                   1593:        
                   1594:        wxBoxSizer* bSizer50;
                   1595:        bSizer50 = new wxBoxSizer( wxVERTICAL );
                   1596:        
                   1597:        PropertiesListCtrl = new wxListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_VRULES|wxSUNKEN_BORDER );
                   1598:        bSizer50->Add( PropertiesListCtrl, 1, wxALL|wxEXPAND, 5 );
                   1599:        
                   1600:        StdButtons = new wxStdDialogButtonSizer();
                   1601:        StdButtonsOK = new wxButton( this, wxID_OK );
                   1602:        StdButtons->AddButton( StdButtonsOK );
                   1603:        StdButtons->Realize();
                   1604:        bSizer50->Add( StdButtons, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 );
                   1605:        
                   1606:        bSizer49->Add( bSizer50, 1, wxEXPAND|wxALL, 5 );
                   1607:        
                   1608:        this->SetSizer( bSizer49 );
                   1609:        this->Layout();
                   1610:        bSizer49->Fit( this );
                   1611: }
                   1612: 
                   1613: VolumePropertiesDialogBase::~VolumePropertiesDialogBase()
                   1614: {
                   1615: }
                   1616: 
                   1617: EncryptionOptionsWizardPageBase::EncryptionOptionsWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   1618: {
                   1619:        wxBoxSizer* bSizer93;
                   1620:        bSizer93 = new wxBoxSizer( wxVERTICAL );
                   1621:        
                   1622:        wxBoxSizer* bSizer94;
                   1623:        bSizer94 = new wxBoxSizer( wxVERTICAL );
                   1624:        
                   1625:        wxBoxSizer* bSizer95;
                   1626:        bSizer95 = new wxBoxSizer( wxVERTICAL );
                   1627:        
                   1628:        wxStaticBoxSizer* sbSizer29;
                   1629:        sbSizer29 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Encryption Algorithm") ), wxVERTICAL );
                   1630:        
                   1631:        wxBoxSizer* bSizer96;
                   1632:        bSizer96 = new wxBoxSizer( wxHORIZONTAL );
                   1633:        
                   1634:        wxArrayString EncryptionAlgorithmChoiceChoices;
                   1635:        EncryptionAlgorithmChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, EncryptionAlgorithmChoiceChoices, 0 );
                   1636:        EncryptionAlgorithmChoice->SetSelection( 0 );
                   1637:        bSizer96->Add( EncryptionAlgorithmChoice, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1638:        
                   1639:        TestButton = new wxButton( this, wxID_ANY, _("&Test"), wxDefaultPosition, wxDefaultSize, 0 );
                   1640:        bSizer96->Add( TestButton, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1641:        
                   1642:        sbSizer29->Add( bSizer96, 0, wxEXPAND, 5 );
                   1643:        
                   1644:        EncryptionAlgorithmStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1645:        EncryptionAlgorithmStaticText->Wrap( -1 );
                   1646:        sbSizer29->Add( EncryptionAlgorithmStaticText, 1, wxALL|wxEXPAND, 5 );
                   1647:        
                   1648:        wxBoxSizer* bSizer97;
                   1649:        bSizer97 = new wxBoxSizer( wxHORIZONTAL );
                   1650:        
                   1651:        EncryptionAlgorithmHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, _("More information"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
                   1652:        
                   1653:        EncryptionAlgorithmHyperlink->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   1654:        EncryptionAlgorithmHyperlink->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   1655:        EncryptionAlgorithmHyperlink->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   1656:        bSizer97->Add( EncryptionAlgorithmHyperlink, 0, wxALL, 5 );
                   1657:        
                   1658:        
                   1659:        bSizer97->Add( 0, 0, 1, wxEXPAND, 5 );
                   1660:        
                   1661:        BenchmarkButton = new wxButton( this, wxID_ANY, _("&Benchmark"), wxDefaultPosition, wxDefaultSize, 0 );
                   1662:        BenchmarkButton->Hide();
                   1663:        
                   1664:        bSizer97->Add( BenchmarkButton, 0, wxALL, 5 );
                   1665:        
                   1666:        sbSizer29->Add( bSizer97, 0, wxEXPAND, 5 );
                   1667:        
                   1668:        bSizer95->Add( sbSizer29, 1, wxEXPAND|wxALL, 5 );
                   1669:        
                   1670:        wxStaticBoxSizer* sbSizer30;
                   1671:        sbSizer30 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Hash Algorithm") ), wxHORIZONTAL );
                   1672:        
                   1673:        wxArrayString HashChoiceChoices;
                   1674:        HashChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, HashChoiceChoices, 0 );
                   1675:        HashChoice->SetSelection( 0 );
                   1676:        sbSizer30->Add( HashChoice, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1677:        
                   1678:        HashHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, _("Information on hash algorithms"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
                   1679:        
                   1680:        HashHyperlink->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   1681:        HashHyperlink->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   1682:        HashHyperlink->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   1683:        sbSizer30->Add( HashHyperlink, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1684:        
                   1685:        bSizer95->Add( sbSizer30, 0, wxEXPAND|wxALL, 5 );
                   1686:        
                   1687:        bSizer94->Add( bSizer95, 1, wxEXPAND, 5 );
                   1688:        
                   1689:        bSizer93->Add( bSizer94, 1, wxEXPAND, 5 );
                   1690:        
                   1691:        this->SetSizer( bSizer93 );
                   1692:        this->Layout();
                   1693:        bSizer93->Fit( this );
                   1694:        
                   1695:        // Connect Events
                   1696:        EncryptionAlgorithmChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( EncryptionOptionsWizardPageBase::OnEncryptionAlgorithmSelected ), NULL, this );
                   1697:        TestButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( EncryptionOptionsWizardPageBase::OnTestButtonClick ), NULL, this );
                   1698:        EncryptionAlgorithmHyperlink->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( EncryptionOptionsWizardPageBase::OnEncryptionAlgorithmHyperlinkClick ), NULL, this );
                   1699:        BenchmarkButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( EncryptionOptionsWizardPageBase::OnBenchmarkButtonClick ), NULL, this );
                   1700:        HashHyperlink->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( EncryptionOptionsWizardPageBase::OnHashHyperlinkClick ), NULL, this );
                   1701: }
                   1702: 
                   1703: EncryptionOptionsWizardPageBase::~EncryptionOptionsWizardPageBase()
                   1704: {
                   1705:        // Disconnect Events
                   1706:        EncryptionAlgorithmChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( EncryptionOptionsWizardPageBase::OnEncryptionAlgorithmSelected ), NULL, this );
                   1707:        TestButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( EncryptionOptionsWizardPageBase::OnTestButtonClick ), NULL, this );
                   1708:        EncryptionAlgorithmHyperlink->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( EncryptionOptionsWizardPageBase::OnEncryptionAlgorithmHyperlinkClick ), NULL, this );
                   1709:        BenchmarkButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( EncryptionOptionsWizardPageBase::OnBenchmarkButtonClick ), NULL, this );
                   1710:        HashHyperlink->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( EncryptionOptionsWizardPageBase::OnHashHyperlinkClick ), NULL, this );
                   1711: }
                   1712: 
                   1713: InfoWizardPageBase::InfoWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   1714: {
                   1715:        wxBoxSizer* bSizer71;
                   1716:        bSizer71 = new wxBoxSizer( wxVERTICAL );
                   1717:        
                   1718:        wxBoxSizer* bSizer72;
                   1719:        bSizer72 = new wxBoxSizer( wxVERTICAL );
                   1720:        
                   1721:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1722:        InfoStaticText->Wrap( -1 );
                   1723:        bSizer72->Add( InfoStaticText, 1, wxALL|wxEXPAND, 5 );
                   1724:        
                   1725:        bSizer71->Add( bSizer72, 1, wxEXPAND, 5 );
                   1726:        
                   1727:        this->SetSizer( bSizer71 );
                   1728:        this->Layout();
                   1729:        bSizer71->Fit( this );
                   1730: }
                   1731: 
                   1732: InfoWizardPageBase::~InfoWizardPageBase()
                   1733: {
                   1734: }
                   1735: 
                   1736: KeyfilesPanelBase::KeyfilesPanelBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style )
                   1737: {
                   1738:        wxBoxSizer* bSizer19;
                   1739:        bSizer19 = new wxBoxSizer( wxVERTICAL );
                   1740:        
                   1741:        wxBoxSizer* bSizer20;
                   1742:        bSizer20 = new wxBoxSizer( wxHORIZONTAL );
                   1743:        
                   1744:        wxBoxSizer* bSizer21;
                   1745:        bSizer21 = new wxBoxSizer( wxVERTICAL );
                   1746:        
                   1747:        KeyfilesListCtrl = new wxListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxSUNKEN_BORDER );
                   1748:        bSizer21->Add( KeyfilesListCtrl, 1, wxEXPAND|wxALL, 5 );
                   1749:        
                   1750:        wxGridSizer* gSizer3;
                   1751:        gSizer3 = new wxGridSizer( 1, 4, 0, 0 );
                   1752:        
                   1753:        AddFilesButton = new wxButton( this, wxID_ANY, _("Add &Files..."), wxDefaultPosition, wxDefaultSize, 0 );
                   1754:        gSizer3->Add( AddFilesButton, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   1755:        
                   1756:        AddDirectoryButton = new wxButton( this, wxID_ANY, _("Add &Directory..."), wxDefaultPosition, wxDefaultSize, 0 );
                   1757:        gSizer3->Add( AddDirectoryButton, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   1758:        
                   1759:        RemoveButton = new wxButton( this, wxID_ANY, _("&Remove"), wxDefaultPosition, wxDefaultSize, 0 );
                   1760:        gSizer3->Add( RemoveButton, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   1761:        
                   1762:        RemoveAllButton = new wxButton( this, wxID_ANY, _("Remove &All"), wxDefaultPosition, wxDefaultSize, 0 );
                   1763:        gSizer3->Add( RemoveAllButton, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   1764:        
                   1765:        bSizer21->Add( gSizer3, 0, wxEXPAND|wxRIGHT, 5 );
                   1766:        
                   1767:        bSizer20->Add( bSizer21, 1, wxEXPAND, 5 );
                   1768:        
                   1769:        bSizer19->Add( bSizer20, 1, wxEXPAND, 5 );
                   1770:        
                   1771:        this->SetSizer( bSizer19 );
                   1772:        this->Layout();
                   1773:        
                   1774:        // Connect Events
                   1775:        KeyfilesListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( KeyfilesPanelBase::OnListItemDeselected ), NULL, this );
                   1776:        KeyfilesListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( KeyfilesPanelBase::OnListItemSelected ), NULL, this );
                   1777:        KeyfilesListCtrl->Connect( wxEVT_SIZE, wxSizeEventHandler( KeyfilesPanelBase::OnListSizeChanged ), NULL, this );
                   1778:        AddFilesButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnAddFilesButtonClick ), NULL, this );
                   1779:        AddDirectoryButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnAddDirectoryButtonClick ), NULL, this );
                   1780:        RemoveButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnRemoveButtonClick ), NULL, this );
                   1781:        RemoveAllButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnRemoveAllButtonClick ), NULL, this );
                   1782: }
                   1783: 
                   1784: KeyfilesPanelBase::~KeyfilesPanelBase()
                   1785: {
                   1786:        // Disconnect Events
                   1787:        KeyfilesListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( KeyfilesPanelBase::OnListItemDeselected ), NULL, this );
                   1788:        KeyfilesListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( KeyfilesPanelBase::OnListItemSelected ), NULL, this );
                   1789:        KeyfilesListCtrl->Disconnect( wxEVT_SIZE, wxSizeEventHandler( KeyfilesPanelBase::OnListSizeChanged ), NULL, this );
                   1790:        AddFilesButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnAddFilesButtonClick ), NULL, this );
                   1791:        AddDirectoryButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnAddDirectoryButtonClick ), NULL, this );
                   1792:        RemoveButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnRemoveButtonClick ), NULL, this );
                   1793:        RemoveAllButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnRemoveAllButtonClick ), NULL, this );
                   1794: }
                   1795: 
                   1796: ProgressWizardPageBase::ProgressWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   1797: {
                   1798:        wxBoxSizer* bSizer81;
                   1799:        bSizer81 = new wxBoxSizer( wxVERTICAL );
                   1800:        
                   1801:        wxBoxSizer* bSizer82;
                   1802:        bSizer82 = new wxBoxSizer( wxVERTICAL );
                   1803:        
                   1804:        ProgressSizer = new wxBoxSizer( wxHORIZONTAL );
                   1805:        
                   1806:        ProgressGauge = new wxGauge( this, wxID_ANY, 100, wxDefaultPosition, wxSize( -1,-1 ), wxGA_HORIZONTAL|wxGA_SMOOTH );
                   1807:        ProgressGauge->SetValue( 0 ); 
                   1808:        ProgressSizer->Add( ProgressGauge, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1809:        
                   1810:        AbortButton = new wxButton( this, wxID_ANY, _("&Abort"), wxDefaultPosition, wxDefaultSize, 0 );
                   1811:        AbortButton->Enable( false );
                   1812:        
                   1813:        ProgressSizer->Add( AbortButton, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 );
                   1814:        
                   1815:        bSizer82->Add( ProgressSizer, 0, wxEXPAND, 5 );
                   1816:        
                   1817:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1818:        InfoStaticText->Wrap( -1 );
                   1819:        bSizer82->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 );
                   1820:        
                   1821:        bSizer81->Add( bSizer82, 0, wxEXPAND, 5 );
                   1822:        
                   1823:        this->SetSizer( bSizer81 );
                   1824:        this->Layout();
                   1825:        bSizer81->Fit( this );
                   1826:        
                   1827:        // Connect Events
                   1828:        AbortButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ProgressWizardPageBase::OnAbortButtonClick ), NULL, this );
                   1829: }
                   1830: 
                   1831: ProgressWizardPageBase::~ProgressWizardPageBase()
                   1832: {
                   1833:        // Disconnect Events
                   1834:        AbortButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ProgressWizardPageBase::OnAbortButtonClick ), NULL, this );
                   1835: }
                   1836: 
                   1837: SelectDirectoryWizardPageBase::SelectDirectoryWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   1838: {
                   1839:        wxBoxSizer* bSizer68;
                   1840:        bSizer68 = new wxBoxSizer( wxVERTICAL );
                   1841:        
                   1842:        wxBoxSizer* bSizer69;
                   1843:        bSizer69 = new wxBoxSizer( wxVERTICAL );
                   1844:        
                   1845:        wxBoxSizer* bSizer70;
                   1846:        bSizer70 = new wxBoxSizer( wxHORIZONTAL );
                   1847:        
                   1848:        DirectoryTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1849:        bSizer70->Add( DirectoryTextCtrl, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1850:        
                   1851:        BrowseButton = new wxButton( this, wxID_ANY, _("&Browse..."), wxDefaultPosition, wxDefaultSize, 0 );
                   1852:        bSizer70->Add( BrowseButton, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1853:        
                   1854:        bSizer69->Add( bSizer70, 0, wxEXPAND, 5 );
                   1855:        
                   1856:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1857:        InfoStaticText->Wrap( 300 );
                   1858:        bSizer69->Add( InfoStaticText, 1, wxALL|wxEXPAND, 5 );
                   1859:        
                   1860:        bSizer68->Add( bSizer69, 1, wxEXPAND, 5 );
                   1861:        
                   1862:        this->SetSizer( bSizer68 );
                   1863:        this->Layout();
                   1864:        
                   1865:        // Connect Events
                   1866:        DirectoryTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( SelectDirectoryWizardPageBase::OnDirectoryTextChanged ), NULL, this );
                   1867:        BrowseButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SelectDirectoryWizardPageBase::OnBrowseButtonClick ), NULL, this );
                   1868: }
                   1869: 
                   1870: SelectDirectoryWizardPageBase::~SelectDirectoryWizardPageBase()
                   1871: {
                   1872:        // Disconnect Events
                   1873:        DirectoryTextCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( SelectDirectoryWizardPageBase::OnDirectoryTextChanged ), NULL, this );
                   1874:        BrowseButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SelectDirectoryWizardPageBase::OnBrowseButtonClick ), NULL, this );
                   1875: }
                   1876: 
                   1877: SingleChoiceWizardPageBase::SingleChoiceWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   1878: {
                   1879:        wxBoxSizer* bSizer71;
                   1880:        bSizer71 = new wxBoxSizer( wxVERTICAL );
                   1881:        
                   1882:        wxBoxSizer* bSizer77;
                   1883:        bSizer77 = new wxBoxSizer( wxVERTICAL );
                   1884:        
                   1885:        OuterChoicesSizer = new wxBoxSizer( wxVERTICAL );
                   1886:        
                   1887:        ChoicesSizer = new wxBoxSizer( wxVERTICAL );
                   1888:        
                   1889:        OuterChoicesSizer->Add( ChoicesSizer, 0, wxEXPAND, 5 );
                   1890:        
                   1891:        bSizer77->Add( OuterChoicesSizer, 0, wxEXPAND, 5 );
                   1892:        
                   1893:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1894:        InfoStaticText->Wrap( -1 );
                   1895:        bSizer77->Add( InfoStaticText, 1, wxALL|wxEXPAND, 5 );
                   1896:        
                   1897:        bSizer71->Add( bSizer77, 1, wxEXPAND, 5 );
                   1898:        
                   1899:        this->SetSizer( bSizer71 );
                   1900:        this->Layout();
                   1901:        bSizer71->Fit( this );
                   1902: }
                   1903: 
                   1904: SingleChoiceWizardPageBase::~SingleChoiceWizardPageBase()
                   1905: {
                   1906: }
                   1907: 
                   1908: TravelerMountOptionsWizardPageBase::TravelerMountOptionsWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   1909: {
                   1910:        wxBoxSizer* bSizer78;
                   1911:        bSizer78 = new wxBoxSizer( wxVERTICAL );
                   1912:        
                   1913:        wxBoxSizer* bSizer79;
                   1914:        bSizer79 = new wxBoxSizer( wxVERTICAL );
                   1915:        
                   1916:        wxStaticBoxSizer* sbSizer28;
                   1917:        sbSizer28 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxEmptyString ), wxVERTICAL );
                   1918:        
                   1919:        wxStaticText* m_staticText15;
                   1920:        m_staticText15 = new wxStaticText( this, wxID_ANY, _("TrueCrypt volume to mount:"), wxDefaultPosition, wxDefaultSize, 0 );
                   1921:        m_staticText15->Wrap( -1 );
                   1922:        sbSizer28->Add( m_staticText15, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
                   1923:        
                   1924:        wxBoxSizer* bSizer80;
                   1925:        bSizer80 = new wxBoxSizer( wxHORIZONTAL );
                   1926:        
                   1927:        VolumePathTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1928:        bSizer80->Add( VolumePathTextCtrl, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1929:        
                   1930:        SelectVolumeButton = new wxButton( this, wxID_ANY, _("Select..."), wxDefaultPosition, wxDefaultSize, 0 );
                   1931:        bSizer80->Add( SelectVolumeButton, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
                   1932:        
                   1933:        sbSizer28->Add( bSizer80, 0, wxEXPAND, 5 );
                   1934:        
                   1935:        wxBoxSizer* bSizer81;
                   1936:        bSizer81 = new wxBoxSizer( wxHORIZONTAL );
                   1937:        
                   1938:        wxStaticText* m_staticText16;
                   1939:        m_staticText16 = new wxStaticText( this, wxID_ANY, _("Mount volume as drive letter:"), wxDefaultPosition, wxDefaultSize, 0 );
                   1940:        m_staticText16->Wrap( -1 );
                   1941:        bSizer81->Add( m_staticText16, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   1942:        
                   1943:        wxArrayString MountPointChoiceChoices;
                   1944:        MountPointChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, MountPointChoiceChoices, 0 );
                   1945:        MountPointChoice->SetSelection( 0 );
                   1946:        bSizer81->Add( MountPointChoice, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   1947:        
                   1948:        sbSizer28->Add( bSizer81, 0, wxEXPAND, 5 );
                   1949:        
                   1950:        BackgroundTaskCheckBox = new wxCheckBox( this, wxID_ANY, _("Enable Background Task until volume is dismounted"), wxDefaultPosition, wxDefaultSize, 0 );
                   1951:        
                   1952:        sbSizer28->Add( BackgroundTaskCheckBox, 0, wxALL, 5 );
                   1953:        
                   1954:        OpenExplorerCheckBox = new wxCheckBox( this, wxID_ANY, _("Open &Explorer window for mounted volume"), wxDefaultPosition, wxDefaultSize, 0 );
                   1955:        
                   1956:        sbSizer28->Add( OpenExplorerCheckBox, 0, wxALL, 5 );
                   1957:        
                   1958:        MountReadOnlyCheckBox = new wxCheckBox( this, wxID_ANY, _("Mount volume as read-&only"), wxDefaultPosition, wxDefaultSize, 0 );
                   1959:        
                   1960:        sbSizer28->Add( MountReadOnlyCheckBox, 0, wxALL, 5 );
                   1961:        
                   1962:        CachePasswordCheckBox = new wxCheckBox( this, wxID_ANY, _("Cach&e passwords and keyfiles in memory"), wxDefaultPosition, wxDefaultSize, 0 );
                   1963:        
                   1964:        sbSizer28->Add( CachePasswordCheckBox, 0, wxALL, 5 );
                   1965:        
                   1966:        bSizer79->Add( sbSizer28, 0, wxEXPAND, 5 );
                   1967:        
                   1968:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   1969:        InfoStaticText->Wrap( -1 );
                   1970:        bSizer79->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 );
                   1971:        
                   1972:        bSizer78->Add( bSizer79, 1, wxEXPAND, 5 );
                   1973:        
                   1974:        this->SetSizer( bSizer78 );
                   1975:        this->Layout();
                   1976:        bSizer78->Fit( this );
                   1977:        
                   1978:        // Connect Events
                   1979:        VolumePathTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( TravelerMountOptionsWizardPageBase::OnVolumePathTextChanged ), NULL, this );
                   1980:        SelectVolumeButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( TravelerMountOptionsWizardPageBase::OnSelectVolumeButtonClick ), NULL, this );
                   1981: }
                   1982: 
                   1983: TravelerMountOptionsWizardPageBase::~TravelerMountOptionsWizardPageBase()
                   1984: {
                   1985:        // Disconnect Events
                   1986:        VolumePathTextCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( TravelerMountOptionsWizardPageBase::OnVolumePathTextChanged ), NULL, this );
                   1987:        SelectVolumeButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( TravelerMountOptionsWizardPageBase::OnSelectVolumeButtonClick ), NULL, this );
                   1988: }
                   1989: 
                   1990: VolumeCreationIntroWizardPageBase::VolumeCreationIntroWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   1991: {
                   1992:        wxBoxSizer* bSizer84;
                   1993:        bSizer84 = new wxBoxSizer( wxVERTICAL );
                   1994:        
                   1995:        wxBoxSizer* bSizer85;
                   1996:        bSizer85 = new wxBoxSizer( wxVERTICAL );
                   1997:        
                   1998:        
                   1999:        bSizer85->Add( 0, 0, 0, wxEXPAND|wxTOP, 5 );
                   2000:        
                   2001:        StandardVolumeRadioButton = new wxRadioButton( this, wxID_ANY, _("Create a standard TrueCrypt volume"), wxDefaultPosition, wxDefaultSize, 0 );
                   2002:        bSizer85->Add( StandardVolumeRadioButton, 0, wxALL, 5 );
                   2003:        
                   2004:        HiddenVolumeRadioButton = new wxRadioButton( this, wxID_ANY, _("Create a hi&dden TrueCrypt volume "), wxDefaultPosition, wxDefaultSize, 0 );
                   2005:        bSizer85->Add( HiddenVolumeRadioButton, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
                   2006:        
                   2007:        
                   2008:        bSizer85->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
                   2009:        
                   2010:        HiddenVolumeHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, _("What is a hidden volume?"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE );
                   2011:        
                   2012:        HiddenVolumeHyperlink->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   2013:        HiddenVolumeHyperlink->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   2014:        HiddenVolumeHyperlink->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) );
                   2015:        bSizer85->Add( HiddenVolumeHyperlink, 0, wxALL, 5 );
                   2016:        
                   2017:        
                   2018:        bSizer85->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
                   2019:        
                   2020:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2021:        InfoStaticText->Wrap( -1 );
                   2022:        bSizer85->Add( InfoStaticText, 0, wxALL, 5 );
                   2023:        
                   2024:        
                   2025:        bSizer85->Add( 0, 0, 0, wxTOP|wxBOTTOM|wxEXPAND, 5 );
                   2026:        
                   2027:        bSizer84->Add( bSizer85, 1, wxEXPAND, 5 );
                   2028:        
                   2029:        this->SetSizer( bSizer84 );
                   2030:        this->Layout();
                   2031:        bSizer84->Fit( this );
                   2032:        
                   2033:        // Connect Events
                   2034:        HiddenVolumeHyperlink->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( VolumeCreationIntroWizardPageBase::OnHiddenVolumeHyperlinkClick ), NULL, this );
                   2035: }
                   2036: 
                   2037: VolumeCreationIntroWizardPageBase::~VolumeCreationIntroWizardPageBase()
                   2038: {
                   2039:        // Disconnect Events
                   2040:        HiddenVolumeHyperlink->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( VolumeCreationIntroWizardPageBase::OnHiddenVolumeHyperlinkClick ), NULL, this );
                   2041: }
                   2042: 
                   2043: VolumeCreationProgressWizardPageBase::VolumeCreationProgressWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   2044: {
                   2045:        wxBoxSizer* bSizer104;
                   2046:        bSizer104 = new wxBoxSizer( wxVERTICAL );
                   2047:        
                   2048:        wxBoxSizer* bSizer105;
                   2049:        bSizer105 = new wxBoxSizer( wxVERTICAL );
                   2050:        
                   2051:        wxStaticBoxSizer* sbSizer31;
                   2052:        sbSizer31 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxEmptyString ), wxVERTICAL );
                   2053:        
                   2054:        wxFlexGridSizer* fgSizer5;
                   2055:        fgSizer5 = new wxFlexGridSizer( 3, 2, 0, 0 );
                   2056:        fgSizer5->SetFlexibleDirection( wxBOTH );
                   2057:        fgSizer5->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
                   2058:        
                   2059:        wxStaticText* m_staticText25;
                   2060:        m_staticText25 = new wxStaticText( this, wxID_ANY, _("Random Pool:"), wxDefaultPosition, wxDefaultSize, 0 );
                   2061:        m_staticText25->Wrap( -1 );
                   2062:        fgSizer5->Add( m_staticText25, 0, wxALL|wxALIGN_RIGHT|wxALIGN_BOTTOM, 5 );
                   2063:        
                   2064:        wxBoxSizer* bSizer126;
                   2065:        bSizer126 = new wxBoxSizer( wxHORIZONTAL );
                   2066:        
                   2067:        RandomPoolSampleStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2068:        RandomPoolSampleStaticText->Wrap( -1 );
                   2069:        RandomPoolSampleStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier New") ) );
                   2070:        
                   2071:        bSizer126->Add( RandomPoolSampleStaticText, 0, wxALIGN_BOTTOM|wxEXPAND|wxTOP|wxRIGHT, 5 );
                   2072:        
                   2073:        DisplayKeysCheckBox = new wxCheckBox( this, wxID_ANY, _("Show"), wxDefaultPosition, wxDefaultSize, 0 );
                   2074:        DisplayKeysCheckBox->SetValue(true);
                   2075:        
                   2076:        bSizer126->Add( DisplayKeysCheckBox, 0, wxEXPAND|wxLEFT, 5 );
                   2077:        
                   2078:        fgSizer5->Add( bSizer126, 1, wxEXPAND|wxALIGN_BOTTOM, 5 );
                   2079:        
                   2080:        wxStaticText* m_staticText28;
                   2081:        m_staticText28 = new wxStaticText( this, wxID_ANY, _("Header Key:"), wxDefaultPosition, wxSize( -1,-1 ), 0 );
                   2082:        m_staticText28->Wrap( -1 );
                   2083:        fgSizer5->Add( m_staticText28, 0, wxALIGN_RIGHT|wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_BOTTOM, 5 );
                   2084:        
                   2085:        HeaderKeySampleStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2086:        HeaderKeySampleStaticText->Wrap( -1 );
                   2087:        HeaderKeySampleStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier New") ) );
                   2088:        
                   2089:        fgSizer5->Add( HeaderKeySampleStaticText, 0, wxBOTTOM|wxRIGHT|wxALIGN_BOTTOM|wxEXPAND, 5 );
                   2090:        
                   2091:        wxStaticText* m_staticText29;
                   2092:        m_staticText29 = new wxStaticText( this, wxID_ANY, _("Master Key:"), wxDefaultPosition, wxDefaultSize, 0 );
                   2093:        m_staticText29->Wrap( -1 );
                   2094:        fgSizer5->Add( m_staticText29, 0, wxALIGN_RIGHT|wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_BOTTOM, 5 );
                   2095:        
                   2096:        MasterKeySampleStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2097:        MasterKeySampleStaticText->Wrap( -1 );
                   2098:        MasterKeySampleStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier New") ) );
                   2099:        
                   2100:        fgSizer5->Add( MasterKeySampleStaticText, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxALIGN_BOTTOM, 5 );
                   2101:        
                   2102:        sbSizer31->Add( fgSizer5, 0, wxEXPAND, 5 );
                   2103:        
                   2104:        bSizer105->Add( sbSizer31, 0, wxALL|wxEXPAND, 5 );
                   2105:        
                   2106:        wxStaticBoxSizer* sbSizer32;
                   2107:        sbSizer32 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxEmptyString ), wxVERTICAL );
                   2108:        
                   2109:        wxBoxSizer* bSizer106;
                   2110:        bSizer106 = new wxBoxSizer( wxHORIZONTAL );
                   2111:        
                   2112:        ProgressGauge = new wxGauge( this, wxID_ANY, 100, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH );
                   2113:        bSizer106->Add( ProgressGauge, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 );
                   2114:        
                   2115:        AbortButton = new wxButton( this, wxID_ANY, _("Abort"), wxDefaultPosition, wxDefaultSize, 0 );
                   2116:        bSizer106->Add( AbortButton, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
                   2117:        
                   2118:        sbSizer32->Add( bSizer106, 0, wxEXPAND, 5 );
                   2119:        
                   2120:        wxGridSizer* gSizer6;
                   2121:        gSizer6 = new wxGridSizer( 1, 3, 0, 0 );
                   2122:        
                   2123:        wxBoxSizer* bSizer108;
                   2124:        bSizer108 = new wxBoxSizer( wxHORIZONTAL );
                   2125:        
                   2126:        m_staticText31 = new wxStaticText( this, wxID_ANY, _("Done"), wxDefaultPosition, wxDefaultSize, 0 );
                   2127:        m_staticText31->Wrap( -1 );
                   2128:        bSizer108->Add( m_staticText31, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   2129:        
                   2130:        m_panel12 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxSUNKEN_BORDER );
                   2131:        wxBoxSizer* bSizer115;
                   2132:        bSizer115 = new wxBoxSizer( wxHORIZONTAL );
                   2133:        
                   2134:        SizeDoneStaticText = new wxStaticText( m_panel12, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT|wxST_NO_AUTORESIZE );
                   2135:        SizeDoneStaticText->Wrap( -1 );
                   2136:        bSizer115->Add( SizeDoneStaticText, 1, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxALL, 3 );
                   2137:        
                   2138:        m_panel12->SetSizer( bSizer115 );
                   2139:        m_panel12->Layout();
                   2140:        bSizer115->Fit( m_panel12 );
                   2141:        bSizer108->Add( m_panel12, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
                   2142:        
                   2143:        gSizer6->Add( bSizer108, 1, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
                   2144:        
                   2145:        wxBoxSizer* bSizer1081;
                   2146:        bSizer1081 = new wxBoxSizer( wxHORIZONTAL );
                   2147:        
                   2148:        m_staticText311 = new wxStaticText( this, wxID_ANY, _("Speed"), wxDefaultPosition, wxDefaultSize, 0 );
                   2149:        m_staticText311->Wrap( -1 );
                   2150:        bSizer1081->Add( m_staticText311, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   2151:        
                   2152:        m_panel121 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER );
                   2153:        wxBoxSizer* bSizer1151;
                   2154:        bSizer1151 = new wxBoxSizer( wxHORIZONTAL );
                   2155:        
                   2156:        SpeedStaticText = new wxStaticText( m_panel121, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT|wxST_NO_AUTORESIZE );
                   2157:        SpeedStaticText->Wrap( -1 );
                   2158:        bSizer1151->Add( SpeedStaticText, 1, wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 3 );
                   2159:        
                   2160:        m_panel121->SetSizer( bSizer1151 );
                   2161:        m_panel121->Layout();
                   2162:        bSizer1151->Fit( m_panel121 );
                   2163:        bSizer1081->Add( m_panel121, 1, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
                   2164:        
                   2165:        gSizer6->Add( bSizer1081, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
                   2166:        
                   2167:        wxBoxSizer* bSizer1082;
                   2168:        bSizer1082 = new wxBoxSizer( wxHORIZONTAL );
                   2169:        
                   2170:        m_staticText312 = new wxStaticText( this, wxID_ANY, _("Left"), wxDefaultPosition, wxDefaultSize, 0 );
                   2171:        m_staticText312->Wrap( -1 );
                   2172:        bSizer1082->Add( m_staticText312, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   2173:        
                   2174:        m_panel122 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL );
                   2175:        wxBoxSizer* bSizer1152;
                   2176:        bSizer1152 = new wxBoxSizer( wxHORIZONTAL );
                   2177:        
                   2178:        TimeLeftStaticText = new wxStaticText( m_panel122, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT|wxST_NO_AUTORESIZE );
                   2179:        TimeLeftStaticText->Wrap( -1 );
                   2180:        bSizer1152->Add( TimeLeftStaticText, 1, wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 3 );
                   2181:        
                   2182:        m_panel122->SetSizer( bSizer1152 );
                   2183:        m_panel122->Layout();
                   2184:        bSizer1152->Fit( m_panel122 );
                   2185:        bSizer1082->Add( m_panel122, 1, wxALL|wxEXPAND, 5 );
                   2186:        
                   2187:        gSizer6->Add( bSizer1082, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
                   2188:        
                   2189:        sbSizer32->Add( gSizer6, 0, wxEXPAND|wxTOP, 2 );
                   2190:        
                   2191:        bSizer105->Add( sbSizer32, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
                   2192:        
                   2193:        
                   2194:        bSizer105->Add( 0, 0, 0, wxTOP|wxBOTTOM, 5 );
                   2195:        
                   2196:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2197:        InfoStaticText->Wrap( -1 );
                   2198:        bSizer105->Add( InfoStaticText, 0, wxALL, 5 );
                   2199:        
                   2200:        bSizer104->Add( bSizer105, 1, wxEXPAND, 5 );
                   2201:        
                   2202:        this->SetSizer( bSizer104 );
                   2203:        this->Layout();
                   2204:        bSizer104->Fit( this );
                   2205:        
                   2206:        // Connect Events
                   2207:        DisplayKeysCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeCreationProgressWizardPageBase::OnDisplayKeysCheckBoxClick ), NULL, this );
                   2208:        AbortButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeCreationProgressWizardPageBase::OnAbortButtonClick ), NULL, this );
                   2209: }
                   2210: 
                   2211: VolumeCreationProgressWizardPageBase::~VolumeCreationProgressWizardPageBase()
                   2212: {
                   2213:        // Disconnect Events
                   2214:        DisplayKeysCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeCreationProgressWizardPageBase::OnDisplayKeysCheckBoxClick ), NULL, this );
                   2215:        AbortButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeCreationProgressWizardPageBase::OnAbortButtonClick ), NULL, this );
                   2216: }
                   2217: 
                   2218: VolumeLocationWizardPageBase::VolumeLocationWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   2219: {
                   2220:        wxBoxSizer* bSizer86;
                   2221:        bSizer86 = new wxBoxSizer( wxVERTICAL );
                   2222:        
                   2223:        wxBoxSizer* bSizer87;
                   2224:        bSizer87 = new wxBoxSizer( wxVERTICAL );
                   2225:        
                   2226:        
                   2227:        bSizer87->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
                   2228:        
                   2229:        wxBoxSizer* bSizer88;
                   2230:        bSizer88 = new wxBoxSizer( wxHORIZONTAL );
                   2231:        
                   2232:        wxBoxSizer* bSizer89;
                   2233:        bSizer89 = new wxBoxSizer( wxVERTICAL );
                   2234:        
                   2235:        VolumePathComboBox = new wxComboBox( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_DROPDOWN ); 
                   2236:        bSizer89->Add( VolumePathComboBox, 0, wxALL|wxEXPAND, 5 );
                   2237:        
                   2238:        wxBoxSizer* bSizer91;
                   2239:        bSizer91 = new wxBoxSizer( wxHORIZONTAL );
                   2240:        
                   2241:        
                   2242:        bSizer91->Add( 0, 0, 0, wxLEFT, 5 );
                   2243:        
                   2244:        NoHistoryCheckBox = new wxCheckBox( this, wxID_ANY, _("&Never save history"), wxDefaultPosition, wxDefaultSize, 0 );
                   2245:        
                   2246:        bSizer91->Add( NoHistoryCheckBox, 0, wxALL|wxEXPAND, 5 );
                   2247:        
                   2248:        bSizer89->Add( bSizer91, 0, wxEXPAND, 5 );
                   2249:        
                   2250:        bSizer88->Add( bSizer89, 1, wxEXPAND, 5 );
                   2251:        
                   2252:        wxBoxSizer* bSizer90;
                   2253:        bSizer90 = new wxBoxSizer( wxVERTICAL );
                   2254:        
                   2255:        SelectFileButton = new wxButton( this, wxID_ANY, _("Select &File..."), wxDefaultPosition, wxDefaultSize, 0 );
                   2256:        bSizer90->Add( SelectFileButton, 0, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 );
                   2257:        
                   2258:        SelectDeviceButton = new wxButton( this, wxID_ANY, _("Select D&evice..."), wxDefaultPosition, wxDefaultSize, 0 );
                   2259:        bSizer90->Add( SelectDeviceButton, 0, wxALL, 5 );
                   2260:        
                   2261:        bSizer88->Add( bSizer90, 0, wxEXPAND, 5 );
                   2262:        
                   2263:        bSizer87->Add( bSizer88, 0, wxEXPAND, 5 );
                   2264:        
                   2265:        
                   2266:        bSizer87->Add( 0, 0, 0, wxEXPAND|wxBOTTOM, 5 );
                   2267:        
                   2268:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2269:        InfoStaticText->Wrap( -1 );
                   2270:        bSizer87->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 );
                   2271:        
                   2272:        bSizer86->Add( bSizer87, 1, wxEXPAND, 5 );
                   2273:        
                   2274:        this->SetSizer( bSizer86 );
                   2275:        this->Layout();
                   2276:        bSizer86->Fit( this );
                   2277:        
                   2278:        // Connect Events
                   2279:        VolumePathComboBox->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnVolumePathTextChanged ), NULL, this );
                   2280:        NoHistoryCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnNoHistoryCheckBoxClick ), NULL, this );
                   2281:        SelectFileButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnSelectFileButtonClick ), NULL, this );
                   2282:        SelectDeviceButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnSelectDeviceButtonClick ), NULL, this );
                   2283: }
                   2284: 
                   2285: VolumeLocationWizardPageBase::~VolumeLocationWizardPageBase()
                   2286: {
                   2287:        // Disconnect Events
                   2288:        VolumePathComboBox->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnVolumePathTextChanged ), NULL, this );
                   2289:        NoHistoryCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnNoHistoryCheckBoxClick ), NULL, this );
                   2290:        SelectFileButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnSelectFileButtonClick ), NULL, this );
                   2291:        SelectDeviceButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnSelectDeviceButtonClick ), NULL, this );
                   2292: }
                   2293: 
                   2294: VolumeFormatOptionsWizardPageBase::VolumeFormatOptionsWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   2295: {
                   2296:        wxBoxSizer* bSizer124;
                   2297:        bSizer124 = new wxBoxSizer( wxVERTICAL );
                   2298:        
                   2299:        wxBoxSizer* bSizer125;
                   2300:        bSizer125 = new wxBoxSizer( wxVERTICAL );
                   2301:        
                   2302:        wxStaticBoxSizer* sbSizer33;
                   2303:        sbSizer33 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Filesystem Options") ), wxVERTICAL );
                   2304:        
                   2305:        wxFlexGridSizer* fgSizer6;
                   2306:        fgSizer6 = new wxFlexGridSizer( 2, 2, 0, 0 );
                   2307:        fgSizer6->SetFlexibleDirection( wxBOTH );
                   2308:        fgSizer6->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
                   2309:        
                   2310:        m_staticText43 = new wxStaticText( this, wxID_ANY, _("Filesystem type:"), wxDefaultPosition, wxDefaultSize, 0 );
                   2311:        m_staticText43->Wrap( -1 );
                   2312:        fgSizer6->Add( m_staticText43, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 );
                   2313:        
                   2314:        wxArrayString FilesystemTypeChoiceChoices;
                   2315:        FilesystemTypeChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, FilesystemTypeChoiceChoices, 0 );
                   2316:        FilesystemTypeChoice->SetSelection( 0 );
                   2317:        fgSizer6->Add( FilesystemTypeChoice, 0, wxALL, 5 );
                   2318:        
                   2319:        sbSizer33->Add( fgSizer6, 1, wxEXPAND, 5 );
                   2320:        
                   2321:        bSizer125->Add( sbSizer33, 0, wxEXPAND|wxALL, 5 );
                   2322:        
                   2323:        wxStaticBoxSizer* sbSizer34;
                   2324:        sbSizer34 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Volume Format Options") ), wxVERTICAL );
                   2325:        
                   2326:        QuickFormatCheckBox = new wxCheckBox( this, wxID_ANY, _("Quick format"), wxDefaultPosition, wxDefaultSize, 0 );
                   2327:        
                   2328:        sbSizer34->Add( QuickFormatCheckBox, 0, wxALL, 5 );
                   2329:        
                   2330:        bSizer125->Add( sbSizer34, 0, wxEXPAND|wxALL, 5 );
                   2331:        
                   2332:        
                   2333:        bSizer125->Add( 0, 0, 1, wxEXPAND|wxTOP|wxBOTTOM, 5 );
                   2334:        
                   2335:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2336:        InfoStaticText->Wrap( -1 );
                   2337:        bSizer125->Add( InfoStaticText, 0, wxALL, 5 );
                   2338:        
                   2339:        bSizer124->Add( bSizer125, 0, wxEXPAND, 5 );
                   2340:        
                   2341:        this->SetSizer( bSizer124 );
                   2342:        this->Layout();
                   2343:        bSizer124->Fit( this );
                   2344:        
                   2345:        // Connect Events
                   2346:        FilesystemTypeChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( VolumeFormatOptionsWizardPageBase::OnFilesystemTypeSelected ), NULL, this );
                   2347:        QuickFormatCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeFormatOptionsWizardPageBase::OnQuickFormatCheckBoxClick ), NULL, this );
                   2348: }
                   2349: 
                   2350: VolumeFormatOptionsWizardPageBase::~VolumeFormatOptionsWizardPageBase()
                   2351: {
                   2352:        // Disconnect Events
                   2353:        FilesystemTypeChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( VolumeFormatOptionsWizardPageBase::OnFilesystemTypeSelected ), NULL, this );
                   2354:        QuickFormatCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeFormatOptionsWizardPageBase::OnQuickFormatCheckBoxClick ), NULL, this );
                   2355: }
                   2356: 
                   2357: VolumePasswordPanelBase::VolumePasswordPanelBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style )
                   2358: {
                   2359:        wxBoxSizer* bSizer7;
                   2360:        bSizer7 = new wxBoxSizer( wxVERTICAL );
                   2361:        
                   2362:        GridBagSizer = new wxGridBagSizer( 0, 0 );
                   2363:        GridBagSizer->AddGrowableCol( 1 );
                   2364:        GridBagSizer->SetFlexibleDirection( wxBOTH );
                   2365:        GridBagSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
                   2366:        GridBagSizer->SetEmptyCellSize( wxSize( 0,0 ) );
                   2367:        
                   2368:        PasswordStaticText = new wxStaticText( this, wxID_ANY, _("Password:"), wxDefaultPosition, wxDefaultSize, 0 );
                   2369:        PasswordStaticText->Wrap( -1 );
                   2370:        GridBagSizer->Add( PasswordStaticText, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM|wxRIGHT, 5 );
                   2371:        
                   2372:        PasswordTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD );
                   2373:        PasswordTextCtrl->SetMaxLength( 1 ); 
                   2374:        PasswordTextCtrl->SetMinSize( wxSize( 232,-1 ) );
                   2375:        
                   2376:        GridBagSizer->Add( PasswordTextCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 2 ), wxBOTTOM|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
                   2377:        
                   2378:        ConfirmPasswordStaticText = new wxStaticText( this, wxID_ANY, _("Confirm password:"), wxDefaultPosition, wxDefaultSize, 0 );
                   2379:        ConfirmPasswordStaticText->Wrap( -1 );
                   2380:        GridBagSizer->Add( ConfirmPasswordStaticText, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 );
                   2381:        
                   2382:        ConfirmPasswordTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD );
                   2383:        ConfirmPasswordTextCtrl->SetMaxLength( 1 ); 
                   2384:        ConfirmPasswordTextCtrl->SetMinSize( wxSize( 232,-1 ) );
                   2385:        
                   2386:        GridBagSizer->Add( ConfirmPasswordTextCtrl, wxGBPosition( 2, 1 ), wxGBSpan( 1, 2 ), wxBOTTOM|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
                   2387:        
                   2388:        CacheCheckBox = new wxCheckBox( this, wxID_ANY, _("Cach&e passwords and keyfiles in memory"), wxDefaultPosition, wxDefaultSize, 0 );
                   2389:        
                   2390:        GridBagSizer->Add( CacheCheckBox, wxGBPosition( 3, 1 ), wxGBSpan( 1, 2 ), wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
                   2391:        
                   2392:        DisplayPasswordCheckBox = new wxCheckBox( this, wxID_ANY, _("&Display password"), wxDefaultPosition, wxDefaultSize, 0 );
                   2393:        
                   2394:        GridBagSizer->Add( DisplayPasswordCheckBox, wxGBPosition( 4, 1 ), wxGBSpan( 1, 2 ), wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
                   2395:        
                   2396:        UseKeyfilesCheckBox = new wxCheckBox( this, wxID_ANY, _("U&se keyfiles"), wxDefaultPosition, wxDefaultSize, 0 );
                   2397:        
                   2398:        GridBagSizer->Add( UseKeyfilesCheckBox, wxGBPosition( 5, 1 ), wxGBSpan( 1, 1 ), wxTOP|wxRIGHT|wxLEFT, 5 );
                   2399:        
                   2400:        KeyfilesButton = new wxButton( this, wxID_ANY, _("&Keyfiles..."), wxDefaultPosition, wxDefaultSize, 0 );
                   2401:        GridBagSizer->Add( KeyfilesButton, wxGBPosition( 5, 2 ), wxGBSpan( 1, 1 ), wxALIGN_RIGHT|wxALIGN_BOTTOM|wxLEFT, 5 );
                   2402:        
                   2403:        Pkcs5PrfSizer = new wxBoxSizer( wxVERTICAL );
                   2404:        
                   2405:        GridBagSizer->Add( Pkcs5PrfSizer, wxGBPosition( 6, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP|wxBOTTOM, 5 );
                   2406:        
                   2407:        Pkcs5PrfStaticText = new wxStaticText( this, wxID_ANY, _("PKCS-5 PRF:"), wxDefaultPosition, wxDefaultSize, 0 );
                   2408:        Pkcs5PrfStaticText->Wrap( -1 );
                   2409:        GridBagSizer->Add( Pkcs5PrfStaticText, wxGBPosition( 7, 0 ), wxGBSpan( 1, 1 ), wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
                   2410:        
                   2411:        wxString Pkcs5PrfChoiceChoices[] = { _("Unchanged") };
                   2412:        int Pkcs5PrfChoiceNChoices = sizeof( Pkcs5PrfChoiceChoices ) / sizeof( wxString );
                   2413:        Pkcs5PrfChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, Pkcs5PrfChoiceNChoices, Pkcs5PrfChoiceChoices, 0 );
                   2414:        Pkcs5PrfChoice->SetSelection( 0 );
                   2415:        GridBagSizer->Add( Pkcs5PrfChoice, wxGBPosition( 7, 1 ), wxGBSpan( 1, 2 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
                   2416:        
                   2417:        PasswordPlaceholderSizer = new wxBoxSizer( wxVERTICAL );
                   2418:        
                   2419:        GridBagSizer->Add( PasswordPlaceholderSizer, wxGBPosition( 8, 1 ), wxGBSpan( 1, 2 ), wxTOP|wxEXPAND, 5 );
                   2420:        
                   2421:        bSizer7->Add( GridBagSizer, 1, wxALL|wxEXPAND, 5 );
                   2422:        
                   2423:        this->SetSizer( bSizer7 );
                   2424:        this->Layout();
                   2425:        bSizer7->Fit( this );
                   2426:        
                   2427:        // Connect Events
                   2428:        PasswordTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumePasswordPanelBase::OnTextChanged ), NULL, this );
                   2429:        ConfirmPasswordTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumePasswordPanelBase::OnTextChanged ), NULL, this );
                   2430:        DisplayPasswordCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumePasswordPanelBase::OnDisplayPasswordCheckBoxClick ), NULL, this );
                   2431:        UseKeyfilesCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumePasswordPanelBase::OnUseKeyfilesCheckBoxClick ), NULL, this );
                   2432:        KeyfilesButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonClick ), NULL, this );
                   2433:        KeyfilesButton->Connect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonRightClick ), NULL, this );
                   2434:        KeyfilesButton->Connect( wxEVT_MIDDLE_UP, wxMouseEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonRightClick ), NULL, this );
                   2435:        KeyfilesButton->Connect( wxEVT_RIGHT_UP, wxMouseEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonRightClick ), NULL, this );
                   2436: }
                   2437: 
                   2438: VolumePasswordPanelBase::~VolumePasswordPanelBase()
                   2439: {
                   2440:        // Disconnect Events
                   2441:        PasswordTextCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumePasswordPanelBase::OnTextChanged ), NULL, this );
                   2442:        ConfirmPasswordTextCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumePasswordPanelBase::OnTextChanged ), NULL, this );
                   2443:        DisplayPasswordCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumePasswordPanelBase::OnDisplayPasswordCheckBoxClick ), NULL, this );
                   2444:        UseKeyfilesCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumePasswordPanelBase::OnUseKeyfilesCheckBoxClick ), NULL, this );
                   2445:        KeyfilesButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonClick ), NULL, this );
                   2446:        KeyfilesButton->Disconnect( wxEVT_LEFT_DCLICK, wxMouseEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonRightClick ), NULL, this );
                   2447:        KeyfilesButton->Disconnect( wxEVT_MIDDLE_UP, wxMouseEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonRightClick ), NULL, this );
                   2448:        KeyfilesButton->Disconnect( wxEVT_RIGHT_UP, wxMouseEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonRightClick ), NULL, this );
                   2449: }
                   2450: 
                   2451: VolumePasswordWizardPageBase::VolumePasswordWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   2452: {
                   2453:        wxBoxSizer* bSizer101;
                   2454:        bSizer101 = new wxBoxSizer( wxVERTICAL );
                   2455:        
                   2456:        wxBoxSizer* bSizer102;
                   2457:        bSizer102 = new wxBoxSizer( wxVERTICAL );
                   2458:        
                   2459:        PasswordPanelSizer = new wxBoxSizer( wxVERTICAL );
                   2460:        
                   2461:        bSizer102->Add( PasswordPanelSizer, 0, wxEXPAND, 5 );
                   2462:        
                   2463:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2464:        InfoStaticText->Wrap( -1 );
                   2465:        bSizer102->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 );
                   2466:        
                   2467:        bSizer101->Add( bSizer102, 1, wxEXPAND, 5 );
                   2468:        
                   2469:        this->SetSizer( bSizer101 );
                   2470:        this->Layout();
                   2471:        bSizer101->Fit( this );
                   2472: }
                   2473: 
                   2474: VolumePasswordWizardPageBase::~VolumePasswordWizardPageBase()
                   2475: {
                   2476: }
                   2477: 
                   2478: VolumeSizeWizardPageBase::VolumeSizeWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style )
                   2479: {
                   2480:        wxBoxSizer* bSizer98;
                   2481:        bSizer98 = new wxBoxSizer( wxVERTICAL );
                   2482:        
                   2483:        wxBoxSizer* bSizer99;
                   2484:        bSizer99 = new wxBoxSizer( wxVERTICAL );
                   2485:        
                   2486:        
                   2487:        bSizer99->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
                   2488:        
                   2489:        wxBoxSizer* bSizer100;
                   2490:        bSizer100 = new wxBoxSizer( wxHORIZONTAL );
                   2491:        
                   2492:        VolumeSizeTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2493:        bSizer100->Add( VolumeSizeTextCtrl, 0, wxALL, 5 );
                   2494:        
                   2495:        wxArrayString VolumeSizePrefixChoiceChoices;
                   2496:        VolumeSizePrefixChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, VolumeSizePrefixChoiceChoices, 0 );
                   2497:        VolumeSizePrefixChoice->SetSelection( 0 );
                   2498:        bSizer100->Add( VolumeSizePrefixChoice, 0, wxALL, 5 );
                   2499:        
                   2500:        bSizer99->Add( bSizer100, 0, wxEXPAND, 5 );
                   2501:        
                   2502:        
                   2503:        bSizer99->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
                   2504:        
                   2505:        FreeSpaceStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2506:        FreeSpaceStaticText->Wrap( -1 );
                   2507:        bSizer99->Add( FreeSpaceStaticText, 0, wxALL|wxEXPAND, 5 );
                   2508:        
                   2509:        
                   2510:        bSizer99->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
                   2511:        
                   2512:        InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
                   2513:        InfoStaticText->Wrap( -1 );
                   2514:        bSizer99->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 );
                   2515:        
                   2516:        bSizer98->Add( bSizer99, 0, wxEXPAND, 5 );
                   2517:        
                   2518:        this->SetSizer( bSizer98 );
                   2519:        this->Layout();
                   2520:        bSizer98->Fit( this );
                   2521:        
                   2522:        // Connect Events
                   2523:        VolumeSizeTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumeSizeWizardPageBase::OnVolumeSizeTextChanged ), NULL, this );
                   2524:        VolumeSizePrefixChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( VolumeSizeWizardPageBase::OnVolumeSizePrefixSelected ), NULL, this );
                   2525: }
                   2526: 
                   2527: VolumeSizeWizardPageBase::~VolumeSizeWizardPageBase()
                   2528: {
                   2529:        // Disconnect Events
                   2530:        VolumeSizeTextCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumeSizeWizardPageBase::OnVolumeSizeTextChanged ), NULL, this );
                   2531:        VolumeSizePrefixChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( VolumeSizeWizardPageBase::OnVolumeSizePrefixSelected ), NULL, this );
                   2532: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.