From 38ad7650ac4f723fd6109e3f55b3ea1c47ec4af9 Mon Sep 17 00:00:00 2001 From: T-Bonhagen <75760084+T-Bonhagen@users.noreply.github.com> Date: Fri, 11 Dec 2020 18:42:59 +0100 Subject: new xml Tag for en and de (#708) * new xml Tag for en and de * add linux support for env LANG * precopiled header into TrueCrypt.fdp to substitute '_()' with 'LangString[]' * more LangString in Code * add Language xml's to Linux Setup location * backup language for linux is en * remove Language.en.xml install * rearange new xml lines to end * yes/no dialogs now translated * All OK/Cancel Button now support international Co-authored-by: tb@tbon.de --- Translations/Language.de.xml | 119 + src/Common/Language.xml | 120 + src/Main/FatalErrorHandler.cpp | 2 +- src/Main/Forms/ChangePasswordDialog.cpp | 8 +- src/Main/Forms/DeviceSelectionDialog.cpp | 15 +- src/Main/Forms/EncryptionOptionsWizardPage.cpp | 2 +- src/Main/Forms/Forms.cpp | 3141 +++++++++++----------- src/Main/Forms/Forms.h | 52 +- src/Main/Forms/MainFrame.cpp | 45 +- src/Main/Forms/MountOptionsDialog.cpp | 4 +- src/Main/Forms/NewSecurityTokenKeyfileDialog.cpp | 2 +- src/Main/Forms/PreferencesDialog.cpp | 14 +- src/Main/Forms/TrueCrypt.fbp | 2877 +++++++++++++------- src/Main/Forms/VolumeCreationWizard.cpp | 62 +- src/Main/Forms/VolumeFormatOptionsWizardPage.cpp | 4 +- src/Main/Forms/VolumePropertiesDialog.cpp | 2 +- src/Main/Forms/VolumeSizeWizardPage.cpp | 4 +- src/Main/Forms/WaitDialog.h | 8 +- src/Main/Forms/WizardFrame.cpp | 4 +- src/Main/Forms/international.h | 6 + src/Main/GraphicUserInterface.cpp | 21 +- src/Main/LanguageStrings.cpp | 47 +- src/Main/Main.make | 2 + src/Main/Resources.cpp | 79 + src/Main/TextUserInterface.cpp | 2 +- src/Main/UserInterface.cpp | 73 +- 26 files changed, 3976 insertions(+), 2739 deletions(-) create mode 100644 src/Main/Forms/international.h diff --git a/Translations/Language.de.xml b/Translations/Language.de.xml index cf5f5fc1..8ad731b3 100644 --- a/Translations/Language.de.xml +++ b/Translations/Language.de.xml @@ -1449,6 +1449,125 @@ VeraCrypt als ersten Eintrag im EFI-Firmware-Bootmenü erzwingen WARNUNG: Die RAM-Verschlüsselung ist nicht kompatibel mit den Windows-Funktionen Ruhezustand und Schnellstart. VeraCrypt muss sie deaktivieren, bevor die RAM-Verschlüsselung aktiviert wird.\n\nFortfahren? WARNUNG: Der Windows-Schnellstart ist aktiviert und es ist bekannt, dass er Probleme bei der Arbeit mit VeraCrypt-Volumes verursacht. Es wird empfohlen, ihn für eine bessere Sicherheit und Benutzerfreundlichkeit zu deaktivieren.\n\nMöchten Sie den Windows-Schnellstart deaktivieren? + Damit das neue Volumen im Betriebsystem eingehängt werden kann, muß es mit einem Dateisystem formatiert werden. Bitte wählen Sie einen Typ aus.\n\nWenn das Volumen auf einem Laufwerk oder einer Partition liegt, kann 'Schnell-Formatierung' gewählt werden um die Verschlüsselung des freien Speicherplatz zu überspringen. + AES-Verschlüsselung nicht beschleunigen durch Nutzung der AES-Befehle des Prozessors + Alle eingebundenen Volumen zu Favoriten hinzufügen... + Taskleistensymbol + Eingehängte Volumen öffnen + Eingehängte Volumen trennen + Einhängepunkt + Freier Speicherplatz: {0} + Bitte Größe des zu erstellenden Containers angeben. Hinweis: die Mindestgröße eines Volumes ist 292 KiB. + WARNUNG: Sie haben nicht das Dateisystem FAT für das äußere Volumen ausgewählt. Bitte beachten Sie, dass VeraCrypt derzeit nicht die exakte maximale Größe des versteckten Volumen bestimmen kann und diese nur, möglicherweise falsch, abschätzt. Es liegt deshalb in Ihrer Verantwortung eine angemessene Größe für das versteckte Volumen zu wählen um eine Überlappung mit dem äußeren Volumen zu verhindern.\n\nMöchten Sie trotzdem mit dem ausgewählten Dateisystem für das äußere Volumen fortfahren? + Sicherheit + Einbinden + Hintergrunddienst + Systemintegration + Dateiverwaltung + Leistung + Schlüsseldatein + Sicherheitstoken + Kernel-Dienste + Kryptografiedienste des Kernel nicht verwenden + Dateisystem + Einbindungsoptionen: + Plattformunabhängigkeit + I werde das Volumen plattformübergreifend nutzen + Wählen Sie diese Option, wenn Sie das Volumen auf anderen Platformen einhängen können müssen. + I werde diese Volumen nur unter {0} einhängen + Wählen Sie diese Option, wenn Sie das Volumen nicht auf anderen Platformen einhängen können müssen. + Abwählen + Benutzer- oder Administrator-Passwort eingeben: + Administrator Privilegien erforderlich + VeraCrypt wird bereits ausgeführt. + Das Passwort für die Systemverschlüsselung ist länger als {0} Zeichen. + Partition mithilfe der Sytemverschlüsselung einbinden(Preboot Authentifizierung) + Nicht einbinden + Einbinden als Verzeichnis: + Auswählen... + Alle Volumen aushängen wenn + System betritt Energiesparmodus + Aktionen beim anmelden ausführen + Alle Explorer Fenster schließen wenn Volumen ausgehänt wird + Tastenkombinationen + Systemweite Tastenkombinationen + Systembenachichtigungston wird beim ein- und aushängen abgespielt + Bestätigungsnachricht nach dem aushängen anzeigen + VeraCrypt beendet + Finder Fenster nach erfolgreichem einbinden öffnen + Bitte beachten Sie, dass diese Einstellungen nur bei deaktivierten Kernel-Kryptographidienst wirksam werden. + Das deaktivierten des Kernel-Kryptographidienstes kann die Leistung reduzieren.\n\nSind Sie sicher? + Bitte beachten Sie, dass das deaktivierten dieser Einstellungen möglicherwiese keine Auswirkung auf mit Hilfe des Kernel-Kryptographidienst eingehängten Volumens hat. + Bitte beachten Sie, dass alle eingehängten Volumen neu einhänget werden müssen bevor diese Einstellungen genutzt werden können + Unbekannte Ausnahme aufgetreten. + Das Laufwerk Werkzeug wird nach dem drücken von 'OK' geladen.\n\nBitte wählen Sie das Volumen im Werkzeug aus und drücken 'Laufwerk verifizieren' oder 'Laufwerk reparieren' auf der 'Erste Hilfe' Seite + Alle Geräte einhängen + Es ist ein Fehler aufgetreten beim lader der Konfigurationdatein aus + Bitte einen freien Laufwerksplatz aus der Liste wählen. + \n\nSoll die Meldung beim nächten einhängen eines solchen Volumes wieder angezeigt werden? + Warnung + + Diese Merkmal wird nur im Text-Modus unterstützt. + Freier Speicherplatz auf Laufwerk {0}: ist {1}. + Bitte beachten Sie, falls Ihr Betriebsystem Speicherplatz nicht vom Beginn des Verzeichnissystems an belegt, ist der maximale Speicherplatz im versteckten Volumen viel weniger als der Platz des Äusseren Volumen. Dies ist kein Fehler in VeraCrypt, sondern eine Limitierung des Betriebsystems. + Maximal möglicher Speicherplatz im versteckten Volumen ist {0}. + Öffne Äusseres Volumen + Das äußere Volume wurde erfolgreich erstellt und als '{0}' eingebunden. Jetzt müssen Sie noch einige sensibel aussehende Alibi-Dateien auf dieses Volume kopieren. Diese Dateien sind für Personen bestimmt welche die Herausgabe des Passwortes erzwingen möchten. Diesen Personen offenbaren Sie nur das Passwort des äußeren, nicht aber das des versteckten Volumes. Die wirklich wichtigen Dateien speichern Sie in das (noch zu erstellende) versteckte Volume. Klicken Sie nach dem Kopieren der Alibi-Dateien auf „Weiter“, ohne zuvor das Volume zu trennen. Es erfolgt dann eine Analyse der Clusterbelegung des äußeren Volumes, um festzustellen, wie viel freier zusammenhängender Speicher vom Ende des Volumes aus verfügbar ist. Dieser Bereich wird für die Unterbringung des versteckten Volumes verwendet. Die Analyse der Clusterbelegung stellt sicher, dass keine Daten des äußeren Volumes durch das versteckte Volume überschrieben werden. + Fehler: Sie versuchen ein Systemlaufwerk zu verschlüsseln.\n\nVeraCrypt kann nur unter Windows Systemlaufwerke verschlüsseln. + Fehler: Sie versuchen eine Systempartition zu verschlüsseln.\n\nVeraCrypt kann nur unter Windows Systempartitionen verschlüsseln. + Warnung: Formatieren des Gerätes wird alle Daten im Dateisystem '{0}' zerstören.\n\nWollen Sie trotzdemfortfahren? + Das Dateisystem des gewählten Gerätes ins eingehängt. Bitte hängen Sie '{0}' aus um fortzufahren. + Das versteckte Volumen darft nicht zum äußeren Volumen identische Schlüsseldatein, Passworter und PIM haben. + Bitte beachten Sie, dass das Volumen nicht mit dem FAT Dateisystem formatiert wird, und darum kann die Installation eines Dateisystemtreibers auf anderen Platformen als '{0}' notwendig sein um das Volumen einzuhängen. + Fehler: Das versteckte Volumen wird größer {0} TB {1} GB angelegt werden.\n\n Mögliche Lösung:\n- Erstellen Sie ein Volumen/Partition kleiner als {0} TB.\n + - Benutzen Sie ein Laufwerk mit 4096-Byte Sektoren um in der Lage zu sein Partitionen/Geräte beasierte versteckte Volumen mit bis zu 16 TB anzulegen. + .\n + (wird von den vorhandenen Komponenten dieser Platform nicht unterstützt). + Ihr System verwenden einen alten Linux Kernel.\n\nWegen eines Fehlers im Linux Kernel kann es passieren, dass Ihr System beim schreiben auf ein VeraCrypt Volumen nicht mehr reagiert. Diese Problem kann durch einen Kernel in Version 2.6.24 oder neuer gelöst werden. + Volume {0} ausgehängt. + Zu wenig Speicher. + Erlangen der Administrator Privilegien fehlgeschlagen + Kommando {0} lieferte Fehler: {1}. + VeraCrypt Kommandozeilen Hilfe + \n\nWARNUNG: Versteckte Dateien wurden im Suchpfad gefunden. Diese versteckten Dateien können nicht als Schlüsseldateien verwendet werden. Wenn Sie diese Dateien als Schlüsseldateien verwenden möchten, müssen Sie das den führenden Punkt vom Dateinamen entfernen. Hinweis: Versteckte Dateien sind nur sichtbar wenn die entsprechende Option in den System Optionen aktiviert ist. + -Speichergerät und VeraCrypt Volumen Sektorgröße stimmen nicht überein + Diese Operation kann nur ausgefühert werden wenn das Betriebsystem auch auf diesem Volumen läuft. + Nicht genügend Daten vorhanden. + Kernel Kryptographiedienst Test fehlgeschlagen. Dier Kryptographiedienst Ihres Kernels unterstützt wahrscheinlich keine Volumen größer als 2 TB.\n\nMögliche Lösungen:\n- Aktualisieren Sie den Linux Kernel auf die Version 2.6.33 oder höher.\n- Deaktivieren sie den Kryptographiedienst oder benutzen Sie die Einhängeoption 'nokernelcrypto' auf der Kommandozeile. + Fehler beim setzen den Loop Gerätes. + Ein benötigtest Argument fehlt. + Volume Daten fehlen. + Einhängepunkt ist erforderlich. + Einhängepunkt wird bereits verwendet. + Kein Passwort oder keine Schlüsseldatei angegeben. + \n\nHinweis: Das Preboot Authentifikations-Passwort muss in der Preboot Umgebung eingegen werden wo Nicht-US Tasturbelegung nicht verfügbar sind. Daher müssen Preboot Authentifikations-Passwörter immer mit der standart US Tasturbelegung eingegeben werden.(Sonst wird das Password meistens falsch eingegen). Trotzdem brauchen Sie kein echte US Tastatur; Sie müssen nur die Tasturbelegung im Betriebsystem änder. + \n\nHinweis: Wenn Sie versuchen eine Partition auf einem verschlüsselten Systemlaufwerk ohne Preboot Authentifizierung oder eines nicht laufenden Betriesystems einzuhängen, benutzen Sie bitte die Option Systemverschlüsselung. + Password ist länger als {0} Zeichen. + Partitionsgerät erforderlich. + Inkorrektes Password für das versteckte Volumen oder es existiert kein verstecktes Volumen. + Inkorrekte Schlüsseldatei(n) und/oder Password für das versteckte Volumen oder es existiert kein verstecktes Volumen. + Ungültige Zeichen characters aufgetreten. + Fehler beim der Textformatierung aufgetreten. + Fehler beim Erstellen einer Datein oder eines Verzeichnis im temporären Ordner.\n\nBitte stellen Sie sicher, dass der temporären Ordner existiert, Sie zu Zugriffsberechtigt sind und genug Speicherplatz vorhanden ist. + Fehler: Das Laufwerk benutzt eine von 512 Byte verschiedene Sektorgröße.\n\nWegen Komponentenlimitierung auf Ihrer Platform, äußere Voluem auf dem Laufwerk können nicht mit Schutz eine versteckten Volumens eingehängt werden.\n\nMögliche Lösungen:\n- Erstellen Sie einen dateibasierten Volumen-Kontainer auf dem Laufwerk.\n- Sichern Sie den Inhalt den versteckte Volumen und aktualisieren Sie dann das äußere Volumen. + Fehler: Das Laufwerk benutzt eine von 512 Byte verschiedene Sektorgröße.\n\nWegen Komponentenlimitierung auf Ihrer Platform, können Partitions- und Gerätebasierende Volumen nicht auf dem Laufwerk erstellt/benutzt werden. \n\nMögliche Lösungen:\n- Aktivieren Sie den Kernel Kryptographiedienst.\n- Benutzen Sie ein Laufwerk mit 512-Byte Sektoren.\n- Erstellen Sie einen dateibasierten Volumen-Kontainer auf dem Laufwerk. + Fehler: Das Laufwerk benutzt eine von 512 Byte verschiedene Sektorgröße.\n\nWegen Komponentenlimitierung auf Ihrer Platform, können Partitions- und Gerätebasierende Volumen nicht auf dem Laufwerk erstellt/benutzt werden. \n\nMögliche Lösungen:\n- Erstellen Sie einen dateibasierten Volumen-Kontainer auf dem Laufwerk.\n- Benutzen Sie ein Laufwerk mit 512-Byte Sektoren.\n- Benutzen Sie VeraCrypt auf einer anderen Platform. + Die Host Datei oder das Host Gerät ist bereits in Benutzung. + Volume Platz nicht verfügbar. + VeraCrypt benötigt OSXFUSE in Version 2.5 oder höher. + Ausnahme aufgetreten + Passwort eingeben + VeraCrypt Volume Passwort eingeben + Einhängen + Keine Volumen eingehängt. + Erstellen ein neues VeraCrypt Volumen + Parameter falsch + Schlüsseldatei auswählen + Starte VeraCrypt + Das volume {0} ist bereits eingeängt. + Unbekannte Option + Volume Speicherort + WARNUNG: Die Datei/das Laufwerk {0} ist bereits in Verwendung!\n\nWenn Sie diese Warnung ignorieren, können nicht vorhersehbare Probleme einschließlich Systemabstürze auftreten. Alle Programme, die die Datei/das Laufwerk verwenden (zum Beispiel Virenscanner oder Backup-Software) sollten geschlossen werden, bevor das Volume eingebunden wird.\n\nTrotzdem fortfahren? diff --git a/src/Common/Language.xml b/src/Common/Language.xml index 3144c3a6..ab75d73a 100644 --- a/src/Common/Language.xml +++ b/src/Common/Language.xml @@ -1446,6 +1446,126 @@ Force VeraCrypt entry to be the first in the EFI firmware boot menu WARNING: RAM encryption is not compatible with Windows Hibernate and Windows Fast Startup features. VeraCrypt needs to disable them before activating RAM encryption.\n\nContinue? WARNING: Windows Fast Startup is enabled and it is known to cause issues when working with VeraCrypt volumes. It is advised to disable it for better security and usability.\n\nDo you want to disable Windows Fast Startup? + In order to enable your operating system to mount your new volume, it has to be formatted with a filesystem. Please select a filesystem type.\n\nIf your volume is going to be hosted on a device or partition, you can use 'Quick format' to skip encryption of free space of the volume. + Do not accelerate AES encryption/decryption by using the AES instructions of the processor + Add All Mounted Volumes to Favorites... + Task Icon Menu Items + Open Mounted Volumes + Dismount Mounted Volumes + Free space available: {0} + Please specify the size of the container to create. Note that the minimum possible size of a volume is 292 KiB. + WARNING: You have selected a filesystem other than FAT for the outer volume.\nPlease Note that in this case VeraCrypt can't calculate the exact maximum allowed size for the hidden volume and it will use only an estimation that can be wrong.\nThus, it is your responsibility to use an adequate value for the size of the hidden volume so that it doesn\'t overlap the outer volume.\n\nDo you want to continue using the selected filesystem for the outer volume? + Security + Mount Options + Background Task + System Integration + Filesystem Explorer + Performance + Keyfiles + Security Tokens + Kernel Services + Do not use kernel cryptographic services + Filesystem + Mount options: + Cross-Platform Support + I will mount the volume on other platforms + Choose this option if you need to use the volume on other platforms. + I will mount the volume only on {0} + Choose this option if you do not need to use the volume on other platforms. + Choose this option if you do not need to use the volume on other platforms. + Deselect + Enter your user password or administrator password: + Administrator privileges required + VeraCrypt is already running. + System Encryption password is longer than {0} characters. + Mount partition &using system encryption (preboot authentication) + Do &not mount + Mount at directory: + Se&lect... + Dismount All Volumes When + System is entering power saving mode + Actions to Perform when User Logs On + Close all Explorer windows of volume being dismounted + Hotkeys + System-Wide Hotkeys + Play system notification sound after mount/dismount + Display confirmation message box after dismount + VeraCrypt quits + Open Finder window for successfully mounted volume + Please note that this setting takes effect only if use of the kernel cryptographic services is disabled. + Disabling the use of kernel cryptographic services can degrade performance.\n\nAre you sure? + Please note that disabling this option may have no effect on volumes mounted using kernel cryptographic services. + Please note that any currently mounted volumes need to be remounted before they can use this setting. + Unknown exception occurred. + "Disk Utility will be launched after you press 'OK'.\n\nPlease select your volume in the Disk Utility window and press 'Verify Disk' or 'Repair Disk' button on the 'First Aid' page. + Mount All Devices + Error while loading configuration files located in + Please select a free drive slot from the list. + \n\nDo you want to show this message next time you mount such a volume? + Warning + Error + This feature is currently supported only in text mode. + Free space on drive {0}: is {1}. + Please note that if your operating system does not allocate files from the beginning of the free space, the maximum possible hidden volume size may be much smaller than the size of the free space on the outer volume. This is not a bug in VeraCrypt but a limitation of the operating system. + Maximum possible hidden volume size for this volume is {0}. + Open Outer Volume + Outer volume has been successfully created and mounted as '{0}'. To this volume you should now copy some sensitive-looking files that you actually do NOT want to hide. The files will be there for anyone forcing you to disclose your password. You will reveal only the password for this outer volume, not for the hidden one. The files that you really care about will be stored in the hidden volume, which will be created later on. When you finish copying, click Next. Do not dismount the volume.\n\nNote: After you click Next, the outer volume will be analyzed to determine the size of uninterrupted area of free space whose end is aligned with the end of the volume. This area will accommodate the hidden volume, so it will limit its maximum possible size. The procedure ensures no data on the outer volume are overwritten by the hidden volume. + Error: You are trying to encrypt a system drive.\n\nVeraCrypt can encrypt a system drive only under Windows. + Error: You are trying to encrypt a system partition.\n\nVeraCrypt can encrypt system partitions only under Windows. + WARNING: Formatting of the device will destroy all data on filesystem '{0}'.\n\nDo you want to continue? + The filesystem of the selected device is currently mounted. Please dismount '{0}' before proceeding. + The Hidden volume can't have the same password, PIM and keyfiles as the Outer volume + Please note that the volume will not be formatted with a FAT filesystem and, therefore, you may be required to install additional filesystem drivers on platforms other than {0}, which will enable you to mount the volume. + Error: The hidden volume to be created is larger than {0} TB ({1} GB).\n\nPossible solutions:\n- Create a container/partition smaller than {0} TB.\n + - Use a drive with 4096-byte sectors to be able to create partition/device-hosted hidden volumes up to 16 TB in size + .\n + (not supported by components available on this platform).\n + Your system uses an old version of the Linux kernel.\n\nDue to a bug in the Linux kernel, your system may stop responding when writing data to a VeraCrypt volume. This problem can be solved by upgrading the kernel to version 2.6.24 or later. + Volume {0} has been dismounted. + Out of memory. + Failed to obtain administrator privileges + Command \"{0}\" returned error {1}. + VeraCrypt Command Line Help + \n\nWarning: Hidden files are present in a keyfile path. If you need to use them as keyfiles, remove the leading dot from their filenames. Hidden files are visible only if enabled in system options. + Storage device and VC volume sector size mismatch + This operation must be performed only when the system hosted on the volume is running. + Not enough data available. + Kernel cryptographic service test failed. The cryptographic service of your kernel most likely does not support volumes larger than 2 TB.\n\nPossible solutions:\n- Upgrade the Linux kernel to version 2.6.33 or later.\n- Disable use of the kernel cryptographic services (Settings > Preferences > System Integration) or use 'nokernelcrypto' mount option on the command line. + Failed to set up a loop device. + A required argument is missing. + Volume data missing. + Mount point required. + Mount point is already in use. + No password or keyfile specified. + \n\nNote that pre-boot authentication passwords need to be typed in the pre-boot environment where non-US keyboard layouts are not available. Therefore, pre-boot authentication passwords must always be typed using the standard US keyboard layout (otherwise, the password will be typed incorrectly in most cases). However, note that you do NOT need a real US keyboard; you just need to change the keyboard layout in your operating system. + \n\nNote: If you are attempting to mount a partition located on an encrypted system drive without pre-boot authentication or to mount the encrypted system partition of an operating system that is not running, you can do so by selecting 'Options >' > 'Mount partition using system encryption'. + Password is longer than {0} characters. + Partition device required. + Incorrect password to the protected hidden volume or the hidden volume does not exist. + Incorrect keyfile(s) and/or password to the protected hidden volume or the hidden volume does not exist. + Invalid characters encountered. + Error while parsing formatted string. + Failed to create a file or directory in a temporary directory.\n\nPlease make sure that the temporary directory exists, its security permissions allow you to access it, and there is sufficient disk space. + Error: The drive uses a sector size other than 512 bytes.\n\nDue to limitations of components available on your platform, outer volumes hosted on the drive cannot be mounted using hidden volume protection.\n\nPossible solutions:\n- Use a drive with 512-byte sectors.\n- Create a file-hosted volume (container) on the drive.\n- Backup the contents of the hidden volume and then update the outer volume. + Error: The drive uses a sector size other than 512 bytes.\n\nDue to limitations of components available on your platform, partition/device-hosted volumes on the drive can only be mounted using kernel cryptographic services.\n\nPossible solutions:\n- Enable use of the kernel cryptographic services (Preferences > System Integration).\n- Use a drive with 512-byte sectors.\n- Create a file-hosted volume (container) on the drive. + Error: The drive uses a sector size other than 512 bytes.\n\nDue to limitations of components available on your platform, partition/device-hosted volumes cannot be created/used on the drive.\n\nPossible solutions:\n- Create a file-hosted volume (container) on the drive.\n- Use a drive with 512-byte sectors.\n- Use VeraCrypt on another platform. + The host file/device is already in use. + Volume slot unavailable. + VeraCrypt requires OSXFUSE 2.5 or above. + Exception occurred + Enter password + Enter VeraCrypt Volume Password + Mount + Mount Directory" + No volumes mounted. + Specify a New VeraCrypt Volume + Parameter incorrect + Select Keyfiles + Start VeraCrypt + The volume {0} is already mounted. + Unknown option + Volume Location + WARNING: The host file/device {0} is already in use!\n\nIgnoring this can cause undesired results including system instability. All applications that might be using the host file/device should be closed before mounting the volume.\n\nContinue mounting? diff --git a/src/Main/FatalErrorHandler.cpp b/src/Main/FatalErrorHandler.cpp index f0b5e0ff..55c989cf 100644 --- a/src/Main/FatalErrorHandler.cpp +++ b/src/Main/FatalErrorHandler.cpp @@ -243,7 +243,7 @@ namespace VeraCrypt } catch (...) { - Gui->ShowError (_("Unknown exception occurred.")); + Gui->ShowError (LangString["LINUX_UNKNOWN_EXC_OCCURRED"]); } _exit (1); diff --git a/src/Main/Forms/ChangePasswordDialog.cpp b/src/Main/Forms/ChangePasswordDialog.cpp index 819d9bf2..585d14a5 100644 --- a/src/Main/Forms/ChangePasswordDialog.cpp +++ b/src/Main/Forms/ChangePasswordDialog.cpp @@ -48,21 +48,21 @@ namespace VeraCrypt enableNewPassword = true; enableNewKeyfiles = true; enablePkcs5Prf = true; - SetTitle (_("Change Volume Password and Keyfiles")); + SetTitle (LangString["IDD_PASSWORDCHANGE_DLG"]); break; case Mode::ChangeKeyfiles: enableNewKeyfiles = true; - SetTitle (_("Add/Remove Keyfiles to/from Volume")); + SetTitle (LangString["IDD_PCDM_ADD_REMOVE_VOL_KEYFILES"]); break; case Mode::RemoveAllKeyfiles: - SetTitle (_("Remove All Keyfiles from Volume")); + SetTitle (LangString["IDD_PCDM_REMOVE_ALL_KEYFILES_FROM_VOL"]); break; case Mode::ChangePkcs5Prf: enablePkcs5Prf = true; - SetTitle (_("Change Header Key Derivation Algorithm")); + SetTitle (LangString["IDD_PCDM_CHANGE_PKCS5_PRF"]); break; default: diff --git a/src/Main/Forms/DeviceSelectionDialog.cpp b/src/Main/Forms/DeviceSelectionDialog.cpp index c886e181..df4292c9 100644 --- a/src/Main/Forms/DeviceSelectionDialog.cpp +++ b/src/Main/Forms/DeviceSelectionDialog.cpp @@ -75,7 +75,7 @@ namespace VeraCrypt } #ifdef TC_WINDOWS - fields[ColumnDevice] = StringFormatter (L"{0} {1}:", _("Harddisk"), device.SystemNumber); + fields[ColumnDevice] = StringFormatter (L"{0} {1}:", LangString["HARDDISK"], device.SystemNumber); fields[ColumnDrive] = device.MountPoint; fields[ColumnName] = device.Name; #else @@ -120,21 +120,20 @@ namespace VeraCrypt Fit(); Layout(); Center(); - - StdButtonsOK->Disable(); - StdButtonsOK->SetDefault(); + OKButton->Disable(); + OKButton->SetDefault(); } void DeviceSelectionDialog::OnListItemActivated (wxListEvent& event) { - if (StdButtonsOK->IsEnabled()) + if (OKButton->IsEnabled()) EndModal (wxID_OK); } void DeviceSelectionDialog::OnListItemDeselected (wxListEvent& event) { if (DeviceListCtrl->GetSelectedItemCount() == 0) - StdButtonsOK->Disable(); + OKButton->Disable(); } void DeviceSelectionDialog::OnListItemSelected (wxListEvent& event) @@ -144,9 +143,9 @@ namespace VeraCrypt if (device && device->Size) { SelectedDevice = *device; - StdButtonsOK->Enable(); + OKButton->Enable(); } else - StdButtonsOK->Disable(); + OKButton->Disable(); } } diff --git a/src/Main/Forms/EncryptionOptionsWizardPage.cpp b/src/Main/Forms/EncryptionOptionsWizardPage.cpp index 0d899fb5..663a6129 100644 --- a/src/Main/Forms/EncryptionOptionsWizardPage.cpp +++ b/src/Main/Forms/EncryptionOptionsWizardPage.cpp @@ -121,7 +121,7 @@ namespace VeraCrypt else EncryptionAlgorithmStaticText->SetLabel (L""); - EncryptionAlgorithmHyperlink->SetLabel (_("More information")); + EncryptionAlgorithmHyperlink->SetLabel (LangString["IDC_MORE_INFO_SYS_ENCRYPTION"]); } Layout(); diff --git a/src/Main/Forms/Forms.cpp b/src/Main/Forms/Forms.cpp index c0a4070c..0af3e2a6 100644 --- a/src/Main/Forms/Forms.cpp +++ b/src/Main/Forms/Forms.cpp @@ -15,398 +15,399 @@ using namespace VeraCrypt; MainFrameBase::MainFrameBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style ) { this->SetSizeHints( wxSize( -1,496 ), wxDefaultSize ); - + MainMenuBar = new wxMenuBar( 0 ); VolumesMenu = new wxMenu(); wxMenuItem* CreateNewVolumeMenuItem; - CreateNewVolumeMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Create New Volume...") ) , wxEmptyString, wxITEM_NORMAL ); + CreateNewVolumeMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDM_CREATE_VOLUME") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( CreateNewVolumeMenuItem ); - + VolumesMenu->AppendSeparator(); - - MountVolumeMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Mount Volume") ) , wxEmptyString, wxITEM_NORMAL ); + + MountVolumeMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDM_MOUNT_VOLUME") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( MountVolumeMenuItem ); - + wxMenuItem* AutoMountDevicesMenuItem; - AutoMountDevicesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Auto-Mount All Device-Hosted Volumes") ) , wxEmptyString, wxITEM_NORMAL ); + AutoMountDevicesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDM_MOUNTALL") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( AutoMountDevicesMenuItem ); - + VolumesMenu->AppendSeparator(); - - DismountVolumeMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Dismount Volume") ) , wxEmptyString, wxITEM_NORMAL ); + + DismountVolumeMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDM_UNMOUNT_VOLUME") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( DismountVolumeMenuItem ); - - DismountAllMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Dismount All Mounted Volumes") ) , wxEmptyString, wxITEM_NORMAL ); + + DismountAllMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDM_UNMOUNTALL") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( DismountAllMenuItem ); - + VolumesMenu->AppendSeparator(); - + wxMenuItem* ChangePasswordMenuItem; - ChangePasswordMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Change Volume Password...") ) , wxEmptyString, wxITEM_NORMAL ); + ChangePasswordMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDM_CHANGE_PASSWORD") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( ChangePasswordMenuItem ); - + wxMenuItem* ChangePkcs5PrfMenuItem; - ChangePkcs5PrfMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Change Header Key Derivation Algorithm...") ) , wxEmptyString, wxITEM_NORMAL ); + ChangePkcs5PrfMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDM_CHANGE_HEADER_KEY_DERIV_ALGO") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( ChangePkcs5PrfMenuItem ); - + wxMenuItem* ChangeKeyfilesMenuItem; - ChangeKeyfilesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Add/Remove Keyfiles to/from Volume...") ) , wxEmptyString, wxITEM_NORMAL ); + ChangeKeyfilesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDD_PCDM_ADD_REMOVE_VOL_KEYFILES") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( ChangeKeyfilesMenuItem ); - + wxMenuItem* RemoveKeyfilesMenuItem; - RemoveKeyfilesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Remove All Keyfiles from Volume...") ) , wxEmptyString, wxITEM_NORMAL ); + RemoveKeyfilesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDM_REMOVE_ALL_KEYFILES_FROM_VOL") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( RemoveKeyfilesMenuItem ); - + VolumesMenu->AppendSeparator(); - - VolumePropertiesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("Volume Properties...") ) , wxEmptyString, wxITEM_NORMAL ); + + VolumePropertiesMenuItem = new wxMenuItem( VolumesMenu, wxID_ANY, wxString( _("IDC_VOLUME_PROPERTIES") ) , wxEmptyString, wxITEM_NORMAL ); VolumesMenu->Append( VolumePropertiesMenuItem ); - - MainMenuBar->Append( VolumesMenu, _("&Volumes") ); - + + MainMenuBar->Append( VolumesMenu, _("MENU_VOLUMES") ); + FavoritesMenu = new wxMenu(); - AddToFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("Add Selected Volume to Favorites...") ) , wxEmptyString, wxITEM_NORMAL ); + AddToFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("IDM_ADD_VOLUME_TO_FAVORITES") ) , wxEmptyString, wxITEM_NORMAL ); FavoritesMenu->Append( AddToFavoritesMenuItem ); - - AddAllMountedToFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("Add All Mounted Volumes to Favorites...") ) , wxEmptyString, wxITEM_NORMAL ); + + AddAllMountedToFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("IDM_ADD_ALL_VOLUME_TO_FAVORITES") ) , wxEmptyString, wxITEM_NORMAL ); FavoritesMenu->Append( AddAllMountedToFavoritesMenuItem ); - + wxMenuItem* OrganizeFavoritesMenuItem; - OrganizeFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("Organize Favorite Volumes...") ) , wxEmptyString, wxITEM_NORMAL ); + OrganizeFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("IDM_ORGANIZE_FAVORITES") ) , wxEmptyString, wxITEM_NORMAL ); FavoritesMenu->Append( OrganizeFavoritesMenuItem ); - + FavoritesMenu->AppendSeparator(); - + wxMenuItem* MountAllFavoritesMenuItem; - MountAllFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("Mount Favorite Volumes") ) , wxEmptyString, wxITEM_NORMAL ); + MountAllFavoritesMenuItem = new wxMenuItem( FavoritesMenu, wxID_ANY, wxString( _("IDM_MOUNT_FAVORITE_VOLUMES") ) , wxEmptyString, wxITEM_NORMAL ); FavoritesMenu->Append( MountAllFavoritesMenuItem ); - + FavoritesMenu->AppendSeparator(); - - MainMenuBar->Append( FavoritesMenu, _("&Favorites") ); - + + MainMenuBar->Append( FavoritesMenu, _("MENU_FAVORITES") ); + ToolsMenu = new wxMenu(); wxMenuItem* BenchmarkMenuItem; - BenchmarkMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Benchmark...") ) , wxEmptyString, wxITEM_NORMAL ); + BenchmarkMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_BENCHMARK") ) , wxEmptyString, wxITEM_NORMAL ); ToolsMenu->Append( BenchmarkMenuItem ); - + wxMenuItem* EncryptionTestMenuItem; - EncryptionTestMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Test Vectors...") ) , wxEmptyString, wxITEM_NORMAL ); + EncryptionTestMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_TEST_VECTORS") ) , wxEmptyString, wxITEM_NORMAL ); ToolsMenu->Append( EncryptionTestMenuItem ); - + ToolsMenu->AppendSeparator(); - + wxMenuItem* VolumeCreationWizardMenuItem; - VolumeCreationWizardMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Volume Creation Wizard") ) , wxEmptyString, wxITEM_NORMAL ); + VolumeCreationWizardMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_VOLUME_WIZARD") ) , wxEmptyString, wxITEM_NORMAL ); ToolsMenu->Append( VolumeCreationWizardMenuItem ); - + ToolsMenu->AppendSeparator(); - - BackupVolumeHeadersMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Backup Volume Header...") ) , wxEmptyString, wxITEM_NORMAL ); + + BackupVolumeHeadersMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_BACKUP_VOL_HEADER") ) , wxEmptyString, wxITEM_NORMAL ); ToolsMenu->Append( BackupVolumeHeadersMenuItem ); - - RestoreVolumeHeaderMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Restore Volume Header...") ) , wxEmptyString, wxITEM_NORMAL ); + + RestoreVolumeHeaderMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_RESTORE_VOL_HEADER") ) , wxEmptyString, wxITEM_NORMAL ); ToolsMenu->Append( RestoreVolumeHeaderMenuItem ); - + ToolsMenu->AppendSeparator(); - + wxMenuItem* CreateKeyfileMenuItem; - CreateKeyfileMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Keyfile Generator") ) , wxEmptyString, wxITEM_NORMAL ); + CreateKeyfileMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_KEYFILE_GENERATOR") ) , wxEmptyString, wxITEM_NORMAL ); ToolsMenu->Append( CreateKeyfileMenuItem ); - + wxMenuItem* ManageSecurityTokenKeyfilesMenuItem; - ManageSecurityTokenKeyfilesMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Manage Security Token Keyfiles...") ) , wxEmptyString, wxITEM_NORMAL ); + ManageSecurityTokenKeyfilesMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_MANAGE_TOKEN_KEYFILES") ) , wxEmptyString, wxITEM_NORMAL ); ToolsMenu->Append( ManageSecurityTokenKeyfilesMenuItem ); - + wxMenuItem* CloseAllSecurityTokenSessionsMenuItem; - CloseAllSecurityTokenSessionsMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Close All Security Token Sessions") ) , wxEmptyString, wxITEM_NORMAL ); + CloseAllSecurityTokenSessionsMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_CLOSE_ALL_TOKEN_SESSIONS") ) , wxEmptyString, wxITEM_NORMAL ); ToolsMenu->Append( CloseAllSecurityTokenSessionsMenuItem ); - + ToolsMenu->AppendSeparator(); - - WipeCachedPasswordsMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("Wipe Cached Passwords") ) , wxEmptyString, wxITEM_NORMAL ); + + WipeCachedPasswordsMenuItem = new wxMenuItem( ToolsMenu, wxID_ANY, wxString( _("IDM_WIPE_CACHE") ) , wxEmptyString, wxITEM_NORMAL ); ToolsMenu->Append( WipeCachedPasswordsMenuItem ); - - MainMenuBar->Append( ToolsMenu, _("T&ools") ); - + + MainMenuBar->Append( ToolsMenu, _("MENU_TOOLS") ); + SettingsMenu = new wxMenu(); - HotkeysMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("Hotkeys...") ) , wxEmptyString, wxITEM_NORMAL ); + HotkeysMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("IDM_HOTKEY_SETTINGS") ) , wxEmptyString, wxITEM_NORMAL ); SettingsMenu->Append( HotkeysMenuItem ); - + wxMenuItem* DefaultKeyfilesMenuItem; - DefaultKeyfilesMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("Default Keyfiles...") ) , wxEmptyString, wxITEM_NORMAL ); + DefaultKeyfilesMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("IDM_DEFAULT_KEYFILES") ) , wxEmptyString, wxITEM_NORMAL ); SettingsMenu->Append( DefaultKeyfilesMenuItem ); - + wxMenuItem* DefaultMountParametersMenuItem; - DefaultMountParametersMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("Default Mount Parameters...") ) , wxEmptyString, wxITEM_NORMAL ); + DefaultMountParametersMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("IDM_DEFAULT_MOUNT_PARAMETERS") ) , wxEmptyString, wxITEM_NORMAL ); SettingsMenu->Append( DefaultMountParametersMenuItem ); - + wxMenuItem* SecurityTokenPreferencesMenuItem; - SecurityTokenPreferencesMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("Security Tokens...") ) , wxEmptyString, wxITEM_NORMAL ); + SecurityTokenPreferencesMenuItem = new wxMenuItem( SettingsMenu, wxID_ANY, wxString( _("IDM_TOKEN_PREFERENCES") ) , wxEmptyString, wxITEM_NORMAL ); SettingsMenu->Append( SecurityTokenPreferencesMenuItem ); - + SettingsMenu->AppendSeparator(); - - PreferencesMenuItem = new wxMenuItem( SettingsMenu, wxID_PREFERENCES, wxString( _("&Preferences...") ) , wxEmptyString, wxITEM_NORMAL ); + + PreferencesMenuItem = new wxMenuItem( SettingsMenu, wxID_PREFERENCES, wxString( _("IDM_PREFERENCES") ) , wxEmptyString, wxITEM_NORMAL ); SettingsMenu->Append( PreferencesMenuItem ); - - MainMenuBar->Append( SettingsMenu, _("Settin&gs") ); - + + MainMenuBar->Append( SettingsMenu, _("MENU_SETTINGS") ); + HelpMenu = new wxMenu(); wxMenuItem* UserGuideMenuItem; - UserGuideMenuItem = new wxMenuItem( HelpMenu, wxID_HELP, wxString( _("User's Guide") ) , wxEmptyString, wxITEM_NORMAL ); + UserGuideMenuItem = new wxMenuItem( HelpMenu, wxID_HELP, wxString( _("IDM_HELP") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( UserGuideMenuItem ); - + wxMenuItem* OnlineHelpMenuItem; - OnlineHelpMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Online Help") ) , wxEmptyString, wxITEM_NORMAL ); + OnlineHelpMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_ONLINE_HELP") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( OnlineHelpMenuItem ); - + wxMenuItem* BeginnersTutorialMenuItem; - BeginnersTutorialMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Beginner's Tutorial") ) , wxEmptyString, wxITEM_NORMAL ); + BeginnersTutorialMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_ONLINE_TUTORIAL") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( BeginnersTutorialMenuItem ); - + wxMenuItem* FaqMenuItem; - FaqMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Frequently Asked Questions") ) , wxEmptyString, wxITEM_NORMAL ); + FaqMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_FAQ") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( FaqMenuItem ); - + HelpMenu->AppendSeparator(); - + wxMenuItem* WebsiteMenuItem; - WebsiteMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("VeraCrypt Website") ) , wxEmptyString, wxITEM_NORMAL ); + WebsiteMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_WEBSITE") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( WebsiteMenuItem ); - + wxMenuItem* DownloadsMenuItem; - DownloadsMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Downloads") ) , wxEmptyString, wxITEM_NORMAL ); + DownloadsMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_TC_DOWNLOADS") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( DownloadsMenuItem ); - + wxMenuItem* NewsMenuItem; - NewsMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("News") ) , wxEmptyString, wxITEM_NORMAL ); + NewsMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_NEWS") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( NewsMenuItem ); - + wxMenuItem* VersionHistoryMenuItem; - VersionHistoryMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Version History") ) , wxEmptyString, wxITEM_NORMAL ); + VersionHistoryMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_VERSION_HISTORY") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( VersionHistoryMenuItem ); - + HelpMenu->AppendSeparator(); - + wxMenuItem* DonateMenuItem; - DonateMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Donate") ) , wxEmptyString, wxITEM_NORMAL ); + DonateMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_DONATE") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( DonateMenuItem ); - + wxMenuItem* ContactMenuItem; - ContactMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Contact") ) , wxEmptyString, wxITEM_NORMAL ); + ContactMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_CONTACT") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( ContactMenuItem ); - + wxMenuItem* LegalNoticesMenuItem; - LegalNoticesMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("Legal Notices") ) , wxEmptyString, wxITEM_NORMAL ); + LegalNoticesMenuItem = new wxMenuItem( HelpMenu, wxID_ANY, wxString( _("IDM_LICENSE") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( LegalNoticesMenuItem ); - + wxMenuItem* AboutMenuItem; - AboutMenuItem = new wxMenuItem( HelpMenu, wxID_ABOUT, wxString( _("About") ) , wxEmptyString, wxITEM_NORMAL ); + AboutMenuItem = new wxMenuItem( HelpMenu, wxID_ABOUT, wxString( _("ABOUTBOX") ) , wxEmptyString, wxITEM_NORMAL ); HelpMenu->Append( AboutMenuItem ); - - MainMenuBar->Append( HelpMenu, _("&Help") ); - + + MainMenuBar->Append( HelpMenu, _("MENU_HELP") ); + this->SetMenuBar( MainMenuBar ); - + wxBoxSizer* bSizer1; bSizer1 = new wxBoxSizer( wxVERTICAL ); - + MainPanel = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer2; bSizer2 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer48; bSizer48 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer1; sbSizer1 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL ); - - SlotListCtrl = new wxListCtrl( MainPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SINGLE_SEL|wxLC_VRULES|wxSUNKEN_BORDER ); + + SlotListCtrl = new wxListCtrl( sbSizer1->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SINGLE_SEL|wxLC_VRULES|wxSUNKEN_BORDER ); sbSizer1->Add( SlotListCtrl, 1, wxALL|wxEXPAND, 5 ); - - + + bSizer48->Add( sbSizer1, 1, wxEXPAND, 5 ); - + LowStaticBoxSizer = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL ); - + HigherButtonSizer = new wxBoxSizer( wxVERTICAL ); - - + + LowStaticBoxSizer->Add( HigherButtonSizer, 0, wxEXPAND|wxTOP, 2 ); - + wxGridSizer* gSizer1; gSizer1 = new wxGridSizer( 1, 3, 0, 0 ); - + wxBoxSizer* bSizer17; bSizer17 = new wxBoxSizer( wxVERTICAL ); - - bSizer17->SetMinSize( wxSize( 138,34 ) ); - CreateVolumeButton = new wxButton( MainPanel, wxID_ANY, _("&Create Volume"), wxDefaultPosition, wxDefaultSize, 0 ); + + bSizer17->SetMinSize( wxSize( 138,34 ) ); + CreateVolumeButton = new wxButton( LowStaticBoxSizer->GetStaticBox(), wxID_ANY, _("IDC_CREATE_VOLUME"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer17->Add( CreateVolumeButton, 1, wxALL|wxEXPAND, 5 ); - - + + gSizer1->Add( bSizer17, 0, 0, 5 ); - + wxBoxSizer* bSizer18; bSizer18 = new wxBoxSizer( wxVERTICAL ); - - bSizer18->SetMinSize( wxSize( 138,34 ) ); - VolumePropertiesButton = new wxButton( MainPanel, wxID_ANY, _("&Volume Properties..."), wxDefaultPosition, wxDefaultSize, 0 ); + + bSizer18->SetMinSize( wxSize( 138,34 ) ); + VolumePropertiesButton = new wxButton( LowStaticBoxSizer->GetStaticBox(), wxID_ANY, _("IDC_VOLUME_PROPERTIES"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer18->Add( VolumePropertiesButton, 1, wxALL|wxALIGN_CENTER_HORIZONTAL|wxEXPAND, 5 ); - - + + gSizer1->Add( bSizer18, 0, wxALIGN_CENTER_HORIZONTAL, 5 ); - + wxBoxSizer* bSizer19; bSizer19 = new wxBoxSizer( wxVERTICAL ); - - bSizer19->SetMinSize( wxSize( 138,34 ) ); - WipeCacheButton = new wxButton( MainPanel, wxID_ANY, _("&Wipe Cache"), wxDefaultPosition, wxDefaultSize, 0 ); + + bSizer19->SetMinSize( wxSize( 138,34 ) ); + WipeCacheButton = new wxButton( LowStaticBoxSizer->GetStaticBox(), wxID_ANY, _("HK_WIPE_CACHE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer19->Add( WipeCacheButton, 1, wxALL|wxALIGN_RIGHT|wxEXPAND, 5 ); - - + + gSizer1->Add( bSizer19, 0, wxALIGN_RIGHT, 5 ); - - + + LowStaticBoxSizer->Add( gSizer1, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 ); - - + + LowStaticBoxSizer->Add( 0, 0, 0, 0, 5 ); - - VolumeStaticBoxSizer = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, _("Volume") ), wxVERTICAL ); - + + VolumeStaticBoxSizer = new wxStaticBoxSizer( new wxStaticBox( LowStaticBoxSizer->GetStaticBox(), wxID_ANY, _("IDT_VOLUME") ), wxVERTICAL ); + VolumeGridBagSizer = new wxGridBagSizer( 0, 0 ); VolumeGridBagSizer->SetFlexibleDirection( wxBOTH ); VolumeGridBagSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - - LogoBitmap = new wxStaticBitmap( MainPanel, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER ); + + LogoBitmap = new wxStaticBitmap( VolumeStaticBoxSizer->GetStaticBox(), wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER ); LogoBitmap->SetMinSize( wxSize( 42,52 ) ); - + VolumeGridBagSizer->Add( LogoBitmap, wxGBPosition( 0, 0 ), wxGBSpan( 2, 1 ), wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - - VolumePathComboBox = new wxComboBox( MainPanel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_DROPDOWN ); + + VolumePathComboBox = new wxComboBox( VolumeStaticBoxSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_DROPDOWN ); VolumeGridBagSizer->Add( VolumePathComboBox, wxGBPosition( 0, 1 ), wxGBSpan( 1, 2 ), wxEXPAND|wxALL, 5 ); - + wxBoxSizer* bSizer191; bSizer191 = new wxBoxSizer( wxVERTICAL ); - - bSizer191->SetMinSize( wxSize( 138,34 ) ); - SelectFileButton = new wxButton( MainPanel, wxID_ANY, _("Select &File..."), wxDefaultPosition, wxDefaultSize, 0 ); + + bSizer191->SetMinSize( wxSize( 138,34 ) ); + SelectFileButton = new wxButton( VolumeStaticBoxSizer->GetStaticBox(), wxID_ANY, _("IDC_SELECT_FILE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer191->Add( SelectFileButton, 1, wxALL|wxEXPAND, 5 ); - - + + VolumeGridBagSizer->Add( bSizer191, wxGBPosition( 0, 3 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 ); - - NoHistoryCheckBox = new wxCheckBox( MainPanel, wxID_ANY, _("&Never save history"), wxDefaultPosition, wxDefaultSize, 0 ); + + NoHistoryCheckBox = new wxCheckBox( VolumeStaticBoxSizer->GetStaticBox(), wxID_ANY, _("IDC_NO_HISTORY"), wxDefaultPosition, wxDefaultSize, 0 ); VolumeGridBagSizer->Add( NoHistoryCheckBox, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - + wxBoxSizer* bSizer20; bSizer20 = new wxBoxSizer( wxVERTICAL ); - - bSizer20->SetMinSize( wxSize( 138,34 ) ); - VolumeToolsButton = new wxButton( MainPanel, wxID_ANY, _("Volume &Tools..."), wxDefaultPosition, wxDefaultSize, 0 ); + + bSizer20->SetMinSize( wxSize( 138,34 ) ); + VolumeToolsButton = new wxButton( VolumeStaticBoxSizer->GetStaticBox(), wxID_ANY, _("IDC_VOLUME_TOOLS"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer20->Add( VolumeToolsButton, 1, wxALL|wxEXPAND, 5 ); - - + + VolumeGridBagSizer->Add( bSizer20, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxALIGN_RIGHT, 5 ); - + wxBoxSizer* bSizer21; bSizer21 = new wxBoxSizer( wxVERTICAL ); - - bSizer21->SetMinSize( wxSize( 138,34 ) ); - SelectDeviceButton = new wxButton( MainPanel, wxID_ANY, _("Select D&evice..."), wxDefaultPosition, wxDefaultSize, 0 ); + + bSizer21->SetMinSize( wxSize( 138,34 ) ); + SelectDeviceButton = new wxButton( VolumeStaticBoxSizer->GetStaticBox(), wxID_ANY, _("IDC_SELECT_DEVICE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer21->Add( SelectDeviceButton, 1, wxEXPAND|wxALL, 5 ); - - + + VolumeGridBagSizer->Add( bSizer21, wxGBPosition( 1, 3 ), wxGBSpan( 1, 1 ), wxEXPAND, 5 ); - - + + VolumeGridBagSizer->AddGrowableCol( 1 ); VolumeGridBagSizer->AddGrowableRow( 0 ); - + VolumeStaticBoxSizer->Add( VolumeGridBagSizer, 1, wxEXPAND|wxALL, 4 ); - - + + LowStaticBoxSizer->Add( VolumeStaticBoxSizer, 1, wxEXPAND|wxALL, 5 ); - - + + LowStaticBoxSizer->Add( 0, 0, 0, 0, 5 ); - + wxGridSizer* gSizer2; gSizer2 = new wxGridSizer( 1, 4, 0, 0 ); - + wxStaticBoxSizer* sbSizer4; - sbSizer4 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL ); - - sbSizer4->SetMinSize( wxSize( 139,-1 ) ); - VolumeButton = new wxButton( MainPanel, wxID_ANY, _("&Mount"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer4 = new wxStaticBoxSizer( new wxStaticBox( LowStaticBoxSizer->GetStaticBox(), wxID_ANY, wxEmptyString ), wxVERTICAL ); + + sbSizer4->SetMinSize( wxSize( 139,-1 ) ); + VolumeButton = new wxButton( sbSizer4->GetStaticBox(), wxID_ANY, _("MOUNT_BUTTON"), wxDefaultPosition, wxDefaultSize, 0 ); VolumeButton->SetDefault(); + VolumeButton->SetMinSize( wxSize( -1,32 ) ); - + sbSizer4->Add( VolumeButton, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxALL, 2 ); - - + + gSizer2->Add( sbSizer4, 1, wxEXPAND, 0 ); - + wxStaticBoxSizer* sbSizer41; - sbSizer41 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL ); - sbSizer41->SetMinSize( wxSize( 139,-1 ) ); - - MountAllDevicesButton = new wxButton( MainPanel, wxID_ANY, _("&Auto-Mount Devices"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer41 = new wxStaticBoxSizer( new wxStaticBox( LowStaticBoxSizer->GetStaticBox(), wxID_ANY, wxEmptyString ), wxVERTICAL ); + + sbSizer41->SetMinSize( wxSize( 139,-1 ) ); + MountAllDevicesButton = new wxButton( sbSizer41->GetStaticBox(), wxID_ANY, _("IDC_MOUNTALL"), wxDefaultPosition, wxDefaultSize, 0 ); MountAllDevicesButton->SetMinSize( wxSize( -1,32 ) ); - + sbSizer41->Add( MountAllDevicesButton, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxALL, 2 ); - - + + gSizer2->Add( sbSizer41, 1, wxEXPAND, 5 ); - + wxStaticBoxSizer* sbSizer42; - sbSizer42 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL ); - sbSizer42->SetMinSize( wxSize( 139,-1 ) ); - - DismountAllButton = new wxButton( MainPanel, wxID_ANY, _("Di&smount All"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer42 = new wxStaticBoxSizer( new wxStaticBox( LowStaticBoxSizer->GetStaticBox(), wxID_ANY, wxEmptyString ), wxVERTICAL ); + + sbSizer42->SetMinSize( wxSize( 139,-1 ) ); + DismountAllButton = new wxButton( sbSizer42->GetStaticBox(), wxID_ANY, _("IDC_UNMOUNTALL"), wxDefaultPosition, wxDefaultSize, 0 ); DismountAllButton->SetMinSize( wxSize( -1,32 ) ); - + sbSizer42->Add( DismountAllButton, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxALL, 2 ); - - - gSizer2->Add( sbSizer42, 1, wxEXPAND, 5 ); - + + + gSizer2->Add( sbSizer42, 1, wxEXPAND, 5 ); + wxStaticBoxSizer* sbSizer43; - sbSizer43 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxVERTICAL ); - sbSizer43->SetMinSize( wxSize( 139,-1 ) ); - - ExitButton = new wxButton( MainPanel, wxID_ANY, _("E&xit"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer43 = new wxStaticBoxSizer( new wxStaticBox( LowStaticBoxSizer->GetStaticBox(), wxID_ANY, wxEmptyString ), wxVERTICAL ); + + sbSizer43->SetMinSize( wxSize( 139,-1 ) ); + ExitButton = new wxButton( sbSizer43->GetStaticBox(), wxID_ANY, _("IDC_EXIT"), wxDefaultPosition, wxDefaultSize, 0 ); ExitButton->SetMinSize( wxSize( -1,32 ) ); - + sbSizer43->Add( ExitButton, 1, wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxALL, 2 ); - - + + gSizer2->Add( sbSizer43, 1, wxEXPAND, 5 ); - - + + LowStaticBoxSizer->Add( gSizer2, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer48->Add( LowStaticBoxSizer, 0, wxEXPAND, 5 ); - - + + bSizer2->Add( bSizer48, 1, wxEXPAND, 5 ); - - + + MainPanel->SetSizer( bSizer2 ); MainPanel->Layout(); bSizer2->Fit( MainPanel ); bSizer1->Add( MainPanel, 1, wxEXPAND, 0 ); - - + + this->SetSizer( bSizer1 ); this->Layout(); bSizer1->Fit( this ); - + this->Centre( wxBOTH ); - + // Connect Events this->Connect( wxEVT_ACTIVATE, wxActivateEventHandler( MainFrameBase::OnActivate ) ); this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( MainFrameBase::OnClose ) ); @@ -529,96 +530,98 @@ MainFrameBase::~MainFrameBase() MountAllDevicesButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnMountAllDevicesButtonClick ), NULL, this ); DismountAllButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnDismountAllButtonClick ), NULL, this ); ExitButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MainFrameBase::OnExitButtonClick ), NULL, this ); - + } WizardFrameBase::WizardFrameBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxFrame( parent, id, title, pos, size, style ) { this->SetSizeHints( wxSize( 800,500 ), wxDefaultSize ); - + MainSizer = new wxBoxSizer( wxVERTICAL ); - + MainPanel = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer63; bSizer63 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer64; bSizer64 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer27; sbSizer27 = new wxStaticBoxSizer( new wxStaticBox( MainPanel, wxID_ANY, wxEmptyString ), wxHORIZONTAL ); - - WizardBitmap = new wxStaticBitmap( MainPanel, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); + + WizardBitmap = new wxStaticBitmap( sbSizer27->GetStaticBox(), wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); sbSizer27->Add( WizardBitmap, 0, wxALL|wxEXPAND, 5 ); - + wxBoxSizer* bSizer66; bSizer66 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer126; bSizer126 = new wxBoxSizer( wxHORIZONTAL ); - - PageTitleStaticText = new wxStaticText( MainPanel, wxID_ANY, _("Page Title"), wxDefaultPosition, wxDefaultSize, 0 ); + + PageTitleStaticText = new wxStaticText( sbSizer27->GetStaticBox(), wxID_ANY, _("Page Title"), wxDefaultPosition, wxDefaultSize, 0 ); PageTitleStaticText->Wrap( -1 ); - PageTitleStaticText->SetFont( wxFont( 16, 70, 90, 90, false, wxT("Times New Roman") ) ); - + + PageTitleStaticText->SetFont( wxFont( 16, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Times New Roman") ) ); + bSizer126->Add( PageTitleStaticText, 0, wxALL, 5 ); - - + + bSizer66->Add( bSizer126, 0, wxLEFT, 5 ); - + PageSizer = new wxBoxSizer( wxVERTICAL ); - - + + bSizer66->Add( PageSizer, 1, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - + + sbSizer27->Add( bSizer66, 1, wxEXPAND|wxLEFT, 5 ); - - + + bSizer64->Add( sbSizer27, 1, wxEXPAND|wxRIGHT|wxLEFT, 5 ); - + wxBoxSizer* bSizer70; bSizer70 = new wxBoxSizer( wxHORIZONTAL ); - - + + bSizer70->Add( 0, 0, 1, wxEXPAND, 5 ); - - HelpButton = new wxButton( MainPanel, wxID_HELP, _("&Help"), wxDefaultPosition, wxDefaultSize, 0 ); + + HelpButton = new wxButton( MainPanel, wxID_HELP, _("IDHELP"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer70->Add( HelpButton, 0, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer70->Add( 0, 0, 0, wxLEFT|wxALIGN_RIGHT, 5 ); - - PreviousButton = new wxButton( MainPanel, wxID_ANY, _("< &Prev"), wxDefaultPosition, wxDefaultSize, 0 ); + + PreviousButton = new wxButton( MainPanel, wxID_ANY, _("PREV"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer70->Add( PreviousButton, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 ); - - NextButton = new wxButton( MainPanel, wxID_ANY, _("&Next >"), wxDefaultPosition, wxDefaultSize, 0|wxWANTS_CHARS ); + + NextButton = new wxButton( MainPanel, wxID_ANY, _("NEXT"), wxDefaultPosition, wxDefaultSize, 0|wxWANTS_CHARS ); NextButton->SetDefault(); + bSizer70->Add( NextButton, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer70->Add( 0, 0, 0, wxLEFT|wxALIGN_RIGHT, 5 ); - - CancelButton = new wxButton( MainPanel, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 ); + + CancelButton = new wxButton( MainPanel, wxID_CANCEL, _("IDCANCEL"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer70->Add( CancelButton, 0, wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer64->Add( bSizer70, 0, wxEXPAND|wxALIGN_RIGHT|wxALL, 5 ); - - + + bSizer63->Add( bSizer64, 1, wxEXPAND, 5 ); - - + + MainPanel->SetSizer( bSizer63 ); MainPanel->Layout(); bSizer63->Fit( MainPanel ); MainSizer->Add( MainPanel, 1, wxEXPAND, 5 ); - - + + this->SetSizer( MainSizer ); this->Layout(); MainSizer->Fit( this ); - + // Connect Events this->Connect( wxEVT_ACTIVATE, wxActivateEventHandler( WizardFrameBase::OnActivate ) ); this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( WizardFrameBase::OnClose ) ); @@ -639,123 +642,126 @@ WizardFrameBase::~WizardFrameBase() PreviousButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnPreviousButtonClick ), NULL, this ); NextButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnNextButtonClick ), NULL, this ); CancelButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( WizardFrameBase::OnCancelButtonClick ), NULL, this ); - + } AboutDialogBase::AboutDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + wxBoxSizer* bSizer116; bSizer116 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer117; bSizer117 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer120; bSizer120 = new wxBoxSizer( wxVERTICAL ); - - bSizer120->SetMinSize( wxSize( -1,78 ) ); + + bSizer120->SetMinSize( wxSize( -1,78 ) ); m_panel14 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); m_panel14->SetBackgroundColour( wxColour( 10, 108, 206 ) ); - + wxBoxSizer* bSizer121; bSizer121 = new wxBoxSizer( wxVERTICAL ); - - + + bSizer121->Add( 0, 0, 1, wxEXPAND|wxALL, 5 ); - + wxBoxSizer* bSizer122; bSizer122 = new wxBoxSizer( wxVERTICAL ); - + LogoBitmap = new wxStaticBitmap( m_panel14, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, 0 ); bSizer122->Add( LogoBitmap, 0, wxALL, 10 ); - - + + bSizer121->Add( bSizer122, 0, wxEXPAND|wxLEFT, 8 ); - - + + m_panel14->SetSizer( bSizer121 ); m_panel14->Layout(); bSizer121->Fit( m_panel14 ); bSizer120->Add( m_panel14, 1, wxEXPAND, 5 ); - - + + bSizer117->Add( bSizer120, 0, wxEXPAND, 5 ); - + wxBoxSizer* bSizer118; bSizer118 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer123; bSizer123 = new wxBoxSizer( wxVERTICAL ); - + VersionStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); VersionStaticText->Wrap( -1 ); + bSizer123->Add( VersionStaticText, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); - - + + bSizer123->Add( 0, 0, 0, wxTOP, 3 ); - + CopyrightStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); CopyrightStaticText->Wrap( -1 ); + bSizer123->Add( CopyrightStaticText, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - - + + bSizer123->Add( 0, 0, 0, wxTOP, 3 ); - + WebsiteHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, wxEmptyString, wxT("."), wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE ); - + WebsiteHyperlink->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); WebsiteHyperlink->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); WebsiteHyperlink->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); bSizer123->Add( WebsiteHyperlink, 0, wxALL, 5 ); - - + + bSizer118->Add( bSizer123, 1, wxEXPAND|wxLEFT, 5 ); - - + + bSizer117->Add( bSizer118, 1, wxALL|wxEXPAND, 15 ); - + m_staticline3 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL ); bSizer117->Add( m_staticline3, 0, wxEXPAND|wxBOTTOM, 5 ); - + CreditsTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE|wxTE_READONLY|wxSUNKEN_BORDER ); bSizer117->Add( CreditsTextCtrl, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 10 ); - - + + bSizer117->Add( 0, 0, 0, wxTOP, 5 ); - + m_staticline4 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL ); bSizer117->Add( m_staticline4, 0, wxEXPAND|wxTOP|wxBOTTOM, 3 ); - + m_staticline5 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL ); bSizer117->Add( m_staticline5, 0, wxEXPAND|wxBOTTOM, 5 ); - + wxBoxSizer* bSizer119; bSizer119 = new wxBoxSizer( wxHORIZONTAL ); - - + + bSizer119->Add( 0, 0, 1, wxEXPAND|wxALL, 5 ); - + wxButton* OKButton; - OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 ); + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); OKButton->SetDefault(); + bSizer119->Add( OKButton, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer119->Add( 0, 0, 0, wxLEFT, 5 ); - - + + bSizer117->Add( bSizer119, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 6 ); - - + + bSizer116->Add( bSizer117, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer116 ); this->Layout(); bSizer116->Fit( this ); - + // Connect Events WebsiteHyperlink->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( AboutDialogBase::OnWebsiteHyperlinkClick ), NULL, this ); } @@ -764,7 +770,7 @@ AboutDialogBase::~AboutDialogBase() { // Disconnect Events WebsiteHyperlink->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( AboutDialogBase::OnWebsiteHyperlinkClick ), NULL, this ); - + } BenchmarkDialogBase::BenchmarkDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) @@ -783,18 +789,18 @@ BenchmarkDialogBase::BenchmarkDialogBase( wxWindow* parent, wxWindowID id, const fgSizer9->SetFlexibleDirection( wxHORIZONTAL ); fgSizer9->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - m_staticText70 = new wxStaticText( this, wxID_ANY, _("Benchmark:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText70 = new wxStaticText( this, wxID_ANY, _("IDT_BENCHMARK"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText70->Wrap( -1 ); fgSizer9->Add( m_staticText70, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - wxString BenchmarkChoiceChoices[] = { _("Encryption Algorithm"), _("PKCS-5 PRF"), _("Hash Algorithm") }; + wxString BenchmarkChoiceChoices[] = { _("ENCRYPTION_ALGORITHM"), _("PKCS5_PRF"), _("IDT_HASH_ALGO") }; int BenchmarkChoiceNChoices = sizeof( BenchmarkChoiceChoices ) / sizeof( wxString ); BenchmarkChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, BenchmarkChoiceNChoices, BenchmarkChoiceChoices, 0 ); BenchmarkChoice->SetSelection( 0 ); fgSizer9->Add( BenchmarkChoice, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - m_bufferSizeLabel = new wxStaticText( this, wxID_ANY, _("Buffer Size:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_bufferSizeLabel = new wxStaticText( this, wxID_ANY, _("IDT_BUFFER_SIZE"), wxDefaultPosition, wxDefaultSize, 0 ); m_bufferSizeLabel->Wrap( -1 ); fgSizer9->Add( m_bufferSizeLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 ); @@ -804,7 +810,7 @@ BenchmarkDialogBase::BenchmarkDialogBase( wxWindow* parent, wxWindowID id, const BufferSizeChoice->SetSelection( 0 ); fgSizer9->Add( BufferSizeChoice, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - m_volumePimLabel = new wxStaticText( this, wxID_ANY, _("Volume PIM:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_volumePimLabel = new wxStaticText( this, wxID_ANY, _("IDT_PIM"), wxDefaultPosition, wxDefaultSize, 0 ); m_volumePimLabel->Wrap( -1 ); fgSizer9->Add( m_volumePimLabel, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); @@ -835,12 +841,13 @@ BenchmarkDialogBase::BenchmarkDialogBase( wxWindow* parent, wxWindowID id, const RightSizer = new wxBoxSizer( wxVERTICAL ); - BenchmarkButton = new wxButton( this, wxID_OK, _("Benchmark"), wxDefaultPosition, wxDefaultSize, 0 ); + BenchmarkButton = new wxButton( this, wxID_OK, _("IDC_PERFORM_BENCHMARK"), wxDefaultPosition, wxDefaultSize, 0 ); BenchmarkButton->SetDefault(); + RightSizer->Add( BenchmarkButton, 0, wxALL|wxEXPAND, 5 ); wxButton* CancelButton; - CancelButton = new wxButton( this, wxID_CANCEL, _("Close"), wxDefaultPosition, wxDefaultSize, 0 ); + CancelButton = new wxButton( this, wxID_CANCEL, _("IDCLOSE"), wxDefaultPosition, wxDefaultSize, 0 ); RightSizer->Add( CancelButton, 0, wxALL|wxEXPAND, 5 ); @@ -848,6 +855,7 @@ BenchmarkDialogBase::BenchmarkDialogBase( wxWindow* parent, wxWindowID id, const BenchmarkNoteStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); BenchmarkNoteStaticText->Wrap( -1 ); + RightSizer->Add( BenchmarkNoteStaticText, 1, wxALL|wxEXPAND, 5 ); @@ -880,61 +888,62 @@ BenchmarkDialogBase::~BenchmarkDialogBase() ChangePasswordDialogBase::ChangePasswordDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - this->SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); - + this->SetExtraStyle( this->GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); + wxBoxSizer* bSizer30; bSizer30 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer31; bSizer31 = new wxBoxSizer( wxHORIZONTAL ); - + wxBoxSizer* bSizer32; bSizer32 = new wxBoxSizer( wxVERTICAL ); - - CurrentSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Current") ), wxVERTICAL ); - + + CurrentSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_CURRENT") ), wxVERTICAL ); + CurrentPasswordPanelSizer = new wxBoxSizer( wxVERTICAL ); - - + + CurrentSizer->Add( CurrentPasswordPanelSizer, 0, wxALIGN_LEFT, 5 ); - - + + bSizer32->Add( CurrentSizer, 0, wxEXPAND, 5 ); - - NewSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("New") ), wxVERTICAL ); - + + NewSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_NEW") ), wxVERTICAL ); + NewPasswordPanelSizer = new wxBoxSizer( wxVERTICAL ); - - + + NewSizer->Add( NewPasswordPanelSizer, 0, wxALIGN_LEFT, 5 ); - - + + bSizer32->Add( NewSizer, 0, wxTOP|wxEXPAND, 5 ); - - + + bSizer31->Add( bSizer32, 1, wxEXPAND|wxALL, 5 ); - + wxBoxSizer* bSizer33; bSizer33 = new wxBoxSizer( wxVERTICAL ); - - OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 ); + + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); OKButton->SetDefault(); + bSizer33->Add( OKButton, 0, wxALL|wxEXPAND, 5 ); - - CancelButton = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 ); + + CancelButton = new wxButton( this, wxID_CANCEL, _("IDCANCEL"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer33->Add( CancelButton, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer31->Add( bSizer33, 0, 0, 5 ); - - + + bSizer30->Add( bSizer31, 1, wxEXPAND|wxALL, 5 ); - - + + this->SetSizer( bSizer30 ); this->Layout(); bSizer30->Fit( this ); - + // Connect Events OKButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ChangePasswordDialogBase::OnOKButtonClick ), NULL, this ); } @@ -943,46 +952,55 @@ ChangePasswordDialogBase::~ChangePasswordDialogBase() { // Disconnect Events OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ChangePasswordDialogBase::OnOKButtonClick ), NULL, this ); - + } DeviceSelectionDialogBase::DeviceSelectionDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize ); - this->SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); - + this->SetExtraStyle( this->GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); + wxBoxSizer* bSizer3; bSizer3 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer4; bSizer4 = new wxBoxSizer( wxVERTICAL ); - + DeviceListCtrl = new wxListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SINGLE_SEL|wxLC_VRULES|wxSUNKEN_BORDER ); bSizer4->Add( DeviceListCtrl, 1, wxALL|wxEXPAND, 5 ); - - StdButtons = new wxStdDialogButtonSizer(); - StdButtonsOK = new wxButton( this, wxID_OK ); - StdButtons->AddButton( StdButtonsOK ); - StdButtonsCancel = new wxButton( this, wxID_CANCEL ); - StdButtons->AddButton( StdButtonsCancel ); - StdButtons->Realize(); - - bSizer4->Add( StdButtons, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer3->Add( bSizer4, 1, wxEXPAND|wxALL, 5 ); - - + + wxBoxSizer* bSizer166; + bSizer166 = new wxBoxSizer( wxHORIZONTAL ); + + + bSizer166->Add( 0, 0, 1, wxEXPAND, 5 ); + + CancelButton = new wxButton( this, wxID_CANCEL, _("IDCANCEL"), wxDefaultPosition, wxDefaultSize, 0 ); + bSizer166->Add( CancelButton, 0, wxALL, 5 ); + + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); + OKButton->SetDefault(); + + bSizer166->Add( OKButton, 0, wxALL, 5 ); + + + bSizer3->Add( bSizer166, 0, wxALIGN_RIGHT|wxALL|wxEXPAND, 5 ); + + this->SetSizer( bSizer3 ); this->Layout(); bSizer3->Fit( this ); - + this->Centre( wxBOTH ); - + // Connect Events DeviceListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_ACTIVATED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemActivated ), NULL, this ); DeviceListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemDeselected ), NULL, this ); DeviceListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemSelected ), NULL, this ); + OKButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DeviceSelectionDialogBase::OnOKButtonClick ), NULL, this ); } DeviceSelectionDialogBase::~DeviceSelectionDialogBase() @@ -991,154 +1009,155 @@ DeviceSelectionDialogBase::~DeviceSelectionDialogBase() DeviceListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_ACTIVATED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemActivated ), NULL, this ); DeviceListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemDeselected ), NULL, this ); DeviceListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( DeviceSelectionDialogBase::OnListItemSelected ), NULL, this ); - + OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DeviceSelectionDialogBase::OnOKButtonClick ), NULL, this ); + } EncryptionTestDialogBase::EncryptionTestDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + wxBoxSizer* bSizer132; bSizer132 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer133; bSizer133 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer134; bSizer134 = new wxBoxSizer( wxHORIZONTAL ); - + wxStaticText* m_staticText41; - m_staticText41 = new wxStaticText( this, wxID_ANY, _("Encryption algorithm:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText41 = new wxStaticText( this, wxID_ANY, _("IDT_CIPHER"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText41->Wrap( -1 ); + bSizer134->Add( m_staticText41, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 ); - + wxArrayString EncryptionAlgorithmChoiceChoices; EncryptionAlgorithmChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, EncryptionAlgorithmChoiceChoices, 0 ); EncryptionAlgorithmChoice->SetSelection( 0 ); bSizer134->Add( EncryptionAlgorithmChoice, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - XtsModeCheckBox = new wxCheckBox( this, wxID_ANY, _("XTS mode"), wxDefaultPosition, wxDefaultSize, 0 ); - XtsModeCheckBox->SetValue(true); + + XtsModeCheckBox = new wxCheckBox( this, wxID_ANY, _("IDT_XTS_MODE"), wxDefaultPosition, wxDefaultSize, 0 ); + XtsModeCheckBox->SetValue(true); bSizer134->Add( XtsModeCheckBox, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer133->Add( bSizer134, 0, wxALIGN_CENTER_HORIZONTAL, 5 ); - + wxStaticBoxSizer* sbSizer38; - sbSizer38 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Key (hexadecimal)") ), wxVERTICAL ); - - KeyTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - KeyTextCtrl->SetMaxLength( 0 ); - KeyTextCtrl->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier") ) ); - + sbSizer38 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_TEST_KEY") ), wxVERTICAL ); + + KeyTextCtrl = new wxTextCtrl( sbSizer38->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + KeyTextCtrl->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Courier") ) ); + sbSizer38->Add( KeyTextCtrl, 1, wxALL|wxEXPAND, 5 ); - + wxBoxSizer* bSizer135; bSizer135 = new wxBoxSizer( wxHORIZONTAL ); - + wxStaticText* m_staticText43; - m_staticText43 = new wxStaticText( this, wxID_ANY, _("Key size:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText43 = new wxStaticText( sbSizer38->GetStaticBox(), wxID_ANY, _("IDT_KEY"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText43->Wrap( -1 ); + bSizer135->Add( m_staticText43, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - - KeySizeStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + + KeySizeStaticText = new wxStaticText( sbSizer38->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); KeySizeStaticText->Wrap( -1 ); + bSizer135->Add( KeySizeStaticText, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 ); - - + + sbSizer38->Add( bSizer135, 0, wxEXPAND, 5 ); - - + + bSizer133->Add( sbSizer38, 0, wxEXPAND|wxALL, 5 ); - + wxStaticBoxSizer* sbSizer39; - sbSizer39 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("XTS mode") ), wxVERTICAL ); - + sbSizer39 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_XTS_MODE") ), wxVERTICAL ); + wxStaticText* m_staticText45; - m_staticText45 = new wxStaticText( this, wxID_ANY, _("Secondary key (hexadecimal)"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText45 = new wxStaticText( sbSizer39->GetStaticBox(), wxID_ANY, _("IDT_SECONDARY_KEY"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText45->Wrap( -1 ); + sbSizer39->Add( m_staticText45, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); - - SecondaryKeyTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - SecondaryKeyTextCtrl->SetMaxLength( 0 ); - SecondaryKeyTextCtrl->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier") ) ); - + + SecondaryKeyTextCtrl = new wxTextCtrl( sbSizer39->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + SecondaryKeyTextCtrl->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Courier") ) ); + sbSizer39->Add( SecondaryKeyTextCtrl, 0, wxEXPAND|wxALL, 5 ); - + wxStaticText* m_staticText46; - m_staticText46 = new wxStaticText( this, wxID_ANY, _("Data unit number (64-bit, data unit size is 512 bytes)"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText46 = new wxStaticText( sbSizer39->GetStaticBox(), wxID_ANY, _("IDT_TEST_DATA_UNIT_NUMBER"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText46->Wrap( -1 ); + sbSizer39->Add( m_staticText46, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); - - DataUnitNumberTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - DataUnitNumberTextCtrl->SetMaxLength( 0 ); + + DataUnitNumberTextCtrl = new wxTextCtrl( sbSizer39->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); sbSizer39->Add( DataUnitNumberTextCtrl, 0, wxALL, 5 ); - + wxStaticText* m_staticText47; - m_staticText47 = new wxStaticText( this, wxID_ANY, _("Block number:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText47 = new wxStaticText( sbSizer39->GetStaticBox(), wxID_ANY, _("IDT_TEST_BLOCK_NUMBER"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText47->Wrap( -1 ); + sbSizer39->Add( m_staticText47, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); - - BlockNumberTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - BlockNumberTextCtrl->SetMaxLength( 0 ); + + BlockNumberTextCtrl = new wxTextCtrl( sbSizer39->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); sbSizer39->Add( BlockNumberTextCtrl, 0, wxALL, 5 ); - - + + bSizer133->Add( sbSizer39, 1, wxEXPAND|wxALL, 5 ); - + wxStaticBoxSizer* sbSizer40; - sbSizer40 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Plaintext (hexadecimal)") ), wxVERTICAL ); - - PlainTextTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - PlainTextTextCtrl->SetMaxLength( 0 ); - PlainTextTextCtrl->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier") ) ); - + sbSizer40 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_TEST_PLAINTEXT") ), wxVERTICAL ); + + PlainTextTextCtrl = new wxTextCtrl( sbSizer40->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + PlainTextTextCtrl->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Courier") ) ); + sbSizer40->Add( PlainTextTextCtrl, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer133->Add( sbSizer40, 0, wxEXPAND|wxALL, 5 ); - + wxStaticBoxSizer* sbSizer41; - sbSizer41 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Ciphertext (hexadecimal)") ), wxVERTICAL ); - - CipherTextTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - CipherTextTextCtrl->SetMaxLength( 0 ); - CipherTextTextCtrl->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier") ) ); - + sbSizer41 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_TEST_CIPHERTEXT") ), wxVERTICAL ); + + CipherTextTextCtrl = new wxTextCtrl( sbSizer41->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + CipherTextTextCtrl->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Courier") ) ); + sbSizer41->Add( CipherTextTextCtrl, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer133->Add( sbSizer41, 0, wxEXPAND|wxALL, 5 ); - + wxBoxSizer* bSizer136; bSizer136 = new wxBoxSizer( wxHORIZONTAL ); - - EncryptButton = new wxButton( this, wxID_ANY, _("&Encrypt"), wxDefaultPosition, wxDefaultSize, 0 ); + + EncryptButton = new wxButton( this, wxID_ANY, _("ENCRYPT"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer136->Add( EncryptButton, 0, wxALL, 5 ); - - DecryptButton = new wxButton( this, wxID_ANY, _("&Decrypt"), wxDefaultPosition, wxDefaultSize, 0 ); + + DecryptButton = new wxButton( this, wxID_ANY, _("DECRYPT"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer136->Add( DecryptButton, 0, wxALL, 5 ); - - AutoTestAllButton = new wxButton( this, wxID_ANY, _("&Auto-Test All"), wxDefaultPosition, wxDefaultSize, 0 ); + + AutoTestAllButton = new wxButton( this, wxID_ANY, _("IDC_AUTO"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer136->Add( AutoTestAllButton, 0, wxALL, 5 ); - - ResetButton = new wxButton( this, wxID_ANY, _("&Reset"), wxDefaultPosition, wxDefaultSize, 0 ); + + ResetButton = new wxButton( this, wxID_ANY, _("IDC_RESET"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer136->Add( ResetButton, 0, wxALL, 5 ); - - CloseButton = new wxButton( this, wxID_CANCEL, _("Close"), wxDefaultPosition, wxDefaultSize, 0 ); + + CloseButton = new wxButton( this, wxID_CANCEL, _("IDCLOSE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer136->Add( CloseButton, 0, wxALL, 5 ); - - + + bSizer133->Add( bSizer136, 0, wxEXPAND, 5 ); - - + + bSizer132->Add( bSizer133, 1, wxEXPAND|wxALL, 5 ); - - + + this->SetSizer( bSizer132 ); this->Layout(); bSizer132->Fit( this ); - + // Connect Events EncryptionAlgorithmChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( EncryptionTestDialogBase::OnEncryptionAlgorithmSelected ), NULL, this ); XtsModeCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( EncryptionTestDialogBase::OnXtsModeCheckBoxClick ), NULL, this ); @@ -1157,79 +1176,80 @@ EncryptionTestDialogBase::~EncryptionTestDialogBase() DecryptButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( EncryptionTestDialogBase::OnDecryptButtonClick ), NULL, this ); AutoTestAllButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( EncryptionTestDialogBase::OnAutoTestAllButtonClick ), NULL, this ); ResetButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( EncryptionTestDialogBase::OnResetButtonClick ), NULL, this ); - + } FavoriteVolumesDialogBase::FavoriteVolumesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + wxBoxSizer* bSizer57; bSizer57 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer60; bSizer60 = new wxBoxSizer( wxHORIZONTAL ); - + wxBoxSizer* bSizer58; bSizer58 = new wxBoxSizer( wxVERTICAL ); - + FavoritesListCtrl = new wxListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_VRULES|wxSUNKEN_BORDER ); bSizer58->Add( FavoritesListCtrl, 1, wxALL|wxEXPAND, 5 ); - + wxGridSizer* gSizer5; gSizer5 = new wxGridSizer( 1, 4, 0, 0 ); - - MoveUpButton = new wxButton( this, wxID_ANY, _("Move &Up"), wxDefaultPosition, wxDefaultSize, 0 ); + + MoveUpButton = new wxButton( this, wxID_ANY, _("IDC_FAVORITE_MOVE_UP"), wxDefaultPosition, wxDefaultSize, 0 ); gSizer5->Add( MoveUpButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT, 5 ); - - MoveDownButton = new wxButton( this, wxID_ANY, _("Move &Down"), wxDefaultPosition, wxDefaultSize, 0 ); + + MoveDownButton = new wxButton( this, wxID_ANY, _("IDC_FAVORITE_MOVE_DOWN"), wxDefaultPosition, wxDefaultSize, 0 ); gSizer5->Add( MoveDownButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxRIGHT, 5 ); - - RemoveButton = new wxButton( this, wxID_ANY, _("&Remove"), wxDefaultPosition, wxDefaultSize, 0 ); + + RemoveButton = new wxButton( this, wxID_ANY, _("IDC_KEYREMOVE"), wxDefaultPosition, wxDefaultSize, 0 ); gSizer5->Add( RemoveButton, 0, wxALIGN_RIGHT|wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - RemoveAllButton = new wxButton( this, wxID_ANY, _("Remove &All"), wxDefaultPosition, wxDefaultSize, 0 ); + + RemoveAllButton = new wxButton( this, wxID_ANY, _("IDC_KEYREMOVEALL"), wxDefaultPosition, wxDefaultSize, 0 ); gSizer5->Add( RemoveAllButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - + + bSizer58->Add( gSizer5, 0, wxEXPAND|wxRIGHT|wxLEFT, 5 ); - + wxFlexGridSizer* fgSizer4; fgSizer4 = new wxFlexGridSizer( 1, 5, 0, 0 ); fgSizer4->AddGrowableCol( 2 ); fgSizer4->SetFlexibleDirection( wxBOTH ); fgSizer4->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - - + + fgSizer4->Add( 0, 0, 1, wxEXPAND, 5 ); - - + + bSizer58->Add( fgSizer4, 0, wxEXPAND, 5 ); - - + + bSizer60->Add( bSizer58, 1, wxEXPAND, 5 ); - + wxBoxSizer* bSizer59; bSizer59 = new wxBoxSizer( wxVERTICAL ); - - OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 ); + + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); OKButton->SetDefault(); + bSizer59->Add( OKButton, 0, wxALL, 5 ); - - CancelButton = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 ); + + CancelButton = new wxButton( this, wxID_CANCEL, _("IDCANCEL"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer59->Add( CancelButton, 0, wxALL, 5 ); - - + + bSizer60->Add( bSizer59, 0, wxEXPAND, 5 ); - - + + bSizer57->Add( bSizer60, 1, wxEXPAND|wxALL, 5 ); - - + + this->SetSizer( bSizer57 ); this->Layout(); bSizer57->Fit( this ); - + // Connect Events FavoritesListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( FavoriteVolumesDialogBase::OnListItemDeselected ), NULL, this ); FavoritesListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( FavoriteVolumesDialogBase::OnListItemSelected ), NULL, this ); @@ -1250,91 +1270,94 @@ FavoriteVolumesDialogBase::~FavoriteVolumesDialogBase() RemoveButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnRemoveButtonClick ), NULL, this ); RemoveAllButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnRemoveAllButtonClick ), NULL, this ); OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( FavoriteVolumesDialogBase::OnOKButtonClick ), NULL, this ); - + } KeyfilesDialogBase::KeyfilesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - this->SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); - + this->SetExtraStyle( this->GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); + wxBoxSizer* bSizer26; bSizer26 = new wxBoxSizer( wxVERTICAL ); - + UpperSizer = new wxBoxSizer( wxHORIZONTAL ); - + PanelSizer = new wxBoxSizer( wxVERTICAL ); - - + + UpperSizer->Add( PanelSizer, 1, wxEXPAND, 5 ); - + wxBoxSizer* bSizer22; bSizer22 = new wxBoxSizer( wxVERTICAL ); - - OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 ); + + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); OKButton->SetDefault(); + bSizer22->Add( OKButton, 0, wxALL|wxEXPAND, 5 ); - - CancelButton = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 ); + + CancelButton = new wxButton( this, wxID_CANCEL, _("IDCANCEL"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer22->Add( CancelButton, 0, wxALL|wxEXPAND, 5 ); - + WarningStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); WarningStaticText->Wrap( -1 ); + bSizer22->Add( WarningStaticText, 1, wxALL|wxEXPAND, 5 ); - - + + UpperSizer->Add( bSizer22, 0, wxEXPAND, 5 ); - - + + bSizer26->Add( UpperSizer, 1, wxTOP|wxRIGHT|wxLEFT, 5 ); - + wxBoxSizer* bSizer23; bSizer23 = new wxBoxSizer( wxVERTICAL ); - + KeyfilesNoteSizer = new wxBoxSizer( wxVERTICAL ); - + wxStaticLine* m_staticline1; m_staticline1 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL ); KeyfilesNoteSizer->Add( m_staticline1, 0, wxEXPAND | wxALL, 5 ); - + KeyfilesNoteStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); KeyfilesNoteStaticText->Wrap( -1 ); + KeyfilesNoteSizer->Add( KeyfilesNoteStaticText, 0, wxALL|wxEXPAND, 5 ); - + wxStaticLine* m_staticline2; m_staticline2 = new wxStaticLine( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL ); KeyfilesNoteSizer->Add( m_staticline2, 0, wxEXPAND | wxALL, 5 ); - - + + bSizer23->Add( KeyfilesNoteSizer, 1, wxEXPAND, 5 ); - + wxFlexGridSizer* fgSizer2; fgSizer2 = new wxFlexGridSizer( 1, 2, 0, 0 ); fgSizer2->AddGrowableCol( 0 ); fgSizer2->SetFlexibleDirection( wxBOTH ); fgSizer2->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - - KeyfilesHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, _("More information on keyfiles"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE ); - + + KeyfilesHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, _("IDC_LINK_KEYFILES_INFO"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE ); + KeyfilesHyperlink->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); KeyfilesHyperlink->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); KeyfilesHyperlink->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); fgSizer2->Add( KeyfilesHyperlink, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - CreateKeyfileButtton = new wxButton( this, wxID_ANY, _("&Generate Random Keyfile..."), wxDefaultPosition, wxDefaultSize, 0 ); + + CreateKeyfileButtton = new wxButton( this, wxID_ANY, _("IDC_GENERATE_KEYFILE"), wxDefaultPosition, wxDefaultSize, 0 ); fgSizer2->Add( CreateKeyfileButtton, 0, wxALL, 5 ); - - + + bSizer23->Add( fgSizer2, 0, wxEXPAND, 5 ); - - + + bSizer26->Add( bSizer23, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - - + + this->SetSizer( bSizer26 ); this->Layout(); bSizer26->Fit( this ); - + // Connect Events KeyfilesHyperlink->Connect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( KeyfilesDialogBase::OnKeyfilesHyperlinkClick ), NULL, this ); CreateKeyfileButtton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesDialogBase::OnCreateKeyfileButttonClick ), NULL, this ); @@ -1345,158 +1368,165 @@ KeyfilesDialogBase::~KeyfilesDialogBase() // Disconnect Events KeyfilesHyperlink->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( KeyfilesDialogBase::OnKeyfilesHyperlinkClick ), NULL, this ); CreateKeyfileButtton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesDialogBase::OnCreateKeyfileButttonClick ), NULL, this ); - + } KeyfileGeneratorDialogBase::KeyfileGeneratorDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + MainSizer = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer144; bSizer144 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer145; bSizer145 = new wxBoxSizer( wxHORIZONTAL ); - - + + bSizer145->Add( 0, 0, 1, wxEXPAND, 5 ); - + wxStaticText* m_staticText49; - m_staticText49 = new wxStaticText( this, wxID_ANY, _("Mixing PRF:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText49 = new wxStaticText( this, wxID_ANY, _("IDT_PRF"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText49->Wrap( -1 ); + bSizer145->Add( m_staticText49, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - + wxArrayString HashChoiceChoices; HashChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, HashChoiceChoices, 0 ); HashChoice->SetSelection( 0 ); bSizer145->Add( HashChoice, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer145->Add( 0, 0, 1, wxEXPAND, 5 ); - - + + bSizer144->Add( bSizer145, 0, wxEXPAND, 5 ); - + wxStaticBoxSizer* sbSizer43; sbSizer43 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxEmptyString ), wxVERTICAL ); - + wxBoxSizer* bSizer147; bSizer147 = new wxBoxSizer( wxHORIZONTAL ); - + wxStaticText* m_staticText52; - m_staticText52 = new wxStaticText( this, wxID_ANY, _("Random Pool:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText52 = new wxStaticText( sbSizer43->GetStaticBox(), wxID_ANY, _("IDT_RANDOM_POOL"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText52->Wrap( -1 ); + bSizer147->Add( m_staticText52, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - - RandomPoolStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + + RandomPoolStaticText = new wxStaticText( sbSizer43->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); RandomPoolStaticText->Wrap( -1 ); - RandomPoolStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier New") ) ); - + + RandomPoolStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Courier New") ) ); + bSizer147->Add( RandomPoolStaticText, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - ShowRandomPoolCheckBox = new wxCheckBox( this, wxID_ANY, _("Show"), wxDefaultPosition, wxDefaultSize, 0 ); + + ShowRandomPoolCheckBox = new wxCheckBox( sbSizer43->GetStaticBox(), wxID_ANY, _("IDC_DISPLAY_POOL_CONTENTS"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer147->Add( ShowRandomPoolCheckBox, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - + + sbSizer43->Add( bSizer147, 0, wxEXPAND|wxTOP, 5 ); - - + + sbSizer43->Add( 0, 0, 1, wxEXPAND, 5 ); - + wxStaticBoxSizer* sbSizer45; - sbSizer45 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Randomness Collected From Mouse Movements") ), wxVERTICAL ); - - CollectedEntropy = new wxGauge( this, wxID_ANY, 2560, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH ); - CollectedEntropy->SetValue( 0 ); + sbSizer45 = new wxStaticBoxSizer( new wxStaticBox( sbSizer43->GetStaticBox(), wxID_ANY, _("IDT_ENTROPY_BAR") ), wxVERTICAL ); + + CollectedEntropy = new wxGauge( sbSizer45->GetStaticBox(), wxID_ANY, 2560, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH ); + CollectedEntropy->SetValue( 0 ); sbSizer45->Add( CollectedEntropy, 1, wxALL|wxEXPAND, 5 ); - - + + sbSizer43->Add( sbSizer45, 0, wxBOTTOM|wxEXPAND|wxTOP, 5 ); - - + + sbSizer43->Add( 0, 0, 1, wxEXPAND, 5 ); - - MouseStaticText = new wxStaticText( this, wxID_ANY, _("IMPORTANT: Move your mouse as randomly as possible within this window. The longer you move it, the better. This significantly increases the cryptographic strength of the keyfile."), wxDefaultPosition, wxDefaultSize, 0 ); + + MouseStaticText = new wxStaticText( sbSizer43->GetStaticBox(), wxID_ANY, _("IDT_KEYFILE_GENERATOR_NOTE"), wxDefaultPosition, wxDefaultSize, 0 ); MouseStaticText->Wrap( -1 ); + sbSizer43->Add( MouseStaticText, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 ); - - + + sbSizer43->Add( 0, 0, 1, wxEXPAND, 5 ); - - + + bSizer144->Add( sbSizer43, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - + wxBoxSizer* bSizer162; bSizer162 = new wxBoxSizer( wxVERTICAL ); - + wxFlexGridSizer* fgSizer8; fgSizer8 = new wxFlexGridSizer( 3, 3, 0, 0 ); fgSizer8->AddGrowableCol( 2 ); fgSizer8->SetFlexibleDirection( wxBOTH ); fgSizer8->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - - m_staticText60 = new wxStaticText( this, wxID_ANY, _("Number of keyfiles:"), wxDefaultPosition, wxDefaultSize, 0 ); + + m_staticText60 = new wxStaticText( this, wxID_ANY, _("IDT_NUMBER_KEYFILES"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText60->Wrap( -1 ); + fgSizer8->Add( m_staticText60, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - + NumberOfKeyfiles = new wxSpinCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 1, 9999999, 1 ); fgSizer8->Add( NumberOfKeyfiles, 0, wxALL, 5 ); - + m_panel18 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); fgSizer8->Add( m_panel18, 1, wxEXPAND | wxALL, 5 ); - - m_staticText63 = new wxStaticText( this, wxID_ANY, _("Keyfiles size (in Bytes):"), wxDefaultPosition, wxDefaultSize, 0 ); + + m_staticText63 = new wxStaticText( this, wxID_ANY, _("IDT_KEYFILES_SIZE"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText63->Wrap( -1 ); + fgSizer8->Add( m_staticText63, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - + KeyfilesSize = new wxSpinCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS, 64, 1048576, 64 ); fgSizer8->Add( KeyfilesSize, 0, wxALL, 5 ); - - RandomSizeCheckBox = new wxCheckBox( this, wxID_ANY, _("Random size (64 <-> 1048576)"), wxDefaultPosition, wxDefaultSize, 0 ); + + RandomSizeCheckBox = new wxCheckBox( this, wxID_ANY, _("IDC_KEYFILES_RANDOM_SIZE"), wxDefaultPosition, wxDefaultSize, 0 ); fgSizer8->Add( RandomSizeCheckBox, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - - m_staticText65 = new wxStaticText( this, wxID_ANY, _("Keyfiles base name:"), wxDefaultPosition, wxDefaultSize, 0 ); + + m_staticText65 = new wxStaticText( this, wxID_ANY, _("IDT_KEYFILES_BASE_NAME"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText65->Wrap( -1 ); + fgSizer8->Add( m_staticText65, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - + KeyfilesBaseName = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); fgSizer8->Add( KeyfilesBaseName, 0, wxALL, 5 ); - + m_panel19 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); fgSizer8->Add( m_panel19, 1, wxEXPAND | wxALL, 5 ); - - + + bSizer162->Add( fgSizer8, 1, wxEXPAND, 5 ); - - - bSizer144->Add( bSizer162, 0, wxALL|wxEXPAND, 5 ); - + + + bSizer144->Add( bSizer162, 1, wxALL|wxEXPAND, 5 ); + wxBoxSizer* bSizer146; bSizer146 = new wxBoxSizer( wxHORIZONTAL ); - - GenerateButton = new wxButton( this, wxID_ANY, _("Generate and Save Keyfile..."), wxDefaultPosition, wxDefaultSize, 0 ); + + GenerateButton = new wxButton( this, wxID_ANY, _("IDC_GENERATE_AND_SAVE_KEYFILE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer146->Add( GenerateButton, 0, wxALL, 5 ); - - + + bSizer146->Add( 0, 0, 1, wxEXPAND, 5 ); - + wxButton* m_button61; - m_button61 = new wxButton( this, wxID_CANCEL, _("Close"), wxDefaultPosition, wxDefaultSize, 0 ); + m_button61 = new wxButton( this, wxID_CANCEL, _("IDCLOSE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer146->Add( m_button61, 0, wxALL, 5 ); - - + + bSizer144->Add( bSizer146, 0, wxEXPAND, 5 ); - - + + MainSizer->Add( bSizer144, 1, wxEXPAND|wxALL, 5 ); - - + + this->SetSizer( MainSizer ); this->Layout(); MainSizer->Fit( this ); - + // Connect Events this->Connect( wxEVT_MOTION, wxMouseEventHandler( KeyfileGeneratorDialogBase::OnMouseMotion ) ); HashChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( KeyfileGeneratorDialogBase::OnHashSelected ), NULL, this ); @@ -1513,31 +1543,32 @@ KeyfileGeneratorDialogBase::~KeyfileGeneratorDialogBase() ShowRandomPoolCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( KeyfileGeneratorDialogBase::OnShowRandomPoolCheckBoxClicked ), NULL, this ); RandomSizeCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( KeyfileGeneratorDialogBase::OnRandomSizeCheckBoxClicked ), NULL, this ); GenerateButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfileGeneratorDialogBase::OnGenerateButtonClick ), NULL, this ); - + } LegalNoticesDialogBase::LegalNoticesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + wxBoxSizer* bSizer114; bSizer114 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer115; bSizer115 = new wxBoxSizer( wxVERTICAL ); - + LegalNoticesTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE|wxTE_READONLY ); bSizer115->Add( LegalNoticesTextCtrl, 1, wxALL|wxEXPAND, 5 ); - + wxButton* OKButton; - OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 ); + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); OKButton->SetDefault(); + bSizer115->Add( OKButton, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 ); - - + + bSizer114->Add( bSizer115, 1, wxEXPAND|wxALL, 5 ); - - + + this->SetSizer( bSizer114 ); this->Layout(); bSizer114->Fit( this ); @@ -1550,167 +1581,168 @@ LegalNoticesDialogBase::~LegalNoticesDialogBase() MountOptionsDialogBase::MountOptionsDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - this->SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); - + this->SetExtraStyle( this->GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); + MainSizer = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer19; bSizer19 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer14; bSizer14 = new wxBoxSizer( wxHORIZONTAL ); - + PasswordSizer = new wxBoxSizer( wxVERTICAL ); - - + + bSizer14->Add( PasswordSizer, 1, wxEXPAND, 5 ); - + wxBoxSizer* bSizer9; bSizer9 = new wxBoxSizer( wxVERTICAL ); - - OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 ); + + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); OKButton->SetDefault(); + bSizer9->Add( OKButton, 0, wxALL|wxEXPAND, 5 ); - - CancelButton = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 ); + + CancelButton = new wxButton( this, wxID_CANCEL, _("IDCANCEL"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer9->Add( CancelButton, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer9->Add( 0, 0, 1, wxTOP|wxEXPAND, 5 ); - - OptionsButton = new wxButton( this, wxID_ANY, _("Op&tions"), wxDefaultPosition, wxDefaultSize, 0 ); + + OptionsButton = new wxButton( this, wxID_ANY, _("IDT_FORMAT_OPTIONS"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer9->Add( OptionsButton, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer14->Add( bSizer9, 0, wxEXPAND, 5 ); - - + + bSizer19->Add( bSizer14, 0, wxEXPAND|wxALL, 5 ); - + wxBoxSizer* bSizer6; bSizer6 = new wxBoxSizer( wxVERTICAL ); - + OptionsPanel = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); OptionsSizer = new wxStaticBoxSizer( new wxStaticBox( OptionsPanel, wxID_ANY, wxEmptyString ), wxVERTICAL ); - - + + OptionsSizer->Add( 0, 0, 0, wxTOP, 5 ); - - ReadOnlyCheckBox = new wxCheckBox( OptionsPanel, wxID_ANY, _("Mount volume as &read-only"), wxDefaultPosition, wxDefaultSize, 0 ); + + ReadOnlyCheckBox = new wxCheckBox( OptionsSizer->GetStaticBox(), wxID_ANY, _("IDC_MOUNT_READONLY"), wxDefaultPosition, wxDefaultSize, 0 ); OptionsSizer->Add( ReadOnlyCheckBox, 0, wxALL, 5 ); - - RemovableCheckBox = new wxCheckBox( OptionsPanel, wxID_ANY, _("Mount volume as removable &medium"), wxDefaultPosition, wxDefaultSize, 0 ); + + RemovableCheckBox = new wxCheckBox( OptionsSizer->GetStaticBox(), wxID_ANY, _("IDC_MOUNT_REMOVABLE"), wxDefaultPosition, wxDefaultSize, 0 ); OptionsSizer->Add( RemovableCheckBox, 0, wxALL, 5 ); - - BackupHeaderCheckBox = new wxCheckBox( OptionsPanel, wxID_ANY, _("Use backup header embedded in &volume if available"), wxDefaultPosition, wxDefaultSize, 0 ); + + BackupHeaderCheckBox = new wxCheckBox( OptionsSizer->GetStaticBox(), wxID_ANY, _("IDC_USE_EMBEDDED_HEADER_BAK"), wxDefaultPosition, wxDefaultSize, 0 ); OptionsSizer->Add( BackupHeaderCheckBox, 0, wxALL, 5 ); - - PartitionInSystemEncryptionScopeCheckBox = new wxCheckBox( OptionsPanel, wxID_ANY, _("Mount partition &using system encryption (preboot authentication)"), wxDefaultPosition, wxDefaultSize, 0 ); + + PartitionInSystemEncryptionScopeCheckBox = new wxCheckBox( OptionsSizer->GetStaticBox(), wxID_ANY, _("LINUX_MOUNT_SYSTEM_ENC_PREBOOT"), wxDefaultPosition, wxDefaultSize, 0 ); OptionsSizer->Add( PartitionInSystemEncryptionScopeCheckBox, 0, wxALL, 5 ); - - ProtectionSizer = new wxStaticBoxSizer( new wxStaticBox( OptionsPanel, wxID_ANY, _("Hidden Volume Protection") ), wxVERTICAL ); - - ProtectionCheckBox = new wxCheckBox( OptionsPanel, wxID_ANY, _("&Protect hidden volume when mounting outer volume"), wxDefaultPosition, wxDefaultSize, 0 ); + + ProtectionSizer = new wxStaticBoxSizer( new wxStaticBox( OptionsSizer->GetStaticBox(), wxID_ANY, _("IDT_HIDDEN_VOL_PROTECTION") ), wxVERTICAL ); + + ProtectionCheckBox = new wxCheckBox( ProtectionSizer->GetStaticBox(), wxID_ANY, _("IDC_PROTECT_HIDDEN_VOL"), wxDefaultPosition, wxDefaultSize, 0 ); ProtectionSizer->Add( ProtectionCheckBox, 0, wxALL, 5 ); - + ProtectionPasswordSizer = new wxBoxSizer( wxVERTICAL ); - - + + ProtectionSizer->Add( ProtectionPasswordSizer, 1, wxEXPAND|wxLEFT, 5 ); - - ProtectionHyperlinkCtrl = new wxHyperlinkCtrl( OptionsPanel, wxID_ANY, _("What is hidden volume protection?"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE ); - + + ProtectionHyperlinkCtrl = new wxHyperlinkCtrl( ProtectionSizer->GetStaticBox(), wxID_ANY, _("IDC_LINK_HIDVOL_PROTECTION_INFO"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE ); + ProtectionHyperlinkCtrl->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); ProtectionHyperlinkCtrl->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); ProtectionHyperlinkCtrl->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); ProtectionSizer->Add( ProtectionHyperlinkCtrl, 0, wxALL, 5 ); - - + + OptionsSizer->Add( ProtectionSizer, 1, wxEXPAND|wxALL, 5 ); - + FilesystemSizer = new wxBoxSizer( wxVERTICAL ); - - m_panel8 = new wxPanel( OptionsPanel, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); + + m_panel8 = new wxPanel( OptionsSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxStaticBoxSizer* sbSizer28; - sbSizer28 = new wxStaticBoxSizer( new wxStaticBox( m_panel8, wxID_ANY, _("Filesystem") ), wxVERTICAL ); - + sbSizer28 = new wxStaticBoxSizer( new wxStaticBox( m_panel8, wxID_ANY, _("IDT_FILESYSTEM") ), wxVERTICAL ); + wxBoxSizer* bSizer54; bSizer54 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer55; bSizer55 = new wxBoxSizer( wxVERTICAL ); - - NoFilesystemCheckBox = new wxCheckBox( m_panel8, wxID_ANY, _("Do ¬ mount"), wxDefaultPosition, wxDefaultSize, 0 ); + + NoFilesystemCheckBox = new wxCheckBox( sbSizer28->GetStaticBox(), wxID_ANY, _("LINUX_DO_NOT_MOUNT"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer55->Add( NoFilesystemCheckBox, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); - - + + bSizer54->Add( bSizer55, 1, wxEXPAND, 5 ); - + FilesystemOptionsSizer = new wxGridBagSizer( 0, 0 ); FilesystemOptionsSizer->SetFlexibleDirection( wxBOTH ); FilesystemOptionsSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); FilesystemOptionsSizer->SetEmptyCellSize( wxSize( 0,0 ) ); - + FilesystemSpacer = new wxBoxSizer( wxVERTICAL ); - - + + FilesystemOptionsSizer->Add( FilesystemSpacer, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP, 5 ); - - MountPointTextCtrlStaticText = new wxStaticText( m_panel8, wxID_ANY, _("Mount at directory:"), wxDefaultPosition, wxDefaultSize, 0 ); + + MountPointTextCtrlStaticText = new wxStaticText( sbSizer28->GetStaticBox(), wxID_ANY, _("LINUX_MOUNT_AT_DIR"), wxDefaultPosition, wxDefaultSize, 0 ); MountPointTextCtrlStaticText->Wrap( -1 ); + FilesystemOptionsSizer->Add( MountPointTextCtrlStaticText, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - MountPointTextCtrl = new wxTextCtrl( m_panel8, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - MountPointTextCtrl->SetMaxLength( 0 ); + + MountPointTextCtrl = new wxTextCtrl( sbSizer28->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); FilesystemOptionsSizer->Add( MountPointTextCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 ); - - MountPointButton = new wxButton( m_panel8, wxID_ANY, _("Se&lect..."), wxDefaultPosition, wxDefaultSize, 0 ); + + MountPointButton = new wxButton( sbSizer28->GetStaticBox(), wxID_ANY, _("LINUX_SELECT"), wxDefaultPosition, wxDefaultSize, 0 ); FilesystemOptionsSizer->Add( MountPointButton, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 ); - - FilesystemOptionsStaticText = new wxStaticText( m_panel8, wxID_ANY, _("Mount options:"), wxDefaultPosition, wxDefaultSize, 0 ); + + FilesystemOptionsStaticText = new wxStaticText( sbSizer28->GetStaticBox(), wxID_ANY, _("IDT_LINUX_PREF_TAB_MOUNT_OPTIONS"), wxDefaultPosition, wxDefaultSize, 0 ); FilesystemOptionsStaticText->Wrap( -1 ); + FilesystemOptionsSizer->Add( FilesystemOptionsStaticText, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxLEFT, 5 ); - - FilesystemOptionsTextCtrl = new wxTextCtrl( m_panel8, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - FilesystemOptionsTextCtrl->SetMaxLength( 0 ); + + FilesystemOptionsTextCtrl = new wxTextCtrl( sbSizer28->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); FilesystemOptionsSizer->Add( FilesystemOptionsTextCtrl, wxGBPosition( 2, 1 ), wxGBSpan( 1, 2 ), wxALIGN_CENTER_VERTICAL|wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 5 ); - - + + FilesystemOptionsSizer->AddGrowableCol( 1 ); - + bSizer54->Add( FilesystemOptionsSizer, 0, wxEXPAND, 5 ); - - + + sbSizer28->Add( bSizer54, 0, wxEXPAND|wxBOTTOM, 5 ); - - + + m_panel8->SetSizer( sbSizer28 ); m_panel8->Layout(); sbSizer28->Fit( m_panel8 ); FilesystemSizer->Add( m_panel8, 0, wxEXPAND | wxALL, 5 ); - - + + OptionsSizer->Add( FilesystemSizer, 0, wxEXPAND, 5 ); - - + + OptionsPanel->SetSizer( OptionsSizer ); OptionsPanel->Layout(); OptionsSizer->Fit( OptionsPanel ); bSizer6->Add( OptionsPanel, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - - + + bSizer19->Add( bSizer6, 0, wxEXPAND, 5 ); - - + + MainSizer->Add( bSizer19, 1, wxEXPAND, 5 ); - - + + this->SetSizer( MainSizer ); this->Layout(); MainSizer->Fit( this ); - + this->Centre( wxBOTH ); - + // Connect Events this->Connect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( MountOptionsDialogBase::OnInitDialog ) ); OKButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnOKButtonClick ), NULL, this ); @@ -1733,550 +1765,571 @@ MountOptionsDialogBase::~MountOptionsDialogBase() ProtectionHyperlinkCtrl->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( MountOptionsDialogBase::OnProtectionHyperlinkClick ), NULL, this ); NoFilesystemCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnNoFilesystemCheckBoxClick ), NULL, this ); MountPointButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( MountOptionsDialogBase::OnMountPointButtonClick ), NULL, this ); - + } NewSecurityTokenKeyfileDialogBase::NewSecurityTokenKeyfileDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + wxBoxSizer* bSizer143; bSizer143 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer144; bSizer144 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer42; sbSizer42 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxEmptyString ), wxVERTICAL ); - + wxFlexGridSizer* fgSizer7; fgSizer7 = new wxFlexGridSizer( 2, 2, 0, 0 ); fgSizer7->SetFlexibleDirection( wxBOTH ); fgSizer7->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - + wxStaticText* m_staticText47; - m_staticText47 = new wxStaticText( this, wxID_ANY, _("Security token:"), wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT ); + m_staticText47 = new wxStaticText( sbSizer42->GetStaticBox(), wxID_ANY, _("IDT_SECURITY_TOKEN"), wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT ); m_staticText47->Wrap( -1 ); + fgSizer7->Add( m_staticText47, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 ); - + wxArrayString SecurityTokenChoiceChoices; - SecurityTokenChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, SecurityTokenChoiceChoices, 0 ); + SecurityTokenChoice = new wxChoice( sbSizer42->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, SecurityTokenChoiceChoices, 0 ); SecurityTokenChoice->SetSelection( 0 ); fgSizer7->Add( SecurityTokenChoice, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 ); - + wxStaticText* m_staticText48; - m_staticText48 = new wxStaticText( this, wxID_ANY, _("Keyfile name:"), wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT ); + m_staticText48 = new wxStaticText( sbSizer42->GetStaticBox(), wxID_ANY, _("IDT_TOKEN_KEYFILE_NAME"), wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT ); m_staticText48->Wrap( -1 ); + fgSizer7->Add( m_staticText48, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - KeyfileNameTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - KeyfileNameTextCtrl->SetMaxLength( 0 ); + + KeyfileNameTextCtrl = new wxTextCtrl( sbSizer42->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); fgSizer7->Add( KeyfileNameTextCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxALL, 5 ); - - + + sbSizer42->Add( fgSizer7, 1, wxEXPAND|wxTOP, 5 ); - - + + bSizer144->Add( sbSizer42, 1, wxEXPAND|wxALL, 5 ); - - StdButtons = new wxStdDialogButtonSizer(); - StdButtonsOK = new wxButton( this, wxID_OK ); - StdButtons->AddButton( StdButtonsOK ); - StdButtonsCancel = new wxButton( this, wxID_CANCEL ); - StdButtons->AddButton( StdButtonsCancel ); - StdButtons->Realize(); - - bSizer144->Add( StdButtons, 0, wxALIGN_RIGHT|wxALL, 5 ); - - + + wxBoxSizer* bSizer167; + bSizer167 = new wxBoxSizer( wxHORIZONTAL ); + + + bSizer167->Add( 0, 0, 1, wxEXPAND, 5 ); + + CancelButton = new wxButton( this, wxID_CANCEL, _("IDCANCEL"), wxDefaultPosition, wxDefaultSize, 0 ); + bSizer167->Add( CancelButton, 0, wxALL, 5 ); + + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); + OKButton->SetDefault(); + + bSizer167->Add( OKButton, 0, wxALL, 5 ); + + + bSizer144->Add( bSizer167, 0, wxEXPAND, 5 ); + + bSizer143->Add( bSizer144, 1, wxEXPAND|wxALL, 5 ); - - + + this->SetSizer( bSizer143 ); this->Layout(); bSizer143->Fit( this ); - + // Connect Events KeyfileNameTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( NewSecurityTokenKeyfileDialogBase::OnKeyfileNameChanged ), NULL, this ); + OKButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( NewSecurityTokenKeyfileDialogBase::OnOKButtonClick ), NULL, this ); } NewSecurityTokenKeyfileDialogBase::~NewSecurityTokenKeyfileDialogBase() { // Disconnect Events KeyfileNameTextCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( NewSecurityTokenKeyfileDialogBase::OnKeyfileNameChanged ), NULL, this ); - + OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( NewSecurityTokenKeyfileDialogBase::OnOKButtonClick ), NULL, this ); + } PreferencesDialogBase::PreferencesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - this->SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); - - wxBoxSizer* bSizer32; + this->SetExtraStyle( this->GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); + bSizer32 = new wxBoxSizer( wxVERTICAL ); - - wxBoxSizer* bSizer41; - bSizer41 = new wxBoxSizer( wxVERTICAL ); - + + wxBoxSizer* bSizer178; + bSizer178 = new wxBoxSizer( wxVERTICAL ); + PreferencesNotebook = new wxNotebook( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, 0 ); SecurityPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer44; bSizer44 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer33; bSizer33 = new wxBoxSizer( wxVERTICAL ); - - AutoDismountSizer = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("Auto-Dismount") ), wxVERTICAL ); - + + AutoDismountSizer = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("IDT_AUTO_DISMOUNT") ), wxVERTICAL ); + wxStaticBoxSizer* sbSizer13; - sbSizer13 = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("Dismount All Volumes When") ), wxVERTICAL ); - - DismountOnLogOffCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("User logs off"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer13 = new wxStaticBoxSizer( new wxStaticBox( AutoDismountSizer->GetStaticBox(), wxID_ANY, _("LINUX_DISMOUNT_ALL_WHEN") ), wxVERTICAL ); + + DismountOnLogOffCheckBox = new wxCheckBox( sbSizer13->GetStaticBox(), wxID_ANY, _("IDC_PREF_DISMOUNT_LOGOFF"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer13->Add( DismountOnLogOffCheckBox, 0, wxALL, 5 ); - - DismountOnScreenSaverCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Screen saver is launched"), wxDefaultPosition, wxDefaultSize, 0 ); + + DismountOnScreenSaverCheckBox = new wxCheckBox( sbSizer13->GetStaticBox(), wxID_ANY, _("IDC_PREF_DISMOUNT_SCREENSAVER"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer13->Add( DismountOnScreenSaverCheckBox, 0, wxALL, 5 ); - - DismountOnPowerSavingCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("System is entering power saving mode"), wxDefaultPosition, wxDefaultSize, 0 ); + + DismountOnPowerSavingCheckBox = new wxCheckBox( sbSizer13->GetStaticBox(), wxID_ANY, _("LINUX_ENTERING_POVERSAWING"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer13->Add( DismountOnPowerSavingCheckBox, 0, wxALL, 5 ); - - + + AutoDismountSizer->Add( sbSizer13, 0, wxEXPAND|wxALL, 5 ); - + wxBoxSizer* bSizer34; bSizer34 = new wxBoxSizer( wxHORIZONTAL ); - - DismountOnInactivityCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Auto-dismount volume after no data has been read/written to it for"), wxDefaultPosition, wxDefaultSize, 0 ); + + DismountOnInactivityCheckBox = new wxCheckBox( AutoDismountSizer->GetStaticBox(), wxID_ANY, _("IDC_PREF_DISMOUNT_INACTIVE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer34->Add( DismountOnInactivityCheckBox, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - - DismountOnInactivitySpinCtrl = new wxSpinCtrl( SecurityPage, wxID_ANY, wxT("1"), wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 1, 9999, 1 ); + + DismountOnInactivitySpinCtrl = new wxSpinCtrl( AutoDismountSizer->GetStaticBox(), wxID_ANY, wxT("1"), wxDefaultPosition, wxSize( -1,-1 ), wxSP_ARROW_KEYS, 1, 9999, 1 ); DismountOnInactivitySpinCtrl->SetMinSize( wxSize( 60,-1 ) ); - + bSizer34->Add( DismountOnInactivitySpinCtrl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - + wxStaticText* m_staticText5; - m_staticText5 = new wxStaticText( SecurityPage, wxID_ANY, _("minutes"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText5 = new wxStaticText( AutoDismountSizer->GetStaticBox(), wxID_ANY, _("MINUTES"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText5->Wrap( -1 ); + bSizer34->Add( m_staticText5, 1, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 ); - - + + AutoDismountSizer->Add( bSizer34, 0, wxEXPAND, 5 ); - - ForceAutoDismountCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Force auto-dismount even if volume contains open files or directories"), wxDefaultPosition, wxDefaultSize, 0 ); + + ForceAutoDismountCheckBox = new wxCheckBox( AutoDismountSizer->GetStaticBox(), wxID_ANY, _("IDC_PREF_FORCE_AUTO_DISMOUNT"), wxDefaultPosition, wxDefaultSize, 0 ); AutoDismountSizer->Add( ForceAutoDismountCheckBox, 0, wxALL, 5 ); - - + + bSizer33->Add( AutoDismountSizer, 0, wxEXPAND|wxALL, 5 ); - - FilesystemSecuritySizer = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("Filesystem") ), wxVERTICAL ); - - PreserveTimestampsCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Preserve modification timestamp of file containers"), wxDefaultPosition, wxDefaultSize, 0 ); + + FilesystemSecuritySizer = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("LINUX_PREF_TAB_MOUNT_OPTIONS_FS") ), wxVERTICAL ); + + PreserveTimestampsCheckBox = new wxCheckBox( FilesystemSecuritySizer->GetStaticBox(), wxID_ANY, _("IDC_PRESERVE_TIMESTAMPS"), wxDefaultPosition, wxDefaultSize, 0 ); FilesystemSecuritySizer->Add( PreserveTimestampsCheckBox, 0, wxALL, 5 ); - - + + bSizer33->Add( FilesystemSecuritySizer, 0, wxEXPAND|wxALL, 5 ); - + wxStaticBoxSizer* sbSizer14; - sbSizer14 = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("Password Cache") ), wxVERTICAL ); - - WipeCacheOnCloseCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Wipe after VeraCrypt window has been closed"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer14 = new wxStaticBoxSizer( new wxStaticBox( SecurityPage, wxID_ANY, _("IDT_PW_CACHE_OPTIONS") ), wxVERTICAL ); + + WipeCacheOnCloseCheckBox = new wxCheckBox( sbSizer14->GetStaticBox(), wxID_ANY, _("IDC_PREF_WIPE_CACHE_ON_EXIT"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer14->Add( WipeCacheOnCloseCheckBox, 0, wxALL, 5 ); - - WipeCacheOnAutoDismountCheckBox = new wxCheckBox( SecurityPage, wxID_ANY, _("Wipe after volume has been auto-dismounted"), wxDefaultPosition, wxDefaultSize, 0 ); + + WipeCacheOnAutoDismountCheckBox = new wxCheckBox( sbSizer14->GetStaticBox(), wxID_ANY, _("IDC_PREF_WIPE_CACHE_ON_AUTODISMOUNT"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer14->Add( WipeCacheOnAutoDismountCheckBox, 0, wxALL, 5 ); - - + + bSizer33->Add( sbSizer14, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer44->Add( bSizer33, 1, wxEXPAND|wxALL, 5 ); - - + + SecurityPage->SetSizer( bSizer44 ); SecurityPage->Layout(); bSizer44->Fit( SecurityPage ); - PreferencesNotebook->AddPage( SecurityPage, _("Security"), true ); + PreferencesNotebook->AddPage( SecurityPage, _("LINUX_PREF_TAB_SECURITY"), true ); DefaultMountOptionsPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer46; bSizer46 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer35; bSizer35 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer15; - sbSizer15 = new wxStaticBoxSizer( new wxStaticBox( DefaultMountOptionsPage, wxID_ANY, _("Default Mount Options") ), wxVERTICAL ); - - MountReadOnlyCheckBox = new wxCheckBox( DefaultMountOptionsPage, wxID_ANY, _("Mount volumes as read-only"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer15 = new wxStaticBoxSizer( new wxStaticBox( DefaultMountOptionsPage, wxID_ANY, _("IDT_DEFAULT_MOUNT_OPTIONS") ), wxVERTICAL ); + + MountReadOnlyCheckBox = new wxCheckBox( sbSizer15->GetStaticBox(), wxID_ANY, _("IDC_PREF_MOUNT_READONLY"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer15->Add( MountReadOnlyCheckBox, 0, wxALL, 5 ); - - MountRemovableCheckBox = new wxCheckBox( DefaultMountOptionsPage, wxID_ANY, _("Mount volumes as removable media"), wxDefaultPosition, wxDefaultSize, 0 ); + + MountRemovableCheckBox = new wxCheckBox( sbSizer15->GetStaticBox(), wxID_ANY, _("IDC_PREF_MOUNT_REMOVABLE"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer15->Add( MountRemovableCheckBox, 0, wxALL, 5 ); - - CachePasswordsCheckBox = new wxCheckBox( DefaultMountOptionsPage, wxID_ANY, _("Cache passwords in memory"), wxDefaultPosition, wxDefaultSize, 0 ); + + CachePasswordsCheckBox = new wxCheckBox( sbSizer15->GetStaticBox(), wxID_ANY, _("IDC_TRAV_CACHE_PASSWORDS"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer15->Add( CachePasswordsCheckBox, 0, wxALL, 5 ); - - TrueCryptModeCheckBox = new wxCheckBox( DefaultMountOptionsPage, wxID_ANY, _("TrueCrypt Mode"), wxDefaultPosition, wxDefaultSize, 0 ); + + TrueCryptModeCheckBox = new wxCheckBox( sbSizer15->GetStaticBox(), wxID_ANY, _("IDC_TRUECRYPT_MODE"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer15->Add( TrueCryptModeCheckBox, 0, wxALL, 5 ); - + wxBoxSizer* bSizer163; bSizer163 = new wxBoxSizer( wxHORIZONTAL ); - - Pkcs5PrfStaticText = new wxStaticText( DefaultMountOptionsPage, wxID_ANY, _("PKCS5-PRF:"), wxDefaultPosition, wxDefaultSize, 0 ); + + Pkcs5PrfStaticText = new wxStaticText( sbSizer15->GetStaticBox(), wxID_ANY, _("PKCS5_PRF"), wxDefaultPosition, wxDefaultSize, 0 ); Pkcs5PrfStaticText->Wrap( -1 ); + bSizer163->Add( Pkcs5PrfStaticText, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - + wxArrayString Pkcs5PrfChoiceChoices; - Pkcs5PrfChoice = new wxChoice( DefaultMountOptionsPage, wxID_ANY, wxDefaultPosition, wxDefaultSize, Pkcs5PrfChoiceChoices, 0 ); + Pkcs5PrfChoice = new wxChoice( sbSizer15->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, Pkcs5PrfChoiceChoices, 0 ); Pkcs5PrfChoice->SetSelection( 0 ); bSizer163->Add( Pkcs5PrfChoice, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - - + + sbSizer15->Add( bSizer163, 0, wxEXPAND, 5 ); - - + + bSizer35->Add( sbSizer15, 0, wxEXPAND|wxALL, 5 ); - - FilesystemSizer = new wxStaticBoxSizer( new wxStaticBox( DefaultMountOptionsPage, wxID_ANY, _("Filesystem") ), wxVERTICAL ); - + + FilesystemSizer = new wxStaticBoxSizer( new wxStaticBox( DefaultMountOptionsPage, wxID_ANY, _("LINUX_PREF_TAB_MOUNT_OPTIONS_FS") ), wxVERTICAL ); + wxFlexGridSizer* fgSizer3; fgSizer3 = new wxFlexGridSizer( 1, 2, 0, 0 ); fgSizer3->AddGrowableCol( 1 ); fgSizer3->SetFlexibleDirection( wxBOTH ); fgSizer3->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - + wxStaticText* m_staticText6; - m_staticText6 = new wxStaticText( DefaultMountOptionsPage, wxID_ANY, _("Mount options:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText6 = new wxStaticText( FilesystemSizer->GetStaticBox(), wxID_ANY, _("IDT_LINUX_PREF_TAB_MOUNT_OPTIONS"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText6->Wrap( -1 ); + fgSizer3->Add( m_staticText6, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); - - FilesystemOptionsTextCtrl = new wxTextCtrl( DefaultMountOptionsPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - FilesystemOptionsTextCtrl->SetMaxLength( 0 ); + + FilesystemOptionsTextCtrl = new wxTextCtrl( FilesystemSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); fgSizer3->Add( FilesystemOptionsTextCtrl, 0, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 ); - - + + FilesystemSizer->Add( fgSizer3, 1, wxEXPAND, 5 ); - - + + bSizer35->Add( FilesystemSizer, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer46->Add( bSizer35, 1, wxEXPAND|wxALL, 5 ); - - + + DefaultMountOptionsPage->SetSizer( bSizer46 ); DefaultMountOptionsPage->Layout(); bSizer46->Fit( DefaultMountOptionsPage ); - PreferencesNotebook->AddPage( DefaultMountOptionsPage, _("Mount Options"), false ); + PreferencesNotebook->AddPage( DefaultMountOptionsPage, _("LINUX_PREF_TAB_MOUNT_OPTIONS"), false ); BackgroundTaskPanel = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer61; bSizer61 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer62; bSizer62 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer18; - sbSizer18 = new wxStaticBoxSizer( new wxStaticBox( BackgroundTaskPanel, wxID_ANY, _("VeraCrypt Background Task") ), wxVERTICAL ); - - BackgroundTaskEnabledCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Enabled"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer18 = new wxStaticBoxSizer( new wxStaticBox( BackgroundTaskPanel, wxID_ANY, _("IDT_TASKBAR_ICON") ), wxVERTICAL ); + + BackgroundTaskEnabledCheckBox = new wxCheckBox( sbSizer18->GetStaticBox(), wxID_ANY, _("IDC_PREF_BKG_TASK_ENABLE"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer18->Add( BackgroundTaskEnabledCheckBox, 0, wxALL, 5 ); - - CloseBackgroundTaskOnNoVolumesCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Exit when there are no mounted volumes"), wxDefaultPosition, wxDefaultSize, 0 ); + + CloseBackgroundTaskOnNoVolumesCheckBox = new wxCheckBox( sbSizer18->GetStaticBox(), wxID_ANY, _("IDC_CLOSE_BKG_TASK_WHEN_NOVOL"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer18->Add( CloseBackgroundTaskOnNoVolumesCheckBox, 0, wxALL, 5 ); - + wxStaticBoxSizer* sbSizer26; - sbSizer26 = new wxStaticBoxSizer( new wxStaticBox( BackgroundTaskPanel, wxID_ANY, _("Task Icon Menu Items") ), wxVERTICAL ); - - BackgroundTaskMenuMountItemsEnabledCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Mount Favorite Volumes"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer26 = new wxStaticBoxSizer( new wxStaticBox( sbSizer18->GetStaticBox(), wxID_ANY, _("TASKICON_PREF_MENU_ITEMS") ), wxVERTICAL ); + + BackgroundTaskMenuMountItemsEnabledCheckBox = new wxCheckBox( sbSizer26->GetStaticBox(), wxID_ANY, _("HK_MOUNT_FAVORITE_VOLUMES"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer26->Add( BackgroundTaskMenuMountItemsEnabledCheckBox, 0, wxALL, 5 ); - - BackgroundTaskMenuOpenItemsEnabledCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Open Mounted Volumes"), wxDefaultPosition, wxDefaultSize, 0 ); + + BackgroundTaskMenuOpenItemsEnabledCheckBox = new wxCheckBox( sbSizer26->GetStaticBox(), wxID_ANY, _("TASKICON_PREF_OPEN_VOL"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer26->Add( BackgroundTaskMenuOpenItemsEnabledCheckBox, 0, wxALL, 5 ); - - BackgroundTaskMenuDismountItemsEnabledCheckBox = new wxCheckBox( BackgroundTaskPanel, wxID_ANY, _("Dismount Mounted Volumes"), wxDefaultPosition, wxDefaultSize, 0 ); + + BackgroundTaskMenuDismountItemsEnabledCheckBox = new wxCheckBox( sbSizer26->GetStaticBox(), wxID_ANY, _("TASKICON_PREF_DISMOUNT_VOL"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer26->Add( BackgroundTaskMenuDismountItemsEnabledCheckBox, 0, wxALL, 5 ); - - + + sbSizer18->Add( sbSizer26, 1, wxEXPAND|wxALL, 5 ); - - + + bSizer62->Add( sbSizer18, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer61->Add( bSizer62, 1, wxEXPAND|wxALL, 5 ); - - + + BackgroundTaskPanel->SetSizer( bSizer61 ); BackgroundTaskPanel->Layout(); bSizer61->Fit( BackgroundTaskPanel ); - PreferencesNotebook->AddPage( BackgroundTaskPanel, _("Background Task"), false ); + PreferencesNotebook->AddPage( BackgroundTaskPanel, _("LINUX_PREF_TAB_BACKGROUND_TASK"), false ); SystemIntegrationPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer49; bSizer49 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer37; bSizer37 = new wxBoxSizer( wxVERTICAL ); - - LogOnSizer = new wxStaticBoxSizer( new wxStaticBox( SystemIntegrationPage, wxID_ANY, _("Actions to Perform when User Logs On") ), wxVERTICAL ); - - StartOnLogonCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Start VeraCrypt Background Task"), wxDefaultPosition, wxDefaultSize, 0 ); + + LogOnSizer = new wxStaticBoxSizer( new wxStaticBox( SystemIntegrationPage, wxID_ANY, _("LINUX_LOGIN_ACTION") ), wxVERTICAL ); + + StartOnLogonCheckBox = new wxCheckBox( LogOnSizer->GetStaticBox(), wxID_ANY, _("IDC_PREF_LOGON_START"), wxDefaultPosition, wxDefaultSize, 0 ); LogOnSizer->Add( StartOnLogonCheckBox, 0, wxALL, 5 ); - - MountFavoritesOnLogonCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Mount favorite volumes"), wxDefaultPosition, wxDefaultSize, 0 ); + + MountFavoritesOnLogonCheckBox = new wxCheckBox( LogOnSizer->GetStaticBox(), wxID_ANY, _("HK_MOUNT_FAVORITE_VOLUMES"), wxDefaultPosition, wxDefaultSize, 0 ); LogOnSizer->Add( MountFavoritesOnLogonCheckBox, 0, wxALL, 5 ); - - MountDevicesOnLogonCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Mount all device-hosted VeraCrypt volumes"), wxDefaultPosition, wxDefaultSize, 0 ); + + MountDevicesOnLogonCheckBox = new wxCheckBox( LogOnSizer->GetStaticBox(), wxID_ANY, _("IDC_PREF_LOGON_MOUNT_DEVICES"), wxDefaultPosition, wxDefaultSize, 0 ); LogOnSizer->Add( MountDevicesOnLogonCheckBox, 0, wxALL, 5 ); - - + + bSizer37->Add( LogOnSizer, 0, wxALL|wxEXPAND, 5 ); - - ExplorerSizer = new wxStaticBoxSizer( new wxStaticBox( SystemIntegrationPage, wxID_ANY, _("Filesystem Explorer") ), wxVERTICAL ); - - OpenExplorerWindowAfterMountCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Open Explorer window for successfully mounted volume"), wxDefaultPosition, wxDefaultSize, 0 ); + + ExplorerSizer = new wxStaticBoxSizer( new wxStaticBox( SystemIntegrationPage, wxID_ANY, _("LINUX_PREF_TAB_SYSTEM_INTEGRATION_EXPLORER") ), wxVERTICAL ); + + OpenExplorerWindowAfterMountCheckBox = new wxCheckBox( ExplorerSizer->GetStaticBox(), wxID_ANY, _("IDC_PREF_OPEN_EXPLORER"), wxDefaultPosition, wxDefaultSize, 0 ); ExplorerSizer->Add( OpenExplorerWindowAfterMountCheckBox, 0, wxALL, 5 ); - - CloseExplorerWindowsOnDismountCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Close all Explorer windows of volume being dismounted"), wxDefaultPosition, wxDefaultSize, 0 ); + + CloseExplorerWindowsOnDismountCheckBox = new wxCheckBox( ExplorerSizer->GetStaticBox(), wxID_ANY, _("LINUX_CLOSE_EXPL_ON_DISMOUNT"), wxDefaultPosition, wxDefaultSize, 0 ); ExplorerSizer->Add( CloseExplorerWindowsOnDismountCheckBox, 0, wxALL, 5 ); - - + + bSizer37->Add( ExplorerSizer, 0, wxEXPAND|wxALL, 5 ); - - KernelServicesSizer = new wxStaticBoxSizer( new wxStaticBox( SystemIntegrationPage, wxID_ANY, _("Kernel Services") ), wxVERTICAL ); - - NoKernelCryptoCheckBox = new wxCheckBox( SystemIntegrationPage, wxID_ANY, _("Do not use kernel cryptographic services"), wxDefaultPosition, wxDefaultSize, 0 ); + + KernelServicesSizer = new wxStaticBoxSizer( new wxStaticBox( SystemIntegrationPage, wxID_ANY, _("LINUX_PREF_KERNEL_SERVICES") ), wxVERTICAL ); + + NoKernelCryptoCheckBox = new wxCheckBox( KernelServicesSizer->GetStaticBox(), wxID_ANY, _("LINUX_PREF_KERNEL_CRYPT"), wxDefaultPosition, wxDefaultSize, 0 ); KernelServicesSizer->Add( NoKernelCryptoCheckBox, 0, wxALL, 5 ); - - + + bSizer37->Add( KernelServicesSizer, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer49->Add( bSizer37, 1, wxEXPAND|wxALL, 5 ); - - + + SystemIntegrationPage->SetSizer( bSizer49 ); SystemIntegrationPage->Layout(); bSizer49->Fit( SystemIntegrationPage ); - PreferencesNotebook->AddPage( SystemIntegrationPage, _("System Integration"), false ); + PreferencesNotebook->AddPage( SystemIntegrationPage, _("LINUX_PREF_TAB_SYSTEM_INTEGRATION"), false ); PerformanceOptionsPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer151; bSizer151 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer152; bSizer152 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer44; - sbSizer44 = new wxStaticBoxSizer( new wxStaticBox( PerformanceOptionsPage, wxID_ANY, _("Hardware Acceleration") ), wxVERTICAL ); - + sbSizer44 = new wxStaticBoxSizer( new wxStaticBox( PerformanceOptionsPage, wxID_ANY, _("IDT_ACCELERATION_OPTIONS") ), wxVERTICAL ); + wxBoxSizer* bSizer158; bSizer158 = new wxBoxSizer( wxHORIZONTAL ); - + wxStaticText* m_staticText57; - m_staticText57 = new wxStaticText( PerformanceOptionsPage, wxID_ANY, _("Processor (CPU) in this computer supports hardware acceleration for AES:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText57 = new wxStaticText( sbSizer44->GetStaticBox(), wxID_ANY, _("IDT_HW_AES_SUPPORTED_BY_CPU"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText57->Wrap( -1 ); + bSizer158->Add( m_staticText57, 0, wxALL, 5 ); - - AesHwCpuSupportedStaticText = new wxStaticText( PerformanceOptionsPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0|wxSUNKEN_BORDER ); + + AesHwCpuSupportedStaticText = new wxStaticText( sbSizer44->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0|wxSUNKEN_BORDER ); AesHwCpuSupportedStaticText->Wrap( -1 ); + bSizer158->Add( AesHwCpuSupportedStaticText, 0, wxALL, 5 ); - - + + sbSizer44->Add( bSizer158, 1, wxEXPAND, 5 ); - - + + sbSizer44->Add( 0, 0, 0, wxBOTTOM, 5 ); - - NoHardwareCryptoCheckBox = new wxCheckBox( PerformanceOptionsPage, wxID_ANY, _("Do not accelerate AES encryption/decryption by using the AES instructions of the processor"), wxDefaultPosition, wxDefaultSize, 0 ); + + NoHardwareCryptoCheckBox = new wxCheckBox( sbSizer44->GetStaticBox(), wxID_ANY, _("IDC_ENABLE_HARDWARE_ENCRYPTION_NEG"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer44->Add( NoHardwareCryptoCheckBox, 0, wxALL, 5 ); - - + + bSizer152->Add( sbSizer44, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer151->Add( bSizer152, 1, wxALL|wxEXPAND, 5 ); - - + + PerformanceOptionsPage->SetSizer( bSizer151 ); PerformanceOptionsPage->Layout(); bSizer151->Fit( PerformanceOptionsPage ); - PreferencesNotebook->AddPage( PerformanceOptionsPage, _("Performance"), false ); + PreferencesNotebook->AddPage( PerformanceOptionsPage, _("LINUX_PREF_TAB_PERFORMANCE"), false ); DefaultKeyfilesPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer40; bSizer40 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer43; bSizer43 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* bSizer42; - bSizer42 = new wxStaticBoxSizer( new wxStaticBox( DefaultKeyfilesPage, wxID_ANY, _("Default Keyfiles") ), wxVERTICAL ); - + bSizer42 = new wxStaticBoxSizer( new wxStaticBox( DefaultKeyfilesPage, wxID_ANY, _("IDD_KEYFILES") ), wxVERTICAL ); + DefaultKeyfilesSizer = new wxBoxSizer( wxVERTICAL ); - - + + bSizer42->Add( DefaultKeyfilesSizer, 1, wxEXPAND, 5 ); - - + + bSizer43->Add( bSizer42, 1, wxEXPAND|wxALL, 5 ); - - UseKeyfilesCheckBox = new wxCheckBox( DefaultKeyfilesPage, wxID_ANY, _("Use keyfiles by default"), wxDefaultPosition, wxDefaultSize, 0 ); + + UseKeyfilesCheckBox = new wxCheckBox( DefaultKeyfilesPage, wxID_ANY, _("IDC_KEYFILES_ENABLE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer43->Add( UseKeyfilesCheckBox, 0, wxALL, 5 ); - - + + bSizer40->Add( bSizer43, 1, wxEXPAND|wxALL, 5 ); - - + + DefaultKeyfilesPage->SetSizer( bSizer40 ); DefaultKeyfilesPage->Layout(); bSizer40->Fit( DefaultKeyfilesPage ); - PreferencesNotebook->AddPage( DefaultKeyfilesPage, _("Keyfiles"), false ); + PreferencesNotebook->AddPage( DefaultKeyfilesPage, _("LINUX_PREF_TAB_KEYFILES"), false ); SecurityTokensPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer127; bSizer127 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer128; bSizer128 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer36; - sbSizer36 = new wxStaticBoxSizer( new wxStaticBox( SecurityTokensPage, wxID_ANY, _("PKCS #11 Library Path") ), wxVERTICAL ); - + sbSizer36 = new wxStaticBoxSizer( new wxStaticBox( SecurityTokensPage, wxID_ANY, _("IDT_PKCS11_LIB_PATH") ), wxVERTICAL ); + wxBoxSizer* bSizer129; bSizer129 = new wxBoxSizer( wxHORIZONTAL ); - - Pkcs11ModulePathTextCtrl = new wxTextCtrl( SecurityTokensPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - Pkcs11ModulePathTextCtrl->SetMaxLength( 0 ); + + Pkcs11ModulePathTextCtrl = new wxTextCtrl( sbSizer36->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); bSizer129->Add( Pkcs11ModulePathTextCtrl, 1, wxALL, 5 ); - - SelectPkcs11ModuleButton = new wxButton( SecurityTokensPage, wxID_ANY, _("Select &Library..."), wxDefaultPosition, wxDefaultSize, 0 ); + + SelectPkcs11ModuleButton = new wxButton( sbSizer36->GetStaticBox(), wxID_ANY, _("IDC_SELECT_PKCS11_MODULE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer129->Add( SelectPkcs11ModuleButton, 0, wxALL, 5 ); - - + + sbSizer36->Add( bSizer129, 1, wxEXPAND, 5 ); - - + + bSizer128->Add( sbSizer36, 0, wxEXPAND|wxALL, 5 ); - + wxStaticBoxSizer* sbSizer37; - sbSizer37 = new wxStaticBoxSizer( new wxStaticBox( SecurityTokensPage, wxID_ANY, _("Security Options") ), wxVERTICAL ); - - CloseSecurityTokenSessionsAfterMountCheckBox = new wxCheckBox( SecurityTokensPage, wxID_ANY, _("&Close token session (log out) after a volume is successfully mounted"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer37 = new wxStaticBoxSizer( new wxStaticBox( SecurityTokensPage, wxID_ANY, _("IDT_SECURITY_OPTIONS") ), wxVERTICAL ); + + CloseSecurityTokenSessionsAfterMountCheckBox = new wxCheckBox( sbSizer37->GetStaticBox(), wxID_ANY, _("IDC_CLOSE_TOKEN_SESSION_AFTER_MOUNT"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer37->Add( CloseSecurityTokenSessionsAfterMountCheckBox, 0, wxALL, 5 ); - - + + bSizer128->Add( sbSizer37, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer127->Add( bSizer128, 1, wxEXPAND|wxALL, 5 ); - - + + SecurityTokensPage->SetSizer( bSizer127 ); SecurityTokensPage->Layout(); bSizer127->Fit( SecurityTokensPage ); - PreferencesNotebook->AddPage( SecurityTokensPage, _("Security Tokens"), false ); + PreferencesNotebook->AddPage( SecurityTokensPage, _("LINUX_PREF_TAB_TOKENS"), false ); HotkeysPage = new wxPanel( PreferencesNotebook, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL ); wxBoxSizer* bSizer51; bSizer51 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer38; bSizer38 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer21; - sbSizer21 = new wxStaticBoxSizer( new wxStaticBox( HotkeysPage, wxID_ANY, _("System-Wide Hotkeys") ), wxVERTICAL ); - - HotkeyListCtrl = new wxListCtrl( HotkeysPage, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SINGLE_SEL|wxLC_VRULES|wxSUNKEN_BORDER ); + sbSizer21 = new wxStaticBoxSizer( new wxStaticBox( HotkeysPage, wxID_ANY, _("LINUX_SYSTEM_HOTKEYS") ), wxVERTICAL ); + + HotkeyListCtrl = new wxListCtrl( sbSizer21->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_SINGLE_SEL|wxLC_VRULES|wxSUNKEN_BORDER ); sbSizer21->Add( HotkeyListCtrl, 1, wxALL|wxEXPAND, 5 ); - + wxStaticBoxSizer* sbSizer23; - sbSizer23 = new wxStaticBoxSizer( new wxStaticBox( HotkeysPage, wxID_ANY, _("Shortcut") ), wxVERTICAL ); - + sbSizer23 = new wxStaticBoxSizer( new wxStaticBox( sbSizer21->GetStaticBox(), wxID_ANY, _("SHORTCUT") ), wxVERTICAL ); + wxFlexGridSizer* fgSizer4; fgSizer4 = new wxFlexGridSizer( 2, 3, 0, 0 ); fgSizer4->SetFlexibleDirection( wxBOTH ); fgSizer4->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - + wxStaticText* m_staticText10; - m_staticText10 = new wxStaticText( HotkeysPage, wxID_ANY, _("Key to assign:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText10 = new wxStaticText( sbSizer23->GetStaticBox(), wxID_ANY, _("IDT_HOTKEY_KEY"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText10->Wrap( -1 ); + fgSizer4->Add( m_staticText10, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - HotkeyTextCtrl = new wxTextCtrl( HotkeysPage, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - HotkeyTextCtrl->SetMaxLength( 0 ); + + HotkeyTextCtrl = new wxTextCtrl( sbSizer23->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); fgSizer4->Add( HotkeyTextCtrl, 0, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 ); - - AssignHotkeyButton = new wxButton( HotkeysPage, wxID_ANY, _("Assign"), wxDefaultPosition, wxDefaultSize, 0 ); + + AssignHotkeyButton = new wxButton( sbSizer23->GetStaticBox(), wxID_ANY, _("IDC_HOTKEY_ASSIGN"), wxDefaultPosition, wxDefaultSize, 0 ); fgSizer4->Add( AssignHotkeyButton, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - + + fgSizer4->Add( 0, 0, 1, wxEXPAND, 5 ); - + wxGridSizer* gSizer4; gSizer4 = new wxGridSizer( 1, 4, 0, 0 ); - - HotkeyControlCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Control"), wxDefaultPosition, wxDefaultSize, 0 ); + + HotkeyControlCheckBox = new wxCheckBox( sbSizer23->GetStaticBox(), wxID_ANY, _("VK_CONTROL"), wxDefaultPosition, wxDefaultSize, 0 ); gSizer4->Add( HotkeyControlCheckBox, 0, wxALL, 5 ); - - HotkeyShiftCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Shift"), wxDefaultPosition, wxDefaultSize, 0 ); + + HotkeyShiftCheckBox = new wxCheckBox( sbSizer23->GetStaticBox(), wxID_ANY, _("VK_SHIFT"), wxDefaultPosition, wxDefaultSize, 0 ); gSizer4->Add( HotkeyShiftCheckBox, 0, wxALL, 5 ); - - HotkeyAltCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Alt"), wxDefaultPosition, wxDefaultSize, 0 ); + + HotkeyAltCheckBox = new wxCheckBox( sbSizer23->GetStaticBox(), wxID_ANY, _("VK_ALT"), wxDefaultPosition, wxDefaultSize, 0 ); gSizer4->Add( HotkeyAltCheckBox, 0, wxALL, 5 ); - - HotkeyWinCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Win"), wxDefaultPosition, wxDefaultSize, 0 ); + + HotkeyWinCheckBox = new wxCheckBox( sbSizer23->GetStaticBox(), wxID_ANY, _("VK_WIN"), wxDefaultPosition, wxDefaultSize, 0 ); gSizer4->Add( HotkeyWinCheckBox, 0, wxALL, 5 ); - - + + fgSizer4->Add( gSizer4, 1, wxEXPAND, 5 ); - - RemoveHotkeyButton = new wxButton( HotkeysPage, wxID_ANY, _("Remove"), wxDefaultPosition, wxDefaultSize, 0 ); + + RemoveHotkeyButton = new wxButton( sbSizer23->GetStaticBox(), wxID_ANY, _("IDC_KEYREMOVE"), wxDefaultPosition, wxDefaultSize, 0 ); fgSizer4->Add( RemoveHotkeyButton, 1, wxALL, 5 ); - - + + sbSizer23->Add( fgSizer4, 1, wxALIGN_RIGHT, 5 ); - - + + sbSizer21->Add( sbSizer23, 0, wxEXPAND|wxALL, 5 ); - + wxStaticBoxSizer* sbSizer24; - sbSizer24 = new wxStaticBoxSizer( new wxStaticBox( HotkeysPage, wxID_ANY, _("Options") ), wxVERTICAL ); - - BeepAfterHotkeyMountDismountCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Play system notification sound after mount/dismount"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer24 = new wxStaticBoxSizer( new wxStaticBox( sbSizer21->GetStaticBox(), wxID_ANY, _("IDT_FORMAT_OPTIONS") ), wxVERTICAL ); + + BeepAfterHotkeyMountDismountCheckBox = new wxCheckBox( sbSizer24->GetStaticBox(), wxID_ANY, _("LINUX_SOUND_NOTIFICATION"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer24->Add( BeepAfterHotkeyMountDismountCheckBox, 0, wxALL, 5 ); - - DisplayMessageAfterHotkeyDismountCheckBox = new wxCheckBox( HotkeysPage, wxID_ANY, _("Display confirmation message box after dismount"), wxDefaultPosition, wxDefaultSize, 0 ); + + DisplayMessageAfterHotkeyDismountCheckBox = new wxCheckBox( sbSizer24->GetStaticBox(), wxID_ANY, _("LINUX_CONFIRM_AFTER_DISMOUNT"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer24->Add( DisplayMessageAfterHotkeyDismountCheckBox, 0, wxALL, 5 ); - - + + sbSizer21->Add( sbSizer24, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer38->Add( sbSizer21, 1, wxEXPAND|wxALL, 5 ); - - + + bSizer51->Add( bSizer38, 1, wxEXPAND|wxALL, 5 ); - - + + HotkeysPage->SetSizer( bSizer51 ); HotkeysPage->Layout(); bSizer51->Fit( HotkeysPage ); - PreferencesNotebook->AddPage( HotkeysPage, _("Hotkeys"), false ); - - bSizer41->Add( PreferencesNotebook, 1, wxEXPAND | wxALL, 5 ); - - StdButtons = new wxStdDialogButtonSizer(); - StdButtonsOK = new wxButton( this, wxID_OK ); - StdButtons->AddButton( StdButtonsOK ); - StdButtonsCancel = new wxButton( this, wxID_CANCEL ); - StdButtons->AddButton( StdButtonsCancel ); - StdButtons->Realize(); - - bSizer41->Add( StdButtons, 0, wxEXPAND|wxALL, 5 ); - - - bSizer32->Add( bSizer41, 1, wxEXPAND|wxALL, 5 ); - - + PreferencesNotebook->AddPage( HotkeysPage, _("LINUX_HOTKEYS"), false ); + + bSizer178->Add( PreferencesNotebook, 1, wxEXPAND | wxALL, 5 ); + + wxBoxSizer* bSizer182; + bSizer182 = new wxBoxSizer( wxHORIZONTAL ); + + + bSizer182->Add( 0, 0, 1, wxEXPAND, 5 ); + + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); + OKButton->SetDefault(); + + bSizer182->Add( OKButton, 0, wxALIGN_RIGHT|wxALL, 5 ); + + CancelButton = new wxButton( this, wxID_CANCEL, _("IDCANCEL"), wxDefaultPosition, wxDefaultSize, 0 ); + bSizer182->Add( CancelButton, 0, wxALL, 5 ); + + + bSizer178->Add( bSizer182, 0, wxALL|wxEXPAND, 5 ); + + + bSizer32->Add( bSizer178, 1, wxEXPAND, 5 ); + + this->SetSizer( bSizer32 ); this->Layout(); bSizer32->Fit( this ); - + // Connect Events this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( PreferencesDialogBase::OnClose ) ); DismountOnScreenSaverCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnDismountOnScreenSaverCheckBoxClick ), NULL, this ); @@ -2291,8 +2344,7 @@ PreferencesDialogBase::PreferencesDialogBase( wxWindow* parent, wxWindowID id, c HotkeyListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( PreferencesDialogBase::OnHotkeyListItemSelected ), NULL, this ); AssignHotkeyButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnAssignHotkeyButtonClick ), NULL, this ); RemoveHotkeyButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnRemoveHotkeyButtonClick ), NULL, this ); - StdButtonsCancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnCancelButtonClick ), NULL, this ); - StdButtonsOK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnOKButtonClick ), NULL, this ); + OKButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnOKButtonClick ), NULL, this ); } PreferencesDialogBase::~PreferencesDialogBase() @@ -2311,117 +2363,121 @@ PreferencesDialogBase::~PreferencesDialogBase() HotkeyListCtrl->Disconnect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( PreferencesDialogBase::OnHotkeyListItemSelected ), NULL, this ); AssignHotkeyButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnAssignHotkeyButtonClick ), NULL, this ); RemoveHotkeyButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnRemoveHotkeyButtonClick ), NULL, this ); - StdButtonsCancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnCancelButtonClick ), NULL, this ); - StdButtonsOK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnOKButtonClick ), NULL, this ); - + OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( PreferencesDialogBase::OnOKButtonClick ), NULL, this ); + } RandomPoolEnrichmentDialogBase::RandomPoolEnrichmentDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + MainSizer = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer144; bSizer144 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer145; bSizer145 = new wxBoxSizer( wxHORIZONTAL ); - - + + bSizer145->Add( 0, 0, 1, wxEXPAND, 5 ); - + wxStaticText* m_staticText49; - m_staticText49 = new wxStaticText( this, wxID_ANY, _("Mixing PRF:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText49 = new wxStaticText( this, wxID_ANY, _("IDT_PRF"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText49->Wrap( -1 ); + bSizer145->Add( m_staticText49, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - + wxArrayString HashChoiceChoices; HashChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, HashChoiceChoices, 0 ); HashChoice->SetSelection( 0 ); bSizer145->Add( HashChoice, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer145->Add( 0, 0, 1, wxEXPAND, 5 ); - - + + bSizer144->Add( bSizer145, 0, wxEXPAND, 5 ); - + wxStaticBoxSizer* sbSizer43; sbSizer43 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxEmptyString ), wxVERTICAL ); - + wxBoxSizer* bSizer147; bSizer147 = new wxBoxSizer( wxHORIZONTAL ); - + wxStaticText* m_staticText52; - m_staticText52 = new wxStaticText( this, wxID_ANY, _("Random Pool:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText52 = new wxStaticText( sbSizer43->GetStaticBox(), wxID_ANY, _("IDT_RANDOM_POOL"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText52->Wrap( -1 ); + bSizer147->Add( m_staticText52, 0, wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - - RandomPoolStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + + RandomPoolStaticText = new wxStaticText( sbSizer43->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); RandomPoolStaticText->Wrap( -1 ); - RandomPoolStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier New") ) ); - + + RandomPoolStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Courier New") ) ); + bSizer147->Add( RandomPoolStaticText, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - ShowRandomPoolCheckBox = new wxCheckBox( this, wxID_ANY, _("Show"), wxDefaultPosition, wxDefaultSize, 0 ); + + ShowRandomPoolCheckBox = new wxCheckBox( sbSizer43->GetStaticBox(), wxID_ANY, _("IDC_DISPLAY_POOL_CONTENTS"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer147->Add( ShowRandomPoolCheckBox, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - + + sbSizer43->Add( bSizer147, 0, wxEXPAND|wxTOP, 5 ); - - + + sbSizer43->Add( 0, 0, 1, wxEXPAND, 5 ); - + wxStaticBoxSizer* sbSizer45; - sbSizer45 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Randomness Collected From Mouse Movements") ), wxVERTICAL ); - - CollectedEntropy = new wxGauge( this, wxID_ANY, 2560, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH ); - CollectedEntropy->SetValue( 0 ); + sbSizer45 = new wxStaticBoxSizer( new wxStaticBox( sbSizer43->GetStaticBox(), wxID_ANY, _("IDT_ENTROPY_BAR") ), wxVERTICAL ); + + CollectedEntropy = new wxGauge( sbSizer45->GetStaticBox(), wxID_ANY, 2560, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH ); + CollectedEntropy->SetValue( 0 ); sbSizer45->Add( CollectedEntropy, 0, wxALL|wxEXPAND, 5 ); - - + + sbSizer43->Add( sbSizer45, 0, wxBOTTOM|wxEXPAND|wxTOP, 5 ); - - + + sbSizer43->Add( 0, 0, 1, wxEXPAND, 5 ); - - MouseStaticText = new wxStaticText( this, wxID_ANY, _("IMPORTANT: Move your mouse as randomly as possible within this window. The longer you move it, the better. This significantly increases security. When done, click 'Continue'."), wxDefaultPosition, wxDefaultSize, 0 ); + + MouseStaticText = new wxStaticText( sbSizer43->GetStaticBox(), wxID_ANY, _("IDT_RANDOM_POOL_ENRICHMENT_NOTE"), wxDefaultPosition, wxDefaultSize, 0 ); MouseStaticText->Wrap( -1 ); + sbSizer43->Add( MouseStaticText, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 ); - - + + sbSizer43->Add( 0, 0, 1, wxEXPAND, 5 ); - - + + bSizer144->Add( sbSizer43, 1, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - + wxBoxSizer* bSizer146; bSizer146 = new wxBoxSizer( wxHORIZONTAL ); - - + + bSizer146->Add( 0, 0, 1, wxEXPAND, 5 ); - - ContinueButton = new wxButton( this, wxID_OK, _("&Continue"), wxDefaultPosition, wxDefaultSize, 0 ); + + ContinueButton = new wxButton( this, wxID_OK, _("CONTINUE"), wxDefaultPosition, wxDefaultSize, 0 ); ContinueButton->SetDefault(); + bSizer146->Add( ContinueButton, 0, wxALL, 5 ); - - + + bSizer146->Add( 0, 0, 1, wxEXPAND, 5 ); - - + + bSizer144->Add( bSizer146, 0, wxEXPAND, 5 ); - - + + MainSizer->Add( bSizer144, 1, wxEXPAND|wxALL, 5 ); - - + + this->SetSizer( MainSizer ); this->Layout(); MainSizer->Fit( this ); - + this->Centre( wxBOTH ); - + // Connect Events this->Connect( wxEVT_MOTION, wxMouseEventHandler( RandomPoolEnrichmentDialogBase::OnMouseMotion ) ); HashChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( RandomPoolEnrichmentDialogBase::OnHashSelected ), NULL, this ); @@ -2434,68 +2490,69 @@ RandomPoolEnrichmentDialogBase::~RandomPoolEnrichmentDialogBase() this->Disconnect( wxEVT_MOTION, wxMouseEventHandler( RandomPoolEnrichmentDialogBase::OnMouseMotion ) ); HashChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( RandomPoolEnrichmentDialogBase::OnHashSelected ), NULL, this ); ShowRandomPoolCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( RandomPoolEnrichmentDialogBase::OnShowRandomPoolCheckBoxClicked ), NULL, this ); - + } SecurityTokenKeyfilesDialogBase::SecurityTokenKeyfilesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize ); - this->SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); - + this->SetExtraStyle( this->GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY ); + wxBoxSizer* bSizer3; bSizer3 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer138; bSizer138 = new wxBoxSizer( wxHORIZONTAL ); - + wxBoxSizer* bSizer142; bSizer142 = new wxBoxSizer( wxVERTICAL ); - + SecurityTokenKeyfileListCtrl = new wxListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_VRULES|wxSUNKEN_BORDER ); bSizer142->Add( SecurityTokenKeyfileListCtrl, 1, wxALL|wxEXPAND, 5 ); - + wxBoxSizer* bSizer141; bSizer141 = new wxBoxSizer( wxHORIZONTAL ); - - ExportButton = new wxButton( this, wxID_ANY, _("&Export..."), wxDefaultPosition, wxDefaultSize, 0 ); + + ExportButton = new wxButton( this, wxID_ANY, _("IDC_EXPORT"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer141->Add( ExportButton, 0, wxALL, 5 ); - - DeleteButton = new wxButton( this, wxID_ANY, _("&Delete"), wxDefaultPosition, wxDefaultSize, 0 ); + + DeleteButton = new wxButton( this, wxID_ANY, _("VKEY_2E"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer141->Add( DeleteButton, 0, wxALL, 5 ); - - + + bSizer141->Add( 0, 0, 1, wxEXPAND|wxLEFT, 5 ); - - ImportButton = new wxButton( this, wxID_ANY, _("&Import Keyfile to Token..."), wxDefaultPosition, wxDefaultSize, 0 ); + + ImportButton = new wxButton( this, wxID_ANY, _("IDC_IMPORT_KEYFILE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer141->Add( ImportButton, 0, wxALL, 5 ); - - + + bSizer142->Add( bSizer141, 0, wxEXPAND, 5 ); - - + + bSizer138->Add( bSizer142, 1, wxEXPAND, 5 ); - + wxBoxSizer* bSizer139; bSizer139 = new wxBoxSizer( wxVERTICAL ); - - OKButton = new wxButton( this, wxID_OK, _("OK"), wxDefaultPosition, wxDefaultSize, 0 ); + + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); OKButton->SetDefault(); + bSizer139->Add( OKButton, 0, wxALL, 5 ); - - CancelButton = new wxButton( this, wxID_CANCEL, _("Cancel"), wxDefaultPosition, wxDefaultSize, 0 ); + + CancelButton = new wxButton( this, wxID_CANCEL, _("IDCANCEL"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer139->Add( CancelButton, 0, wxALL, 5 ); - - + + bSizer138->Add( bSizer139, 0, wxEXPAND, 5 ); - - + + bSizer3->Add( bSizer138, 1, wxEXPAND|wxALL, 5 ); - - + + this->SetSizer( bSizer3 ); this->Layout(); bSizer3->Fit( this ); - + // Connect Events SecurityTokenKeyfileListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_ACTIVATED, wxListEventHandler( SecurityTokenKeyfilesDialogBase::OnListItemActivated ), NULL, this ); SecurityTokenKeyfileListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( SecurityTokenKeyfilesDialogBase::OnListItemDeselected ), NULL, this ); @@ -2516,125 +2573,142 @@ SecurityTokenKeyfilesDialogBase::~SecurityTokenKeyfilesDialogBase() DeleteButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SecurityTokenKeyfilesDialogBase::OnDeleteButtonClick ), NULL, this ); ImportButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SecurityTokenKeyfilesDialogBase::OnImportButtonClick ), NULL, this ); OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SecurityTokenKeyfilesDialogBase::OnOKButtonClick ), NULL, this ); - + } VolumePropertiesDialogBase::VolumePropertiesDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + wxBoxSizer* bSizer49; bSizer49 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer50; bSizer50 = new wxBoxSizer( wxVERTICAL ); - + PropertiesListCtrl = new wxListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxLC_VRULES|wxSUNKEN_BORDER ); bSizer50->Add( PropertiesListCtrl, 1, wxALL|wxEXPAND, 5 ); - - StdButtons = new wxStdDialogButtonSizer(); - StdButtonsOK = new wxButton( this, wxID_OK ); - StdButtons->AddButton( StdButtonsOK ); - StdButtons->Realize(); - - bSizer50->Add( StdButtons, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 5 ); - - + + wxBoxSizer* bSizer169; + bSizer169 = new wxBoxSizer( wxHORIZONTAL ); + + + bSizer169->Add( 0, 0, 1, wxEXPAND, 5 ); + + OKButton = new wxButton( this, wxID_OK, _("IDOK"), wxDefaultPosition, wxDefaultSize, 0 ); + OKButton->SetDefault(); + + bSizer169->Add( OKButton, 0, wxALL, 5 ); + + + bSizer169->Add( 0, 0, 1, wxEXPAND, 5 ); + + + bSizer50->Add( bSizer169, 0, wxALL|wxEXPAND, 5 ); + + bSizer49->Add( bSizer50, 1, wxEXPAND|wxALL, 5 ); - - + + this->SetSizer( bSizer49 ); this->Layout(); bSizer49->Fit( this ); + + // Connect Events + OKButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumePropertiesDialogBase::OnOKButtonClick ), NULL, this ); } VolumePropertiesDialogBase::~VolumePropertiesDialogBase() { + // Disconnect Events + OKButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumePropertiesDialogBase::OnOKButtonClick ), NULL, this ); + } EncryptionOptionsWizardPageBase::EncryptionOptionsWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style ) { wxBoxSizer* bSizer93; bSizer93 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer94; bSizer94 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer95; bSizer95 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer29; - sbSizer29 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Encryption Algorithm") ), wxVERTICAL ); - + sbSizer29 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("ENCRYPTION_ALGORITHM_LV") ), wxVERTICAL ); + wxBoxSizer* bSizer96; bSizer96 = new wxBoxSizer( wxHORIZONTAL ); - + wxArrayString EncryptionAlgorithmChoiceChoices; - EncryptionAlgorithmChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, EncryptionAlgorithmChoiceChoices, 0 ); + EncryptionAlgorithmChoice = new wxChoice( sbSizer29->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, EncryptionAlgorithmChoiceChoices, 0 ); EncryptionAlgorithmChoice->SetSelection( 0 ); bSizer96->Add( EncryptionAlgorithmChoice, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - TestButton = new wxButton( this, wxID_ANY, _("&Test"), wxDefaultPosition, wxDefaultSize, 0 ); + + TestButton = new wxButton( sbSizer29->GetStaticBox(), wxID_ANY, _("TEST"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer96->Add( TestButton, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 ); - - + + sbSizer29->Add( bSizer96, 0, wxEXPAND, 5 ); - - EncryptionAlgorithmStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + + EncryptionAlgorithmStaticText = new wxStaticText( sbSizer29->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); EncryptionAlgorithmStaticText->Wrap( -1 ); + sbSizer29->Add( EncryptionAlgorithmStaticText, 1, wxALL|wxEXPAND, 5 ); - + wxBoxSizer* bSizer97; bSizer97 = new wxBoxSizer( wxHORIZONTAL ); - - EncryptionAlgorithmHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, _("More information"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE ); - + + EncryptionAlgorithmHyperlink = new wxHyperlinkCtrl( sbSizer29->GetStaticBox(), wxID_ANY, _("IDC_LINK_MORE_INFO_ABOUT_CIPHER"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE ); + EncryptionAlgorithmHyperlink->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); EncryptionAlgorithmHyperlink->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); EncryptionAlgorithmHyperlink->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); bSizer97->Add( EncryptionAlgorithmHyperlink, 0, wxALL, 5 ); - - + + bSizer97->Add( 0, 0, 1, wxEXPAND, 5 ); - - BenchmarkButton = new wxButton( this, wxID_ANY, _("&Benchmark"), wxDefaultPosition, wxDefaultSize, 0 ); + + BenchmarkButton = new wxButton( sbSizer29->GetStaticBox(), wxID_ANY, _("IDC_BENCHMARK"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer97->Add( BenchmarkButton, 0, wxALL, 5 ); - - + + sbSizer29->Add( bSizer97, 0, wxEXPAND, 5 ); - - + + bSizer95->Add( sbSizer29, 1, wxEXPAND|wxALL, 5 ); - + wxStaticBoxSizer* sbSizer30; - sbSizer30 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Hash Algorithm") ), wxHORIZONTAL ); - + sbSizer30 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_HASH_ALGO") ), wxHORIZONTAL ); + wxArrayString HashChoiceChoices; - HashChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, HashChoiceChoices, 0 ); + HashChoice = new wxChoice( sbSizer30->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, HashChoiceChoices, 0 ); HashChoice->SetSelection( 0 ); sbSizer30->Add( HashChoice, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - HashHyperlink = new wxHyperlinkCtrl( this, wxID_ANY, _("Information on hash algorithms"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE ); - + + HashHyperlink = new wxHyperlinkCtrl( sbSizer30->GetStaticBox(), wxID_ANY, _("IDC_LINK_HASH_INFO"), wxEmptyString, wxDefaultPosition, wxDefaultSize, wxHL_DEFAULT_STYLE ); + HashHyperlink->SetHoverColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); HashHyperlink->SetNormalColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); HashHyperlink->SetVisitedColour( wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT ) ); sbSizer30->Add( HashHyperlink, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer95->Add( sbSizer30, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer94->Add( bSizer95, 1, wxEXPAND, 5 ); - - + + bSizer93->Add( bSizer94, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer93 ); this->Layout(); bSizer93->Fit( this ); - + // Connect Events EncryptionAlgorithmChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( EncryptionOptionsWizardPageBase::OnEncryptionAlgorithmSelected ), NULL, this ); TestButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( EncryptionOptionsWizardPageBase::OnTestButtonClick ), NULL, this ); @@ -2651,24 +2725,25 @@ EncryptionOptionsWizardPageBase::~EncryptionOptionsWizardPageBase() EncryptionAlgorithmHyperlink->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( EncryptionOptionsWizardPageBase::OnEncryptionAlgorithmHyperlinkClick ), NULL, this ); BenchmarkButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( EncryptionOptionsWizardPageBase::OnBenchmarkButtonClick ), NULL, this ); HashHyperlink->Disconnect( wxEVT_COMMAND_HYPERLINK, wxHyperlinkEventHandler( EncryptionOptionsWizardPageBase::OnHashHyperlinkClick ), NULL, this ); - + } InfoWizardPageBase::InfoWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style ) { wxBoxSizer* bSizer71; bSizer71 = new wxBoxSizer( wxVERTICAL ); - + InfoPageSizer = new wxBoxSizer( wxVERTICAL ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( -1 ); + InfoPageSizer->Add( InfoStaticText, 1, wxALL|wxEXPAND, 5 ); - - + + bSizer71->Add( InfoPageSizer, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer71 ); this->Layout(); bSizer71->Fit( this ); @@ -2681,51 +2756,51 @@ InfoWizardPageBase::~InfoWizardPageBase() KeyfilesPanelBase::KeyfilesPanelBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style ) { this->SetMinSize( wxSize( 500,300 ) ); - + wxBoxSizer* bSizer19; bSizer19 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer20; bSizer20 = new wxBoxSizer( wxHORIZONTAL ); - + wxBoxSizer* bSizer21; bSizer21 = new wxBoxSizer( wxVERTICAL ); - + KeyfilesListCtrl = new wxListCtrl( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLC_NO_SORT_HEADER|wxLC_REPORT|wxSUNKEN_BORDER ); bSizer21->Add( KeyfilesListCtrl, 1, wxEXPAND|wxALL, 5 ); - + wxBoxSizer* bSizer137; bSizer137 = new wxBoxSizer( wxHORIZONTAL ); - - AddFilesButton = new wxButton( this, wxID_ANY, _("Add &Files..."), wxDefaultPosition, wxDefaultSize, 0 ); + + AddFilesButton = new wxButton( this, wxID_ANY, _("IDC_KEYADD"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer137->Add( AddFilesButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - AddDirectoryButton = new wxButton( this, wxID_ANY, _("Add &Path..."), wxDefaultPosition, wxDefaultSize, 0 ); + + AddDirectoryButton = new wxButton( this, wxID_ANY, _("IDC_ADD_KEYFILE_PATH"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer137->Add( AddDirectoryButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - AddSecurityTokenSignatureButton = new wxButton( this, wxID_ANY, _("Add &Token Files..."), wxDefaultPosition, wxDefaultSize, 0 ); + + AddSecurityTokenSignatureButton = new wxButton( this, wxID_ANY, _("IDC_TOKEN_FILES_ADD"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer137->Add( AddSecurityTokenSignatureButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - RemoveButton = new wxButton( this, wxID_ANY, _("&Remove"), wxDefaultPosition, wxDefaultSize, 0 ); + + RemoveButton = new wxButton( this, wxID_ANY, _("IDC_KEYREMOVE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer137->Add( RemoveButton, 0, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - RemoveAllButton = new wxButton( this, wxID_ANY, _("Remove &All"), wxDefaultPosition, wxDefaultSize, 0 ); + + RemoveAllButton = new wxButton( this, wxID_ANY, _("IDC_KEYREMOVEALL"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer137->Add( RemoveAllButton, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer21->Add( bSizer137, 0, wxEXPAND, 5 ); - - + + bSizer20->Add( bSizer21, 1, wxEXPAND, 5 ); - - + + bSizer19->Add( bSizer20, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer19 ); this->Layout(); bSizer19->Fit( this ); - + // Connect Events KeyfilesListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_DESELECTED, wxListEventHandler( KeyfilesPanelBase::OnListItemDeselected ), NULL, this ); KeyfilesListCtrl->Connect( wxEVT_COMMAND_LIST_ITEM_SELECTED, wxListEventHandler( KeyfilesPanelBase::OnListItemSelected ), NULL, this ); @@ -2748,43 +2823,44 @@ KeyfilesPanelBase::~KeyfilesPanelBase() AddSecurityTokenSignatureButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnAddSecurityTokenSignatureButtonClick ), NULL, this ); RemoveButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnRemoveButtonClick ), NULL, this ); RemoveAllButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( KeyfilesPanelBase::OnRemoveAllButtonClick ), NULL, this ); - + } ProgressWizardPageBase::ProgressWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style ) { wxBoxSizer* bSizer81; bSizer81 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer82; bSizer82 = new wxBoxSizer( wxVERTICAL ); - + ProgressSizer = new wxBoxSizer( wxHORIZONTAL ); - + ProgressGauge = new wxGauge( this, wxID_ANY, 100, wxDefaultPosition, wxSize( -1,-1 ), wxGA_HORIZONTAL|wxGA_SMOOTH ); - ProgressGauge->SetValue( 0 ); + ProgressGauge->SetValue( 0 ); ProgressSizer->Add( ProgressGauge, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - AbortButton = new wxButton( this, wxID_ANY, _("&Abort"), wxDefaultPosition, wxDefaultSize, 0 ); + + AbortButton = new wxButton( this, wxID_ANY, _("IDC_ABORT_BUTTON"), wxDefaultPosition, wxDefaultSize, 0 ); AbortButton->Enable( false ); - + ProgressSizer->Add( AbortButton, 0, wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer82->Add( ProgressSizer, 0, wxEXPAND, 5 ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( -1 ); + bSizer82->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer81->Add( bSizer82, 0, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer81 ); this->Layout(); bSizer81->Fit( this ); - + // Connect Events AbortButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ProgressWizardPageBase::OnAbortButtonClick ), NULL, this ); } @@ -2793,44 +2869,44 @@ ProgressWizardPageBase::~ProgressWizardPageBase() { // Disconnect Events AbortButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( ProgressWizardPageBase::OnAbortButtonClick ), NULL, this ); - + } SelectDirectoryWizardPageBase::SelectDirectoryWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style ) { this->SetMinSize( wxSize( 200,65 ) ); - + wxBoxSizer* bSizer68; bSizer68 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer69; bSizer69 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer70; bSizer70 = new wxBoxSizer( wxHORIZONTAL ); - + DirectoryTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - DirectoryTextCtrl->SetMaxLength( 0 ); bSizer70->Add( DirectoryTextCtrl, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - BrowseButton = new wxButton( this, wxID_ANY, _("&Browse..."), wxDefaultPosition, wxDefaultSize, 0 ); + + BrowseButton = new wxButton( this, wxID_ANY, _("IDC_BROWSE_FILES"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer70->Add( BrowseButton, 0, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer69->Add( bSizer70, 0, wxEXPAND, 5 ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( 300 ); + bSizer69->Add( InfoStaticText, 1, wxALL|wxEXPAND, 5 ); - - + + bSizer68->Add( bSizer69, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer68 ); this->Layout(); bSizer68->Fit( this ); - + // Connect Events DirectoryTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( SelectDirectoryWizardPageBase::OnDirectoryTextChanged ), NULL, this ); BrowseButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SelectDirectoryWizardPageBase::OnBrowseButtonClick ), NULL, this ); @@ -2841,38 +2917,39 @@ SelectDirectoryWizardPageBase::~SelectDirectoryWizardPageBase() // Disconnect Events DirectoryTextCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( SelectDirectoryWizardPageBase::OnDirectoryTextChanged ), NULL, this ); BrowseButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( SelectDirectoryWizardPageBase::OnBrowseButtonClick ), NULL, this ); - + } SingleChoiceWizardPageBase::SingleChoiceWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style ) { wxBoxSizer* bSizer71; bSizer71 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer77; bSizer77 = new wxBoxSizer( wxVERTICAL ); - - + + bSizer77->Add( 0, 0, 0, wxEXPAND|wxTOP, 5 ); - + OuterChoicesSizer = new wxBoxSizer( wxVERTICAL ); - + ChoicesSizer = new wxBoxSizer( wxVERTICAL ); - - + + OuterChoicesSizer->Add( ChoicesSizer, 0, wxEXPAND, 5 ); - - + + bSizer77->Add( OuterChoicesSizer, 0, wxEXPAND, 5 ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( -1 ); + bSizer77->Add( InfoStaticText, 1, wxALL|wxEXPAND, 5 ); - - + + bSizer71->Add( bSizer77, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer71 ); this->Layout(); bSizer71->Fit( this ); @@ -2886,194 +2963,207 @@ VolumeCreationProgressWizardPageBase::VolumeCreationProgressWizardPageBase( wxWi { wxBoxSizer* bSizer104; bSizer104 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer105; bSizer105 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer31; sbSizer31 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxEmptyString ), wxVERTICAL ); - + KeySamplesUpperSizer = new wxBoxSizer( wxVERTICAL ); - + KeySamplesUpperInnerSizer = new wxBoxSizer( wxVERTICAL ); - - + + KeySamplesUpperSizer->Add( KeySamplesUpperInnerSizer, 1, wxEXPAND|wxTOP, 3 ); - - + + sbSizer31->Add( KeySamplesUpperSizer, 1, wxEXPAND, 30 ); - + wxFlexGridSizer* fgSizer5; fgSizer5 = new wxFlexGridSizer( 3, 2, 0, 0 ); fgSizer5->SetFlexibleDirection( wxBOTH ); fgSizer5->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - + wxStaticText* m_staticText25; - m_staticText25 = new wxStaticText( this, wxID_ANY, _("Random Pool:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText25 = new wxStaticText( sbSizer31->GetStaticBox(), wxID_ANY, _("IDT_RANDOM_POOL"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText25->Wrap( -1 ); + fgSizer5->Add( m_staticText25, 0, wxALL|wxALIGN_RIGHT|wxALIGN_BOTTOM, 5 ); - + wxBoxSizer* bSizer126; bSizer126 = new wxBoxSizer( wxHORIZONTAL ); - - RandomPoolSampleStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + + RandomPoolSampleStaticText = new wxStaticText( sbSizer31->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); RandomPoolSampleStaticText->Wrap( -1 ); - RandomPoolSampleStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier New") ) ); - + + RandomPoolSampleStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Courier New") ) ); + bSizer126->Add( RandomPoolSampleStaticText, 0, wxEXPAND|wxTOP|wxRIGHT|wxALIGN_BOTTOM, 7 ); - - DisplayKeysCheckBox = new wxCheckBox( this, wxID_ANY, _("Show"), wxDefaultPosition, wxDefaultSize, 0 ); + + DisplayKeysCheckBox = new wxCheckBox( sbSizer31->GetStaticBox(), wxID_ANY, _("IDC_DISPLAY_POOL_CONTENTS"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer126->Add( DisplayKeysCheckBox, 0, wxEXPAND|wxRIGHT, 5 ); - - + + fgSizer5->Add( bSizer126, 1, wxEXPAND|wxALIGN_BOTTOM, 5 ); - + wxStaticText* m_staticText28; - m_staticText28 = new wxStaticText( this, wxID_ANY, _("Header Key:"), wxDefaultPosition, wxSize( -1,-1 ), 0 ); + m_staticText28 = new wxStaticText( sbSizer31->GetStaticBox(), wxID_ANY, _("IDT_HEADER_KEY"), wxDefaultPosition, wxSize( -1,-1 ), 0 ); m_staticText28->Wrap( -1 ); + fgSizer5->Add( m_staticText28, 0, wxALIGN_RIGHT|wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_BOTTOM, 5 ); - - HeaderKeySampleStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + + HeaderKeySampleStaticText = new wxStaticText( sbSizer31->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); HeaderKeySampleStaticText->Wrap( -1 ); - HeaderKeySampleStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier New") ) ); - + + HeaderKeySampleStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Courier New") ) ); + fgSizer5->Add( HeaderKeySampleStaticText, 0, wxALIGN_BOTTOM|wxEXPAND|wxTOP|wxRIGHT, 2 ); - + wxStaticText* m_staticText29; - m_staticText29 = new wxStaticText( this, wxID_ANY, _("Master Key:"), wxDefaultPosition, wxDefaultSize, 0 ); + m_staticText29 = new wxStaticText( sbSizer31->GetStaticBox(), wxID_ANY, _("IDT_MASTER_KEY"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText29->Wrap( -1 ); + fgSizer5->Add( m_staticText29, 0, wxALIGN_RIGHT|wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_BOTTOM, 5 ); - - MasterKeySampleStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + + MasterKeySampleStaticText = new wxStaticText( sbSizer31->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); MasterKeySampleStaticText->Wrap( -1 ); - MasterKeySampleStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), 70, 90, 90, false, wxT("Courier New") ) ); - + + MasterKeySampleStaticText->SetFont( wxFont( wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, wxT("Courier New") ) ); + fgSizer5->Add( MasterKeySampleStaticText, 0, wxEXPAND|wxALIGN_BOTTOM|wxTOP|wxRIGHT, 2 ); - - + + sbSizer31->Add( fgSizer5, 0, wxEXPAND, 5 ); - - + + bSizer105->Add( sbSizer31, 0, wxALL|wxEXPAND, 5 ); - + wxStaticBoxSizer* sbSizer45; - sbSizer45 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Randomness Collected From Mouse Movements") ), wxVERTICAL ); - - CollectedEntropy = new wxGauge( this, wxID_ANY, 2560, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH ); - CollectedEntropy->SetValue( 0 ); + sbSizer45 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_ENTROPY_BAR") ), wxVERTICAL ); + + CollectedEntropy = new wxGauge( sbSizer45->GetStaticBox(), wxID_ANY, 2560, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH ); + CollectedEntropy->SetValue( 0 ); sbSizer45->Add( CollectedEntropy, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer105->Add( sbSizer45, 0, wxEXPAND|wxLEFT|wxRIGHT, 5 ); - + wxStaticBoxSizer* sbSizer32; sbSizer32 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, wxEmptyString ), wxVERTICAL ); - + wxBoxSizer* bSizer106; bSizer106 = new wxBoxSizer( wxHORIZONTAL ); - - ProgressGauge = new wxGauge( this, wxID_ANY, 100, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH ); + + ProgressGauge = new wxGauge( sbSizer32->GetStaticBox(), wxID_ANY, 100, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH ); bSizer106->Add( ProgressGauge, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - - AbortButton = new wxButton( this, wxID_ANY, _("Abort"), wxDefaultPosition, wxDefaultSize, 0 ); + + AbortButton = new wxButton( sbSizer32->GetStaticBox(), wxID_ANY, _("IDC_ABORT_BUTTON"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer106->Add( AbortButton, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - - + + sbSizer32->Add( bSizer106, 0, wxEXPAND, 5 ); - + wxGridSizer* gSizer6; gSizer6 = new wxGridSizer( 1, 3, 0, 0 ); - + wxBoxSizer* bSizer108; bSizer108 = new wxBoxSizer( wxHORIZONTAL ); - - m_staticText31 = new wxStaticText( this, wxID_ANY, _("Done"), wxDefaultPosition, wxDefaultSize, 0 ); + + m_staticText31 = new wxStaticText( sbSizer32->GetStaticBox(), wxID_ANY, _("IDT_DONE"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText31->Wrap( -1 ); + bSizer108->Add( m_staticText31, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - m_panel12 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxSUNKEN_BORDER ); + + m_panel12 = new wxPanel( sbSizer32->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxSize( -1,-1 ), wxSUNKEN_BORDER ); wxBoxSizer* bSizer115; bSizer115 = new wxBoxSizer( wxHORIZONTAL ); - + SizeDoneStaticText = new wxStaticText( m_panel12, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT|wxST_NO_AUTORESIZE ); SizeDoneStaticText->Wrap( -1 ); + bSizer115->Add( SizeDoneStaticText, 1, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxALL, 3 ); - - + + m_panel12->SetSizer( bSizer115 ); m_panel12->Layout(); bSizer115->Fit( m_panel12 ); bSizer108->Add( m_panel12, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - - + + gSizer6->Add( bSizer108, 1, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 ); - + wxBoxSizer* bSizer1081; bSizer1081 = new wxBoxSizer( wxHORIZONTAL ); - - m_staticText311 = new wxStaticText( this, wxID_ANY, _("Speed"), wxDefaultPosition, wxDefaultSize, 0 ); + + m_staticText311 = new wxStaticText( sbSizer32->GetStaticBox(), wxID_ANY, _("IDT_SPEED"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText311->Wrap( -1 ); + bSizer1081->Add( m_staticText311, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - m_panel121 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER ); + + m_panel121 = new wxPanel( sbSizer32->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER ); wxBoxSizer* bSizer1151; bSizer1151 = new wxBoxSizer( wxHORIZONTAL ); - + SpeedStaticText = new wxStaticText( m_panel121, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT|wxST_NO_AUTORESIZE ); SpeedStaticText->Wrap( -1 ); + bSizer1151->Add( SpeedStaticText, 1, wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 3 ); - - + + m_panel121->SetSizer( bSizer1151 ); m_panel121->Layout(); bSizer1151->Fit( m_panel121 ); bSizer1081->Add( m_panel121, 1, wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 ); - - + + gSizer6->Add( bSizer1081, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 ); - + wxBoxSizer* bSizer1082; bSizer1082 = new wxBoxSizer( wxHORIZONTAL ); - - m_staticText312 = new wxStaticText( this, wxID_ANY, _("Left"), wxDefaultPosition, wxDefaultSize, 0 ); + + m_staticText312 = new wxStaticText( sbSizer32->GetStaticBox(), wxID_ANY, _("IDT_LEFT"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText312->Wrap( -1 ); + bSizer1082->Add( m_staticText312, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT, 5 ); - - m_panel122 = new wxPanel( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL ); + + m_panel122 = new wxPanel( sbSizer32->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxSUNKEN_BORDER|wxTAB_TRAVERSAL ); wxBoxSizer* bSizer1152; bSizer1152 = new wxBoxSizer( wxHORIZONTAL ); - + TimeLeftStaticText = new wxStaticText( m_panel122, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxALIGN_RIGHT|wxST_NO_AUTORESIZE ); TimeLeftStaticText->Wrap( -1 ); + bSizer1152->Add( TimeLeftStaticText, 1, wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND, 3 ); - - + + m_panel122->SetSizer( bSizer1152 ); m_panel122->Layout(); bSizer1152->Fit( m_panel122 ); bSizer1082->Add( m_panel122, 1, wxALL|wxEXPAND, 5 ); - - + + gSizer6->Add( bSizer1082, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); - - + + sbSizer32->Add( gSizer6, 0, wxEXPAND|wxTOP, 2 ); - - + + bSizer105->Add( sbSizer32, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( -1 ); + bSizer105->Add( InfoStaticText, 0, wxBOTTOM|wxLEFT|wxRIGHT, 5 ); - - + + bSizer104->Add( bSizer105, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer104 ); this->Layout(); bSizer104->Fit( this ); - + // Connect Events DisplayKeysCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeCreationProgressWizardPageBase::OnDisplayKeysCheckBoxClick ), NULL, this ); AbortButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeCreationProgressWizardPageBase::OnAbortButtonClick ), NULL, this ); @@ -3084,80 +3174,81 @@ VolumeCreationProgressWizardPageBase::~VolumeCreationProgressWizardPageBase() // Disconnect Events DisplayKeysCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeCreationProgressWizardPageBase::OnDisplayKeysCheckBoxClick ), NULL, this ); AbortButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeCreationProgressWizardPageBase::OnAbortButtonClick ), NULL, this ); - + } VolumeLocationWizardPageBase::VolumeLocationWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style ) { wxBoxSizer* bSizer86; bSizer86 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer87; bSizer87 = new wxBoxSizer( wxVERTICAL ); - - + + bSizer87->Add( 0, 0, 0, wxEXPAND|wxTOP, 5 ); - + wxBoxSizer* bSizer88; bSizer88 = new wxBoxSizer( wxHORIZONTAL ); - + wxBoxSizer* bSizer89; bSizer89 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer126; bSizer126 = new wxBoxSizer( wxHORIZONTAL ); - - VolumePathComboBox = new wxComboBox( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_DROPDOWN ); + + VolumePathComboBox = new wxComboBox( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, NULL, wxCB_DROPDOWN ); bSizer126->Add( VolumePathComboBox, 1, wxALL|wxALIGN_CENTER_VERTICAL, 5 ); - + wxBoxSizer* bSizer90; bSizer90 = new wxBoxSizer( wxVERTICAL ); - - SelectFileButton = new wxButton( this, wxID_ANY, _("Select &File..."), wxDefaultPosition, wxDefaultSize, 0 ); + + SelectFileButton = new wxButton( this, wxID_ANY, _("IDC_SELECT_FILE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer90->Add( SelectFileButton, 0, wxALL|wxEXPAND, 5 ); - - SelectDeviceButton = new wxButton( this, wxID_ANY, _("Select D&evice..."), wxDefaultPosition, wxDefaultSize, 0 ); + + SelectDeviceButton = new wxButton( this, wxID_ANY, _("IDC_SELECT_DEVICE"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer90->Add( SelectDeviceButton, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer126->Add( bSizer90, 0, wxALIGN_CENTER_VERTICAL, 5 ); - - + + bSizer89->Add( bSizer126, 0, wxEXPAND, 5 ); - + wxBoxSizer* bSizer91; bSizer91 = new wxBoxSizer( wxHORIZONTAL ); - - + + bSizer91->Add( 0, 0, 0, wxLEFT, 5 ); - - NoHistoryCheckBox = new wxCheckBox( this, wxID_ANY, _("&Never save history"), wxDefaultPosition, wxDefaultSize, 0 ); + + NoHistoryCheckBox = new wxCheckBox( this, wxID_ANY, _("IDC_NO_HISTORY"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer91->Add( NoHistoryCheckBox, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer89->Add( bSizer91, 0, wxEXPAND, 5 ); - - + + bSizer88->Add( bSizer89, 1, wxEXPAND, 5 ); - - + + bSizer87->Add( bSizer88, 0, wxEXPAND, 5 ); - - + + bSizer87->Add( 0, 0, 0, wxEXPAND|wxBOTTOM, 5 ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( -1 ); + bSizer87->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer86->Add( bSizer87, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer86 ); this->Layout(); bSizer86->Fit( this ); - + // Connect Events VolumePathComboBox->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnVolumePathTextChanged ), NULL, this ); SelectFileButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnSelectFileButtonClick ), NULL, this ); @@ -3172,64 +3263,66 @@ VolumeLocationWizardPageBase::~VolumeLocationWizardPageBase() SelectFileButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnSelectFileButtonClick ), NULL, this ); SelectDeviceButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnSelectDeviceButtonClick ), NULL, this ); NoHistoryCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeLocationWizardPageBase::OnNoHistoryCheckBoxClick ), NULL, this ); - + } VolumeFormatOptionsWizardPageBase::VolumeFormatOptionsWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style ) { wxBoxSizer* bSizer124; bSizer124 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer125; bSizer125 = new wxBoxSizer( wxVERTICAL ); - + wxStaticBoxSizer* sbSizer33; - sbSizer33 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Filesystem Options") ), wxVERTICAL ); - + sbSizer33 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_FORMAT_OPTIONS") ), wxVERTICAL ); + wxFlexGridSizer* fgSizer6; fgSizer6 = new wxFlexGridSizer( 2, 2, 0, 0 ); fgSizer6->SetFlexibleDirection( wxBOTH ); fgSizer6->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); - - m_staticText43 = new wxStaticText( this, wxID_ANY, _("Filesystem type:"), wxDefaultPosition, wxDefaultSize, 0 ); + + m_staticText43 = new wxStaticText( sbSizer33->GetStaticBox(), wxID_ANY, _("IDT_FILESYSTEM"), wxDefaultPosition, wxDefaultSize, 0 ); m_staticText43->Wrap( -1 ); + fgSizer6->Add( m_staticText43, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT, 5 ); - + wxArrayString FilesystemTypeChoiceChoices; - FilesystemTypeChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, FilesystemTypeChoiceChoices, 0 ); + FilesystemTypeChoice = new wxChoice( sbSizer33->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, FilesystemTypeChoiceChoices, 0 ); FilesystemTypeChoice->SetSelection( 0 ); fgSizer6->Add( FilesystemTypeChoice, 0, wxALL, 5 ); - - + + sbSizer33->Add( fgSizer6, 1, wxEXPAND, 5 ); - - + + bSizer125->Add( sbSizer33, 0, wxEXPAND|wxALL, 5 ); - + wxStaticBoxSizer* sbSizer34; - sbSizer34 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Volume Format Options") ), wxVERTICAL ); - - QuickFormatCheckBox = new wxCheckBox( this, wxID_ANY, _("Quick format"), wxDefaultPosition, wxDefaultSize, 0 ); + sbSizer34 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("IDT_FORMAT_OPTIONS") ), wxVERTICAL ); + + QuickFormatCheckBox = new wxCheckBox( sbSizer34->GetStaticBox(), wxID_ANY, _("IDC_QUICKFORMAT"), wxDefaultPosition, wxDefaultSize, 0 ); sbSizer34->Add( QuickFormatCheckBox, 0, wxALL, 5 ); - - + + bSizer125->Add( sbSizer34, 0, wxEXPAND|wxALL, 5 ); - - + + bSizer125->Add( 0, 0, 1, wxEXPAND|wxTOP|wxBOTTOM, 5 ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( -1 ); + bSizer125->Add( InfoStaticText, 0, wxALL, 5 ); - - + + bSizer124->Add( bSizer125, 0, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer124 ); this->Layout(); bSizer124->Fit( this ); - + // Connect Events FilesystemTypeChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( VolumeFormatOptionsWizardPageBase::OnFilesystemTypeSelected ), NULL, this ); QuickFormatCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeFormatOptionsWizardPageBase::OnQuickFormatCheckBoxClick ), NULL, this ); @@ -3240,109 +3333,136 @@ VolumeFormatOptionsWizardPageBase::~VolumeFormatOptionsWizardPageBase() // Disconnect Events FilesystemTypeChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( VolumeFormatOptionsWizardPageBase::OnFilesystemTypeSelected ), NULL, this ); QuickFormatCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumeFormatOptionsWizardPageBase::OnQuickFormatCheckBoxClick ), NULL, this ); - + } VolumePasswordPanelBase::VolumePasswordPanelBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : wxPanel( parent, id, pos, size, style ) { wxBoxSizer* bSizer7; bSizer7 = new wxBoxSizer( wxVERTICAL ); - + GridBagSizer = new wxGridBagSizer( 0, 0 ); GridBagSizer->SetFlexibleDirection( wxBOTH ); GridBagSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); GridBagSizer->SetEmptyCellSize( wxSize( 0,0 ) ); - - PasswordStaticText = new wxStaticText( this, wxID_ANY, _("Password:"), wxDefaultPosition, wxDefaultSize, 0 ); + + PasswordStaticText = new wxStaticText( this, wxID_ANY, _("IDT_NEW_PASSWORD"), wxDefaultPosition, wxDefaultSize, 0 ); PasswordStaticText->Wrap( -1 ); + GridBagSizer->Add( PasswordStaticText, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM|wxRIGHT, 5 ); - + PasswordTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); + #ifdef __WXGTK__ + if ( !PasswordTextCtrl->HasFlag( wxTE_MULTILINE ) ) + { + PasswordTextCtrl->SetMaxLength( 1 ); + } + #else PasswordTextCtrl->SetMaxLength( 1 ); + #endif PasswordTextCtrl->SetMinSize( wxSize( 232,-1 ) ); - + GridBagSizer->Add( PasswordTextCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 2 ), wxBOTTOM|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 ); - - ConfirmPasswordStaticText = new wxStaticText( this, wxID_ANY, _("Confirm password:"), wxDefaultPosition, wxDefaultSize, 0 ); + + ConfirmPasswordStaticText = new wxStaticText( this, wxID_ANY, _("IDT_CONFIRM_PASSWORD"), wxDefaultPosition, wxDefaultSize, 0 ); ConfirmPasswordStaticText->Wrap( -1 ); + GridBagSizer->Add( ConfirmPasswordStaticText, wxGBPosition( 2, 0 ), wxGBSpan( 1, 1 ), wxBOTTOM|wxRIGHT|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT, 5 ); - + ConfirmPasswordTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); + #ifdef __WXGTK__ + if ( !ConfirmPasswordTextCtrl->HasFlag( wxTE_MULTILINE ) ) + { + ConfirmPasswordTextCtrl->SetMaxLength( 1 ); + } + #else ConfirmPasswordTextCtrl->SetMaxLength( 1 ); + #endif ConfirmPasswordTextCtrl->SetMinSize( wxSize( 232,-1 ) ); - + GridBagSizer->Add( ConfirmPasswordTextCtrl, wxGBPosition( 2, 1 ), wxGBSpan( 1, 2 ), wxBOTTOM|wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 ); - - VolumePimStaticText = new wxStaticText( this, wxID_ANY, _("Volume PIM:"), wxDefaultPosition, wxDefaultSize, 0 ); + + VolumePimStaticText = new wxStaticText( this, wxID_ANY, _("IDT_PIM"), wxDefaultPosition, wxDefaultSize, 0 ); VolumePimStaticText->Wrap( -1 ); + GridBagSizer->Add( VolumePimStaticText, wxGBPosition( 3, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM|wxRIGHT, 5 ); - + VolumePimTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); + #ifdef __WXGTK__ + if ( !VolumePimTextCtrl->HasFlag( wxTE_MULTILINE ) ) + { VolumePimTextCtrl->SetMaxLength( 7 ); + } + #else + VolumePimTextCtrl->SetMaxLength( 7 ); + #endif GridBagSizer->Add( VolumePimTextCtrl, wxGBPosition( 3, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxEXPAND, 5 ); - - VolumePimHelpStaticText = new wxStaticText( this, wxID_ANY, _("(Empty or 0 for default iterations)"), wxDefaultPosition, wxDefaultSize, 0 ); + + VolumePimHelpStaticText = new wxStaticText( this, wxID_ANY, _("IDC_PIM_HELP"), wxDefaultPosition, wxDefaultSize, 0 ); VolumePimHelpStaticText->Wrap( -1 ); + GridBagSizer->Add( VolumePimHelpStaticText, wxGBPosition( 3, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxBOTTOM|wxLEFT|wxRIGHT, 5 ); - - PimCheckBox = new wxCheckBox( this, wxID_ANY, _("Use PIM"), wxDefaultPosition, wxDefaultSize, 0 ); + + PimCheckBox = new wxCheckBox( this, wxID_ANY, _("IDC_NEW_PIM_ENABLE"), wxDefaultPosition, wxDefaultSize, 0 ); GridBagSizer->Add( PimCheckBox, wxGBPosition( 4, 1 ), wxGBSpan( 1, 2 ), wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - - CacheCheckBox = new wxCheckBox( this, wxID_ANY, _("Cach&e passwords and keyfiles in memory "), wxDefaultPosition, wxDefaultSize, 0 ); + + CacheCheckBox = new wxCheckBox( this, wxID_ANY, _("IDC_CACHE"), wxDefaultPosition, wxDefaultSize, 0 ); GridBagSizer->Add( CacheCheckBox, wxGBPosition( 5, 1 ), wxGBSpan( 1, 2 ), wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - - DisplayPasswordCheckBox = new wxCheckBox( this, wxID_ANY, _("&Display password"), wxDefaultPosition, wxDefaultSize, 0 ); + + DisplayPasswordCheckBox = new wxCheckBox( this, wxID_ANY, _("IDC_SHOW_PASSWORD_MO"), wxDefaultPosition, wxDefaultSize, 0 ); GridBagSizer->Add( DisplayPasswordCheckBox, wxGBPosition( 6, 1 ), wxGBSpan( 1, 2 ), wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 ); - - UseKeyfilesCheckBox = new wxCheckBox( this, wxID_ANY, _("U&se keyfiles"), wxDefaultPosition, wxDefaultSize, 0 ); + + UseKeyfilesCheckBox = new wxCheckBox( this, wxID_ANY, _("IDC_KEYFILES_ENABLE_HIDVOL_PROT"), wxDefaultPosition, wxDefaultSize, 0 ); GridBagSizer->Add( UseKeyfilesCheckBox, wxGBPosition( 7, 1 ), wxGBSpan( 1, 1 ), wxTOP|wxRIGHT|wxLEFT, 5 ); - - KeyfilesButton = new wxButton( this, wxID_ANY, _("&Keyfiles..."), wxDefaultPosition, wxDefaultSize, 0 ); + + KeyfilesButton = new wxButton( this, wxID_ANY, _("IDC_KEYFILES_HIDVOL_PROT"), wxDefaultPosition, wxDefaultSize, 0 ); GridBagSizer->Add( KeyfilesButton, wxGBPosition( 7, 2 ), wxGBSpan( 1, 1 ), wxALIGN_RIGHT|wxALIGN_BOTTOM|wxLEFT, 5 ); - + Pkcs5PrfSizer = new wxBoxSizer( wxVERTICAL ); - - + + GridBagSizer->Add( Pkcs5PrfSizer, wxGBPosition( 8, 1 ), wxGBSpan( 1, 1 ), wxEXPAND|wxTOP|wxBOTTOM, 5 ); - - Pkcs5PrfStaticText = new wxStaticText( this, wxID_ANY, _("PKCS-5 PRF:"), wxDefaultPosition, wxDefaultSize, 0 ); + + Pkcs5PrfStaticText = new wxStaticText( this, wxID_ANY, _("IDT_NEW_PKCS5_PRF"), wxDefaultPosition, wxDefaultSize, 0 ); Pkcs5PrfStaticText->Wrap( -1 ); + GridBagSizer->Add( Pkcs5PrfStaticText, wxGBPosition( 9, 0 ), wxGBSpan( 1, 1 ), wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 ); - - wxString Pkcs5PrfChoiceChoices[] = { _("Unchanged") }; + + wxString Pkcs5PrfChoiceChoices[] = { _("UNCHANGED") }; int Pkcs5PrfChoiceNChoices = sizeof( Pkcs5PrfChoiceChoices ) / sizeof( wxString ); Pkcs5PrfChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, Pkcs5PrfChoiceNChoices, Pkcs5PrfChoiceChoices, 0 ); Pkcs5PrfChoice->SetSelection( 0 ); GridBagSizer->Add( Pkcs5PrfChoice, wxGBPosition( 9, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 ); - - TrueCryptModeCheckBox = new wxCheckBox( this, wxID_ANY, _("TrueCrypt Mode"), wxDefaultPosition, wxDefaultSize, 0 ); + + TrueCryptModeCheckBox = new wxCheckBox( this, wxID_ANY, _("IDC_TRUECRYPT_MODE"), wxDefaultPosition, wxDefaultSize, 0 ); GridBagSizer->Add( TrueCryptModeCheckBox, wxGBPosition( 9, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxLEFT, 5 ); - - HeaderWipeCountText = new wxStaticText( this, wxID_ANY, _("Header Wipe:"), wxDefaultPosition, wxDefaultSize, 0 ); + + HeaderWipeCountText = new wxStaticText( this, wxID_ANY, _("IDT_WIPE_MODE"), wxDefaultPosition, wxDefaultSize, 0 ); HeaderWipeCountText->Wrap( -1 ); + GridBagSizer->Add( HeaderWipeCountText, wxGBPosition( 10, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxRIGHT, 5 ); - - wxString HeaderWipeCountChoices[] = { _("1-pass"), _("3-pass"), _("7-pass"), _("35-pass"), _("256-pass") }; + + wxString HeaderWipeCountChoices[] = { _("WIPE_MODE_1_RAND"), _("WIPE_MODE_3_DOD_5220"), _("WIPE_MODE_7_DOD_5220"), _("WIPE_MODE_35_GUTMANN"), _("WIPE_MODE_256") }; int HeaderWipeCountNChoices = sizeof( HeaderWipeCountChoices ) / sizeof( wxString ); HeaderWipeCount = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, HeaderWipeCountNChoices, HeaderWipeCountChoices, 0 ); HeaderWipeCount->SetSelection( 1 ); GridBagSizer->Add( HeaderWipeCount, wxGBPosition( 10, 1 ), wxGBSpan( 1, 1 ), wxALL, 5 ); - + PasswordPlaceholderSizer = new wxBoxSizer( wxVERTICAL ); - - + + GridBagSizer->Add( PasswordPlaceholderSizer, wxGBPosition( 11, 1 ), wxGBSpan( 1, 2 ), wxTOP|wxEXPAND, 5 ); - - + + GridBagSizer->AddGrowableCol( 1 ); - + bSizer7->Add( GridBagSizer, 1, wxALL|wxEXPAND, 5 ); - - + + this->SetSizer( bSizer7 ); this->Layout(); bSizer7->Fit( this ); - + // Connect Events PasswordTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumePasswordPanelBase::OnTextChanged ), NULL, this ); ConfirmPasswordTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumePasswordPanelBase::OnTextChanged ), NULL, this ); @@ -3369,30 +3489,31 @@ VolumePasswordPanelBase::~VolumePasswordPanelBase() KeyfilesButton->Disconnect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonRightDown ), NULL, this ); KeyfilesButton->Disconnect( wxEVT_RIGHT_UP, wxMouseEventHandler( VolumePasswordPanelBase::OnKeyfilesButtonRightClick ), NULL, this ); TrueCryptModeCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumePasswordPanelBase::OnTrueCryptModeChecked ), NULL, this ); - + } VolumePasswordWizardPageBase::VolumePasswordWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style ) { wxBoxSizer* bSizer101; bSizer101 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer102; bSizer102 = new wxBoxSizer( wxVERTICAL ); - + PasswordPanelSizer = new wxBoxSizer( wxVERTICAL ); - - + + bSizer102->Add( PasswordPanelSizer, 0, wxEXPAND, 5 ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( -1 ); + bSizer102->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer101->Add( bSizer102, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer101 ); this->Layout(); bSizer101->Fit( this ); @@ -3406,53 +3527,63 @@ VolumePimWizardPageBase::VolumePimWizardPageBase( wxWindow* parent, wxWindowID i { wxBoxSizer* bSizer101; bSizer101 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer102; bSizer102 = new wxBoxSizer( wxVERTICAL ); - + PimPanelSizer = new wxBoxSizer( wxVERTICAL ); - + PimSizer = new wxBoxSizer( wxHORIZONTAL ); - - VolumePimStaticText = new wxStaticText( this, wxID_ANY, _("Volume PIM:"), wxDefaultPosition, wxDefaultSize, 0 ); + + VolumePimStaticText = new wxStaticText( this, wxID_ANY, _("IDT_PIM"), wxDefaultPosition, wxDefaultSize, 0 ); VolumePimStaticText->Wrap( -1 ); + PimSizer->Add( VolumePimStaticText, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - + VolumePimTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); + #ifdef __WXGTK__ + if ( !VolumePimTextCtrl->HasFlag( wxTE_MULTILINE ) ) + { + VolumePimTextCtrl->SetMaxLength( 7 ); + } + #else VolumePimTextCtrl->SetMaxLength( 7 ); + #endif PimSizer->Add( VolumePimTextCtrl, 0, wxALL, 5 ); - - VolumePimHelpStaticText = new wxStaticText( this, wxID_ANY, _("(Empty or 0 for default iterations)"), wxDefaultPosition, wxDefaultSize, 0 ); + + VolumePimHelpStaticText = new wxStaticText( this, wxID_ANY, _("IDC_PIM_HELP"), wxDefaultPosition, wxDefaultSize, 0 ); VolumePimHelpStaticText->Wrap( -1 ); + PimSizer->Add( VolumePimHelpStaticText, 1, wxALIGN_CENTER_VERTICAL|wxALL, 5 ); - - + + PimPanelSizer->Add( PimSizer, 1, wxEXPAND, 5 ); - + wxBoxSizer* bSizer166; bSizer166 = new wxBoxSizer( wxHORIZONTAL ); - - DisplayPimCheckBox = new wxCheckBox( this, wxID_ANY, _("&Display PIM"), wxDefaultPosition, wxDefaultSize, 0 ); + + DisplayPimCheckBox = new wxCheckBox( this, wxID_ANY, _("IDC_SHOW_PIM"), wxDefaultPosition, wxDefaultSize, 0 ); bSizer166->Add( DisplayPimCheckBox, 1, wxALL|wxEXPAND, 5 ); - - + + PimPanelSizer->Add( bSizer166, 1, wxEXPAND, 5 ); - - + + bSizer102->Add( PimPanelSizer, 0, wxEXPAND, 5 ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( -1 ); + bSizer102->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer101->Add( bSizer102, 1, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer101 ); this->Layout(); bSizer101->Fit( this ); - + // Connect Events VolumePimTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumePimWizardPageBase::OnPimChanged ), NULL, this ); DisplayPimCheckBox->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumePimWizardPageBase::OnDisplayPimCheckBoxClick ), NULL, this ); @@ -3463,57 +3594,58 @@ VolumePimWizardPageBase::~VolumePimWizardPageBase() // Disconnect Events VolumePimTextCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumePimWizardPageBase::OnPimChanged ), NULL, this ); DisplayPimCheckBox->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( VolumePimWizardPageBase::OnDisplayPimCheckBoxClick ), NULL, this ); - + } VolumeSizeWizardPageBase::VolumeSizeWizardPageBase( wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size, long style ) : WizardPage( parent, id, pos, size, style ) { wxBoxSizer* bSizer98; bSizer98 = new wxBoxSizer( wxVERTICAL ); - + wxBoxSizer* bSizer99; bSizer99 = new wxBoxSizer( wxVERTICAL ); - - + + bSizer99->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 ); - + wxBoxSizer* bSizer100; bSizer100 = new wxBoxSizer( wxHORIZONTAL ); - + VolumeSizeTextCtrl = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); - VolumeSizeTextCtrl->SetMaxLength( 0 ); bSizer100->Add( VolumeSizeTextCtrl, 0, wxALL, 5 ); - + wxArrayString VolumeSizePrefixChoiceChoices; VolumeSizePrefixChoice = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, VolumeSizePrefixChoiceChoices, 0 ); VolumeSizePrefixChoice->SetSelection( 0 ); bSizer100->Add( VolumeSizePrefixChoice, 0, wxALL, 5 ); - - + + bSizer99->Add( bSizer100, 0, wxEXPAND, 5 ); - - + + bSizer99->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 ); - + FreeSpaceStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); FreeSpaceStaticText->Wrap( -1 ); + bSizer99->Add( FreeSpaceStaticText, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer99->Add( 0, 0, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 ); - + InfoStaticText = new wxStaticText( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); InfoStaticText->Wrap( -1 ); + bSizer99->Add( InfoStaticText, 0, wxALL|wxEXPAND, 5 ); - - + + bSizer98->Add( bSizer99, 0, wxEXPAND, 5 ); - - + + this->SetSizer( bSizer98 ); this->Layout(); bSizer98->Fit( this ); - + // Connect Events VolumeSizeTextCtrl->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumeSizeWizardPageBase::OnVolumeSizeTextChanged ), NULL, this ); VolumeSizePrefixChoice->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( VolumeSizeWizardPageBase::OnVolumeSizePrefixSelected ), NULL, this ); @@ -3524,31 +3656,32 @@ VolumeSizeWizardPageBase::~VolumeSizeWizardPageBase() // Disconnect Events VolumeSizeTextCtrl->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( VolumeSizeWizardPageBase::OnVolumeSizeTextChanged ), NULL, this ); VolumeSizePrefixChoice->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( VolumeSizeWizardPageBase::OnVolumeSizePrefixSelected ), NULL, this ); - + } WaitDialogBase::WaitDialogBase( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : wxDialog( parent, id, title, pos, size, style ) { this->SetSizeHints( wxDefaultSize, wxDefaultSize ); - + wxBoxSizer* bSizer160; bSizer160 = new wxBoxSizer( wxVERTICAL ); - + WaitStaticText = new wxStaticText( this, wxID_ANY, _("MyLabel"), wxDefaultPosition, wxDefaultSize, wxALIGN_CENTRE ); WaitStaticText->Wrap( -1 ); + bSizer160->Add( WaitStaticText, 0, wxALIGN_CENTER_HORIZONTAL|wxALL|wxEXPAND, 5 ); - + WaitProgessBar = new wxGauge( this, wxID_ANY, 100, wxDefaultPosition, wxDefaultSize, wxGA_HORIZONTAL|wxGA_SMOOTH ); - WaitProgessBar->SetValue( 0 ); + WaitProgessBar->SetValue( 0 ); bSizer160->Add( WaitProgessBar, 0, wxALL|wxEXPAND, 5 ); - - + + this->SetSizer( bSizer160 ); this->Layout(); bSizer160->Fit( this ); - + this->Centre( wxBOTH ); - + // Connect Events this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( WaitDialogBase::OnWaitDialogClose ) ); this->Connect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( WaitDialogBase::OnWaitDialogInit ) ); @@ -3559,5 +3692,5 @@ WaitDialogBase::~WaitDialogBase() // Disconnect Events this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( WaitDialogBase::OnWaitDialogClose ) ); this->Disconnect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( WaitDialogBase::OnWaitDialogInit ) ); - + } diff --git a/src/Main/Forms/Forms.h b/src/Main/Forms/Forms.h index f28f6358..3ea89763 100644 --- a/src/Main/Forms/Forms.h +++ b/src/Main/Forms/Forms.h @@ -41,6 +41,8 @@ #include #include +#include "international.h" + /////////////////////////////////////////////////////////////////////////// namespace VeraCrypt @@ -244,7 +246,7 @@ namespace VeraCrypt public: - BenchmarkDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("VeraCrypt - Algorithms Benchmark"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + BenchmarkDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_BENCHMARK_DLG"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); ~BenchmarkDialogBase(); }; @@ -284,19 +286,19 @@ namespace VeraCrypt protected: wxListCtrl* DeviceListCtrl; - wxStdDialogButtonSizer* StdButtons; - wxButton* StdButtonsOK; - wxButton* StdButtonsCancel; + wxButton* CancelButton; + wxButton* OKButton; // Virtual event handlers, overide them in your derived class virtual void OnListItemActivated( wxListEvent& event ) { event.Skip(); } virtual void OnListItemDeselected( wxListEvent& event ) { event.Skip(); } virtual void OnListItemSelected( wxListEvent& event ) { event.Skip(); } + virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); } public: - DeviceSelectionDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Select a Partition or Device"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE ); + DeviceSelectionDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_RAWDEVICES_DLG"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE ); ~DeviceSelectionDialogBase(); }; @@ -335,7 +337,7 @@ namespace VeraCrypt public: - EncryptionTestDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("VeraCrypt - Test Vectors"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + EncryptionTestDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_CIPHER_TEST_DLG"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); ~EncryptionTestDialogBase(); }; @@ -368,7 +370,7 @@ namespace VeraCrypt public: - FavoriteVolumesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Favorite Volumes"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + FavoriteVolumesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_FAVORITE_VOLUMES"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); ~FavoriteVolumesDialogBase(); }; @@ -398,7 +400,7 @@ namespace VeraCrypt public: - KeyfilesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Select Keyfiles"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + KeyfilesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("SELECT_TOKEN_KEYFILES"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); ~KeyfilesDialogBase(); }; @@ -455,7 +457,7 @@ namespace VeraCrypt public: - LegalNoticesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("VeraCrypt - Legal Notices"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + LegalNoticesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("LEGAL_NOTICES_DLG_TITLE"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); ~LegalNoticesDialogBase(); }; @@ -507,7 +509,7 @@ namespace VeraCrypt public: - MountOptionsDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Enter VeraCrypt Volume Password"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE ); + MountOptionsDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_PASSWORD_DLG"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE ); ~MountOptionsDialogBase(); }; @@ -522,17 +524,17 @@ namespace VeraCrypt protected: wxChoice* SecurityTokenChoice; wxTextCtrl* KeyfileNameTextCtrl; - wxStdDialogButtonSizer* StdButtons; - wxButton* StdButtonsOK; - wxButton* StdButtonsCancel; + wxButton* CancelButton; + wxButton* OKButton; // Virtual event handlers, overide them in your derived class virtual void OnKeyfileNameChanged( wxCommandEvent& event ) { event.Skip(); } + virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); } public: - NewSecurityTokenKeyfileDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("New Security Token Keyfile Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + NewSecurityTokenKeyfileDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_TOKEN_PREFERENCES"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE ); ~NewSecurityTokenKeyfileDialogBase(); }; @@ -545,6 +547,7 @@ namespace VeraCrypt private: protected: + wxBoxSizer* bSizer32; wxNotebook* PreferencesNotebook; wxPanel* SecurityPage; wxStaticBoxSizer* AutoDismountSizer; @@ -600,9 +603,8 @@ namespace VeraCrypt wxButton* RemoveHotkeyButton; wxCheckBox* BeepAfterHotkeyMountDismountCheckBox; wxCheckBox* DisplayMessageAfterHotkeyDismountCheckBox; - wxStdDialogButtonSizer* StdButtons; - wxButton* StdButtonsOK; - wxButton* StdButtonsCancel; + wxButton* OKButton; + wxButton* CancelButton; // Virtual event handlers, overide them in your derived class virtual void OnClose( wxCloseEvent& event ) { event.Skip(); } @@ -618,7 +620,6 @@ namespace VeraCrypt virtual void OnHotkeyListItemSelected( wxListEvent& event ) { event.Skip(); } virtual void OnAssignHotkeyButtonClick( wxCommandEvent& event ) { event.Skip(); } virtual void OnRemoveHotkeyButtonClick( wxCommandEvent& event ) { event.Skip(); } - virtual void OnCancelButtonClick( wxCommandEvent& event ) { event.Skip(); } virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); } @@ -628,7 +629,7 @@ namespace VeraCrypt wxPanel* SecurityTokensPage; wxPanel* HotkeysPage; - PreferencesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Preferences"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + PreferencesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_PREFERENCES_DLG"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE ); ~PreferencesDialogBase(); }; @@ -657,7 +658,7 @@ namespace VeraCrypt public: - RandomPoolEnrichmentDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("VeraCrypt - Random Pool Enrichment"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + RandomPoolEnrichmentDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_RANDOM_POOL_ENRICHMENT"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); ~RandomPoolEnrichmentDialogBase(); }; @@ -689,7 +690,7 @@ namespace VeraCrypt public: - SecurityTokenKeyfilesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Security Token Keyfiles"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE ); + SecurityTokenKeyfilesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_KEYFILES"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE ); ~SecurityTokenKeyfilesDialogBase(); }; @@ -703,12 +704,15 @@ namespace VeraCrypt protected: wxListCtrl* PropertiesListCtrl; - wxStdDialogButtonSizer* StdButtons; - wxButton* StdButtonsOK; + wxButton* OKButton; + + // Virtual event handlers, overide them in your derived class + virtual void OnOKButtonClick( wxCommandEvent& event ) { event.Skip(); } + public: - VolumePropertiesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("Volume Properties"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE ); + VolumePropertiesDialogBase( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = _("IDD_VOLUME_PROPERTIES"), const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_DIALOG_STYLE ); ~VolumePropertiesDialogBase(); }; diff --git a/src/Main/Forms/MainFrame.cpp b/src/Main/Forms/MainFrame.cpp index 417c2a63..b744ebbd 100644 --- a/src/Main/Forms/MainFrame.cpp +++ b/src/Main/Forms/MainFrame.cpp @@ -219,7 +219,7 @@ namespace VeraCrypt L"cmd.exe", args.c_str(), nullptr, SW_SHOW); #else # ifdef TC_MACOSX - Gui->ShowInfo (_("Disk Utility will be launched after you press 'OK'.\n\nPlease select your volume in the Disk Utility window and press 'Verify Disk' or 'Repair Disk' button on the 'First Aid' page.")); + Gui->ShowInfo (LangString["LINUX_FIRST_AID"]); # endif Core->CheckFilesystem (selectedVolume, repair); UpdateVolumeList(); @@ -282,15 +282,15 @@ namespace VeraCrypt VolumeStaticBoxSizer->Detach (VolumeGridBagSizer); VolumeStaticBoxSizer->Add (VolumeGridBagSizer, 1, wxEXPAND, 0); - ExitButton->SetLabel (_("Close")); - MountAllDevicesButton->SetLabel (_("Mount All Devices")); + ExitButton->SetLabel (LangString["CLOSE"]); + MountAllDevicesButton->SetLabel (LangString["LINUX_MOUNT_ALL_DEV"]); #endif #ifdef TC_WINDOWS SlotListCtrl->InsertColumn (ColumnSlot, LangString["DRIVE"], wxLIST_FORMAT_LEFT, 1); colPermilles.push_back (75); #else - SlotListCtrl->InsertColumn (ColumnSlot, _("Slot"), wxLIST_FORMAT_LEFT, 1); + SlotListCtrl->InsertColumn (ColumnSlot, LangString["TOKEN_SLOT_ID"], wxLIST_FORMAT_LEFT, 1); colPermilles.push_back (82); #endif @@ -493,7 +493,7 @@ namespace VeraCrypt catch (exception &e) { Gui->ShowError (e); - Gui->ShowError (_("Error while loading configuration files located in ") + wstring (Application::GetConfigFilePath (L""))); + Gui->ShowError (LangString["LINUX_ERROR_LOADING_CONFIG"] + wstring (Application::GetConfigFilePath (L""))); } } @@ -514,8 +514,8 @@ namespace VeraCrypt Gui->AppendToMenu (*popup, LangString[Gui->IsInBackgroundMode() ? "SHOW_TC" : "HIDE_TC"], this, wxCommandEventHandler (TaskBarIcon::OnShowHideMenuItemSelected)); popup->AppendSeparator(); - Gui->AppendToMenu (*popup, _("Mount All Favorite Volumes"), this, wxCommandEventHandler (TaskBarIcon::OnMountAllFavoritesMenuItemSelected))->Enable (!Busy); - Gui->AppendToMenu (*popup, _("Dismount All Mounted Volumes"), this, wxCommandEventHandler (TaskBarIcon::OnDismountAllMenuItemSelected))->Enable (!Busy); + Gui->AppendToMenu (*popup, LangString["IDM_MOUNT_FAVORITE_VOLUMES"], this, wxCommandEventHandler (TaskBarIcon::OnMountAllFavoritesMenuItemSelected))->Enable (!Busy); + Gui->AppendToMenu (*popup, LangString["HK_DISMOUNT_ALL"], this, wxCommandEventHandler (TaskBarIcon::OnDismountAllMenuItemSelected))->Enable (!Busy); // Favorite volumes if (Gui->GetPreferences().BackgroundTaskMenuMountItemsEnabled && !Frame->FavoriteVolumesMenuMap.empty()) @@ -524,7 +524,8 @@ namespace VeraCrypt typedef pair FavMapPair; foreach (FavMapPair fp, Frame->FavoriteVolumesMenuMap) { - Gui->AppendToMenu (*popup, LangString["MOUNT"] + L" " + wstring (fp.second.Path) + (fp.second.MountPoint.IsEmpty() ? L"" : L" " + wstring (fp.second.MountPoint)), + //TBH Gui->AppendToMenu (*popup, LangString["MOUNT"] + L" " + wstring (fp.second.Path) + (fp.second.MountPoint.IsEmpty() ? L"" : L" " + wstring (fp.second.MountPoint)), + Gui->AppendToMenu (*popup, LangString["MOUNT_BUTTON"] + L" " + wstring (fp.second.Path) + (fp.second.MountPoint.IsEmpty() ? L"" : L" " + wstring (fp.second.MountPoint)), this, wxCommandEventHandler (TaskBarIcon::OnFavoriteVolumeMenuItemSelected), fp.first)->Enable (!Busy); } } @@ -569,10 +570,10 @@ namespace VeraCrypt } popup->AppendSeparator(); - Gui->AppendToMenu (*popup, _("Preferences..."), this, wxCommandEventHandler (TaskBarIcon::OnPreferencesMenuItemSelected))->Enable (!Busy); + Gui->AppendToMenu (*popup, LangString["IDM_PREFERENCES"], this, wxCommandEventHandler (TaskBarIcon::OnPreferencesMenuItemSelected))->Enable (!Busy); #ifndef TC_MACOSX popup->AppendSeparator(); - Gui->AppendToMenu (*popup, _("Exit"), this, wxCommandEventHandler (TaskBarIcon::OnExitMenuItemSelected))->Enable (!Busy && Frame->CanExit()); + Gui->AppendToMenu (*popup, LangString["EXIT"], this, wxCommandEventHandler (TaskBarIcon::OnExitMenuItemSelected))->Enable (!Busy && Frame->CanExit()); #endif return popup.release(); } @@ -692,7 +693,7 @@ namespace VeraCrypt { if (!IsFreeSlotSelected()) { - Gui->ShowWarning (_("Please select a free drive slot from the list.")); + Gui->ShowWarning (LangString["LINUX_SELECT_FREE_SLOT"]); return; } @@ -1143,10 +1144,10 @@ namespace VeraCrypt { Gui->AppendToMenu (popup, LangString["DISMOUNT"], this, wxCommandEventHandler (MainFrame::OnDismountVolumeMenuItemSelected)); Gui->AppendToMenu (popup, LangString["OPEN"], this, wxCommandEventHandler (MainFrame::OnOpenVolumeMenuItemSelected)); - Gui->AppendToMenu (popup, _("Deselect"), this, wxCommandEventHandler (MainFrame::OnClearSlotSelectionMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["LINUX_DESELECT"], this, wxCommandEventHandler (MainFrame::OnClearSlotSelectionMenuItemSelected)); popup.AppendSeparator(); - Gui->AppendToMenu (popup, _("Add to Favorites..."), this, wxCommandEventHandler (MainFrame::OnAddToFavoritesMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["IDPM_ADD_TO_FAVORITES"], this, wxCommandEventHandler (MainFrame::OnAddToFavoritesMenuItemSelected)); popup.AppendSeparator(); Gui->AppendToMenu (popup, LangString["IDPM_CHECK_FILESYS"], this, wxCommandEventHandler (MainFrame::OnCheckFilesystemMenuItemSelected)); @@ -1159,7 +1160,7 @@ namespace VeraCrypt } else if (IsFreeSlotSelected()) { - Gui->AppendToMenu (popup, _("Mount Volume"), this, wxCommandEventHandler (MainFrame::OnMountVolumeMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["IDM_MOUNT_VOLUME"], this, wxCommandEventHandler (MainFrame::OnMountVolumeMenuItemSelected)); popup.AppendSeparator(); @@ -1168,7 +1169,7 @@ namespace VeraCrypt popup.AppendSeparator(); - Gui->AppendToMenu (popup, _("Deselect"), this, wxCommandEventHandler (MainFrame::OnClearSlotSelectionMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["LINUX_DESELECT"], this, wxCommandEventHandler (MainFrame::OnClearSlotSelectionMenuItemSelected)); PopupMenu (&popup); } @@ -1483,21 +1484,21 @@ namespace VeraCrypt wxMenu popup; - Gui->AppendToMenu (popup, _("Change Volume Password..."), this, wxCommandEventHandler (MainFrame::OnChangePasswordMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["IDM_CHANGE_PASSWORD"], this, wxCommandEventHandler (MainFrame::OnChangePasswordMenuItemSelected)); popup.AppendSeparator (); - Gui->AppendToMenu (popup, _("Add/Remove Keyfiles to/from Volume..."), this, wxCommandEventHandler (MainFrame::OnChangeKeyfilesMenuItemSelected)); - Gui->AppendToMenu (popup, _("Remove All Keyfiles from Volume..."), this, wxCommandEventHandler (MainFrame::OnRemoveKeyfilesMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["IDM_ADD_REMOVE_VOL_KEYFILES"], this, wxCommandEventHandler (MainFrame::OnChangeKeyfilesMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["IDM_REMOVE_ALL_KEYFILES_FROM_VOL"], this, wxCommandEventHandler (MainFrame::OnRemoveKeyfilesMenuItemSelected)); popup.AppendSeparator (); - Gui->AppendToMenu (popup, _("Change Header Key Derivation Algorithm..."), this, wxCommandEventHandler (MainFrame::OnChangePkcs5PrfMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["IDM_CHANGE_SYS_HEADER_KEY_DERIV_ALGO"], this, wxCommandEventHandler (MainFrame::OnChangePkcs5PrfMenuItemSelected)); popup.AppendSeparator (); - Gui->AppendToMenu (popup, _("Backup Volume Header..."), this, wxCommandEventHandler (MainFrame::OnBackupVolumeHeadersMenuItemSelected)); - Gui->AppendToMenu (popup, _("Restore Volume Header..."), this, wxCommandEventHandler (MainFrame::OnRestoreVolumeHeaderMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["IDM_BACKUP_VOL_HEADER"], this, wxCommandEventHandler (MainFrame::OnBackupVolumeHeadersMenuItemSelected)); + Gui->AppendToMenu (popup, LangString["IDM_RESTORE_VOL_HEADER"], this, wxCommandEventHandler (MainFrame::OnRestoreVolumeHeaderMenuItemSelected)); PopupMenu (&popup, VolumeToolsButton->GetPosition().x + 2, VolumeToolsButton->GetPosition().y + 2); } @@ -1587,7 +1588,7 @@ namespace VeraCrypt { bool mounted = IsMountedSlotSelected(); - VolumeButton->SetLabel (mounted ? LangString["DISMOUNT"] : wxString (_("Mount"))); + VolumeButton->SetLabel (mounted ? LangString["UNMOUNT_BUTTON"] : LangString["MOUNT_BUTTON"]); VolumePropertiesButton->Enable (mounted); DismountVolumeMenuItem->Enable (mounted); diff --git a/src/Main/Forms/MountOptionsDialog.cpp b/src/Main/Forms/MountOptionsDialog.cpp index c54ff8e6..99355020 100644 --- a/src/Main/Forms/MountOptionsDialog.cpp +++ b/src/Main/Forms/MountOptionsDialog.cpp @@ -88,7 +88,7 @@ namespace VeraCrypt OptionsButton->SetLabel (OptionsButtonLabel + L" >"); OptionsPanel->Show (false); - ProtectionPasswordPanel = new VolumePasswordPanel (OptionsPanel, &options, options.ProtectionPassword, true, options.ProtectionKeyfiles, false, true, true, false, true, true, _("P&assword to hidden volume:")); + ProtectionPasswordPanel = new VolumePasswordPanel (OptionsPanel, &options, options.ProtectionPassword, true, options.ProtectionKeyfiles, false, true, true, false, true, true, LangString["IDT_HIDDEN_PROT_PASSWD"]); ProtectionPasswordSizer->Add (ProtectionPasswordPanel, 1, wxALL | wxEXPAND); UpdateDialog(); @@ -143,7 +143,7 @@ namespace VeraCrypt if (Options.PartitionInSystemEncryptionScope && Options.Password->Size() > VolumePassword::MaxLegacySize) { - Gui->ShowWarning (StringFormatter (_("System Encryption password is longer than {0} characters."), (int) VolumePassword::MaxLegacySize)); + Gui->ShowWarning (StringFormatter (LangString["LINUX_SYSTEM_ENC_PW_LENGTH_NOTE"], (int) VolumePassword::MaxLegacySize)); return; } diff --git a/src/Main/Forms/NewSecurityTokenKeyfileDialog.cpp b/src/Main/Forms/NewSecurityTokenKeyfileDialog.cpp index 60161557..e52d2f60 100644 --- a/src/Main/Forms/NewSecurityTokenKeyfileDialog.cpp +++ b/src/Main/Forms/NewSecurityTokenKeyfileDialog.cpp @@ -43,7 +43,7 @@ namespace VeraCrypt void NewSecurityTokenKeyfileDialog::OnKeyfileNameChanged (wxCommandEvent& event) { - StdButtonsOK->Enable (!KeyfileNameTextCtrl->GetValue().empty()); + OKButton->Enable(!KeyfileNameTextCtrl->GetValue().empty()); event.Skip(); } } diff --git a/src/Main/Forms/PreferencesDialog.cpp b/src/Main/Forms/PreferencesDialog.cpp index ee4b2d5b..2815c9b5 100644 --- a/src/Main/Forms/PreferencesDialog.cpp +++ b/src/Main/Forms/PreferencesDialog.cpp @@ -135,8 +135,8 @@ namespace VeraCrypt #ifdef TC_MACOSX DismountOnScreenSaverCheckBox->Show (false); - DismountOnLogOffCheckBox->SetLabel (_("VeraCrypt quits")); - OpenExplorerWindowAfterMountCheckBox->SetLabel (_("Open Finder window for successfully mounted volume")); + DismountOnLogOffCheckBox->SetLabel (LangString["LINUX_VC_QUITS"]); + OpenExplorerWindowAfterMountCheckBox->SetLabel (LangString["LINUX_OPEN_FINDER"]); MountRemovableCheckBox->Show (false); FilesystemSizer->Show (false); @@ -200,7 +200,7 @@ namespace VeraCrypt Fit(); Center(); - StdButtonsOK->SetDefault(); + OKButton->SetDefault(); #ifdef TC_WINDOWS // Hotkey timer @@ -302,20 +302,20 @@ namespace VeraCrypt if (Gui->AskYesNo (LangString["CONFIRM_SETTING_DEGRADES_PERFORMANCE"], true, true)) { #ifdef TC_LINUX - Gui->ShowWarning (_("Please note that this setting takes effect only if use of the kernel cryptographic services is disabled.")); + Gui->ShowWarning (LangString["LINUX_DISABLE_KERNEL_ONLY_SETTING"]); #endif } else NoHardwareCryptoCheckBox->SetValue (false); } - Gui->ShowWarning (_("Please note that any currently mounted volumes need to be remounted before they can use this setting.")); + Gui->ShowWarning (LangString["LINUX_REMOUNT_BECAUSEOF_SETTING"]); } void PreferencesDialog::OnNoKernelCryptoCheckBoxClick (wxCommandEvent& event) { if (event.IsChecked()) - NoKernelCryptoCheckBox->SetValue (Gui->AskYesNo (_("Disabling the use of kernel cryptographic services can degrade performance.\n\nAre you sure?"), false, true)); + NoKernelCryptoCheckBox->SetValue (Gui->AskYesNo (LangString["LINUX_DISABLE_KERNEL_CRYPT_CONFIRM"], false, true)); } void PreferencesDialog::OnClose (wxCloseEvent& event) @@ -424,7 +424,7 @@ namespace VeraCrypt { #ifdef TC_LINUX if (!event.IsChecked()) - Gui->ShowInfo (_("Please note that disabling this option may have no effect on volumes mounted using kernel cryptographic services.")); + Gui->ShowInfo (LangString["LINUX_KERNEL_CRYPT_OPTION_CHANGE_MOUNTED_HINT"]); #endif } diff --git a/src/Main/Forms/TrueCrypt.fbp b/src/Main/Forms/TrueCrypt.fbp index d512ce82..927a60b9 100644 --- a/src/Main/Forms/TrueCrypt.fbp +++ b/src/Main/Forms/TrueCrypt.fbp @@ -2,7 +2,7 @@ - + ; international.h C++ 1 source_name @@ -14,6 +14,7 @@ Forms 1000 none + 1 VeraCrypt "VeraCrypt" @@ -88,7 +89,7 @@ - + 1 @@ -134,17 +135,17 @@ - &Volumes + MENU_VOLUMES VolumesMenu protected - + 0 1 wxID_ANY wxITEM_NORMAL - Create New Volume... + IDM_CREATE_VOLUME CreateNewVolumeMenuItem none @@ -152,18 +153,18 @@ OnCreateVolumeButtonClick - + m_separator1 none - + 0 1 wxID_ANY wxITEM_NORMAL - Mount Volume + IDM_MOUNT_VOLUME MountVolumeMenuItem protected @@ -171,14 +172,14 @@ OnMountVolumeMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Auto-Mount All Device-Hosted Volumes + IDM_MOUNTALL AutoMountDevicesMenuItem none @@ -186,18 +187,18 @@ OnMountAllDevicesButtonClick - + m_separator2 none - + 0 1 wxID_ANY wxITEM_NORMAL - Dismount Volume + IDM_UNMOUNT_VOLUME DismountVolumeMenuItem protected @@ -205,14 +206,14 @@ OnDismountVolumeMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Dismount All Mounted Volumes + IDM_UNMOUNTALL DismountAllMenuItem protected @@ -220,18 +221,18 @@ OnDismountAllButtonClick - + m_separator3 none - + 0 1 wxID_ANY wxITEM_NORMAL - Change Volume Password... + IDM_CHANGE_PASSWORD ChangePasswordMenuItem none @@ -239,14 +240,14 @@ OnChangePasswordMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Change Header Key Derivation Algorithm... + IDM_CHANGE_HEADER_KEY_DERIV_ALGO ChangePkcs5PrfMenuItem none @@ -254,14 +255,14 @@ OnChangePkcs5PrfMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Add/Remove Keyfiles to/from Volume... + IDD_PCDM_ADD_REMOVE_VOL_KEYFILES ChangeKeyfilesMenuItem none @@ -269,14 +270,14 @@ OnChangeKeyfilesMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Remove All Keyfiles from Volume... + IDM_REMOVE_ALL_KEYFILES_FROM_VOL RemoveKeyfilesMenuItem none @@ -284,18 +285,18 @@ OnRemoveKeyfilesMenuItemSelected - + m_separator4 none - + 0 1 wxID_ANY wxITEM_NORMAL - Volume Properties... + IDC_VOLUME_PROPERTIES VolumePropertiesMenuItem protected @@ -305,17 +306,17 @@ - &Favorites + MENU_FAVORITES FavoritesMenu protected - + 0 1 wxID_ANY wxITEM_NORMAL - Add Selected Volume to Favorites... + IDM_ADD_VOLUME_TO_FAVORITES AddToFavoritesMenuItem protected @@ -323,14 +324,14 @@ OnAddToFavoritesMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Add All Mounted Volumes to Favorites... + IDM_ADD_ALL_VOLUME_TO_FAVORITES AddAllMountedToFavoritesMenuItem protected @@ -338,14 +339,14 @@ OnAddAllMountedToFavoritesMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Organize Favorite Volumes... + IDM_ORGANIZE_FAVORITES OrganizeFavoritesMenuItem none @@ -353,18 +354,18 @@ OnOrganizeFavoritesMenuItemSelected - + m_separator5 none - + 0 1 wxID_ANY wxITEM_NORMAL - Mount Favorite Volumes + IDM_MOUNT_FAVORITE_VOLUMES MountAllFavoritesMenuItem none @@ -372,23 +373,23 @@ OnMountAllFavoritesMenuItemSelected - + m_separator6 none - T&ools + MENU_TOOLS ToolsMenu protected - + 0 1 wxID_ANY wxITEM_NORMAL - Benchmark... + IDM_BENCHMARK BenchmarkMenuItem none @@ -396,14 +397,14 @@ OnBenchmarkMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Test Vectors... + IDM_TEST_VECTORS EncryptionTestMenuItem none @@ -411,18 +412,18 @@ OnEncryptionTestMenuItemSelected - + m_separator7 none - + 0 1 wxID_ANY wxITEM_NORMAL - Volume Creation Wizard + IDM_VOLUME_WIZARD VolumeCreationWizardMenuItem none @@ -430,18 +431,18 @@ OnCreateVolumeButtonClick - + m_separator8 none - + 0 1 wxID_ANY wxITEM_NORMAL - Backup Volume Header... + IDM_BACKUP_VOL_HEADER BackupVolumeHeadersMenuItem protected @@ -449,14 +450,14 @@ OnBackupVolumeHeadersMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Restore Volume Header... + IDM_RESTORE_VOL_HEADER RestoreVolumeHeaderMenuItem protected @@ -464,18 +465,18 @@ OnRestoreVolumeHeaderMenuItemSelected - + m_separator9 none - + 0 1 wxID_ANY wxITEM_NORMAL - Keyfile Generator + IDM_KEYFILE_GENERATOR CreateKeyfileMenuItem none @@ -483,14 +484,14 @@ OnCreateKeyfileMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Manage Security Token Keyfiles... + IDM_MANAGE_TOKEN_KEYFILES ManageSecurityTokenKeyfilesMenuItem none @@ -498,14 +499,14 @@ OnManageSecurityTokenKeyfilesMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Close All Security Token Sessions + IDM_CLOSE_ALL_TOKEN_SESSIONS CloseAllSecurityTokenSessionsMenuItem none @@ -513,18 +514,18 @@ OnCloseAllSecurityTokenSessionsMenuItemSelected - + m_separator10 none - + 0 1 wxID_ANY wxITEM_NORMAL - Wipe Cached Passwords + IDM_WIPE_CACHE WipeCachedPasswordsMenuItem protected @@ -534,17 +535,17 @@ - Settin&gs + MENU_SETTINGS SettingsMenu protected - + 0 1 wxID_ANY wxITEM_NORMAL - Hotkeys... + IDM_HOTKEY_SETTINGS HotkeysMenuItem protected @@ -552,14 +553,14 @@ OnHotkeysMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Default Keyfiles... + IDM_DEFAULT_KEYFILES DefaultKeyfilesMenuItem none @@ -567,14 +568,14 @@ OnDefaultKeyfilesMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Default Mount Parameters... + IDM_DEFAULT_MOUNT_PARAMETERS DefaultMountParametersMenuItem none @@ -589,7 +590,7 @@ wxID_ANY wxITEM_NORMAL - Security Tokens... + IDM_TOKEN_PREFERENCES SecurityTokenPreferencesMenuItem none @@ -597,18 +598,18 @@ OnSecurityTokenPreferencesMenuItemSelected - + m_separator11 none - + 0 1 wxID_PREFERENCES wxITEM_NORMAL - &Preferences... + IDM_PREFERENCES PreferencesMenuItem protected @@ -618,17 +619,17 @@ - &Help + MENU_HELP HelpMenu protected - + 0 1 wxID_HELP wxITEM_NORMAL - User's Guide + IDM_HELP UserGuideMenuItem none @@ -636,14 +637,14 @@ OnUserGuideMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Online Help + IDM_ONLINE_HELP OnlineHelpMenuItem none @@ -651,14 +652,14 @@ OnOnlineHelpMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Beginner's Tutorial + IDM_ONLINE_TUTORIAL BeginnersTutorialMenuItem none @@ -666,14 +667,14 @@ OnBeginnersTutorialMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Frequently Asked Questions + IDM_FAQ FaqMenuItem none @@ -681,18 +682,18 @@ OnFaqMenuItemSelected - + m_separator12 none - + 0 1 wxID_ANY wxITEM_NORMAL - VeraCrypt Website + IDM_WEBSITE WebsiteMenuItem none @@ -700,14 +701,14 @@ OnWebsiteMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Downloads + IDM_TC_DOWNLOADS DownloadsMenuItem none @@ -715,14 +716,14 @@ OnDownloadsMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - News + IDM_NEWS NewsMenuItem none @@ -730,14 +731,14 @@ OnNewsMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Version History + IDM_VERSION_HISTORY VersionHistoryMenuItem none @@ -745,18 +746,18 @@ OnVersionHistoryMenuItemSelected - + m_separator13 none - + 0 1 wxID_ANY wxITEM_NORMAL - Donate + IDM_DONATE DonateMenuItem none @@ -764,14 +765,14 @@ OnDonateMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Contact + IDM_CONTACT ContactMenuItem none @@ -779,14 +780,14 @@ OnContactMenuItemSelected - + 0 1 wxID_ANY wxITEM_NORMAL - Legal Notices + IDM_LICENSE LegalNoticesMenuItem none @@ -794,14 +795,14 @@ OnLegalNoticesMenuItemSelected - + 0 1 wxID_ABOUT wxITEM_NORMAL - About + ABOUTBOX AboutMenuItem none @@ -816,7 +817,7 @@ bSizer1 wxVERTICAL none - + 0 wxEXPAND 1 @@ -894,37 +895,38 @@ - + bSizer2 wxVERTICAL none - + 5 wxEXPAND 1 - + bSizer48 wxVERTICAL none - + 5 wxEXPAND 1 - + wxID_ANY sbSizer1 wxVERTICAL + 1 none - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -1027,34 +1029,35 @@ - + 5 wxEXPAND 0 - + wxID_ANY LowStaticBoxSizer wxVERTICAL + 1 protected - + 2 wxEXPAND|wxTOP 0 - + HigherButtonSizer wxVERTICAL protected - + 5 wxEXPAND|wxRIGHT|wxLEFT 0 - + 3 0 @@ -1062,20 +1065,20 @@ none 1 0 - + 5 0 - + 138,34 bSizer17 wxVERTICAL none - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -1104,7 +1107,8 @@ 0 0 wxID_ANY - &Create Volume + IDC_CREATE_VOLUME + 0 0 @@ -1161,20 +1165,20 @@ - + 5 wxALIGN_CENTER_HORIZONTAL 0 - + 138,34 bSizer18 wxVERTICAL none - + 5 wxALL|wxALIGN_CENTER_HORIZONTAL|wxEXPAND 1 - + 1 1 1 @@ -1203,7 +1207,8 @@ 0 0 wxID_ANY - &Volume Properties... + IDC_VOLUME_PROPERTIES + 0 0 @@ -1260,20 +1265,20 @@ - + 5 wxALIGN_RIGHT 0 - + 138,34 bSizer19 wxVERTICAL none - + 5 wxALL|wxALIGN_RIGHT|wxEXPAND 1 - + 1 1 1 @@ -1302,7 +1307,8 @@ 0 0 wxID_ANY - &Wipe Cache + HK_WIPE_CACHE + 0 0 @@ -1361,33 +1367,34 @@ - + 5 0 - + 0 protected 0 - + 5 wxEXPAND|wxALL 1 - + wxID_ANY - Volume + IDT_VOLUME VolumeStaticBoxSizer wxVERTICAL + 1 protected - + 4 wxEXPAND|wxALL 1 - + wxBOTH 1 @@ -1398,14 +1405,14 @@ wxFLEX_GROWMODE_SPECIFIED protected 0 - + 5 1 0 wxALIGN_CENTER_VERTICAL|wxALL 0 2 - + 1 1 1 @@ -1482,14 +1489,14 @@ - + 5 2 1 wxEXPAND|wxALL 0 1 - + 1 1 1 @@ -1550,6 +1557,8 @@ + + @@ -1576,23 +1585,23 @@ - + 5 1 3 wxEXPAND 0 1 - + 138,34 bSizer191 wxVERTICAL none - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -1621,7 +1630,8 @@ 0 0 wxID_ANY - Select &File... + IDC_SELECT_FILE + 0 0 @@ -1678,14 +1688,14 @@ - + 5 1 1 wxBOTTOM|wxRIGHT|wxLEFT 1 1 - + 1 1 1 @@ -1714,7 +1724,7 @@ 0 0 wxID_ANY - &Never save history + IDC_NO_HISTORY 0 @@ -1769,23 +1779,23 @@ - + 5 1 2 wxALIGN_RIGHT 1 1 - + 138,34 bSizer20 wxVERTICAL none - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -1814,7 +1824,8 @@ 0 0 wxID_ANY - Volume &Tools... + IDC_VOLUME_TOOLS + 0 0 @@ -1871,23 +1882,23 @@ - + 5 1 3 wxEXPAND 1 1 - + 138,34 bSizer21 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + 1 1 1 @@ -1916,7 +1927,8 @@ 0 0 wxID_ANY - Select D&evice... + IDC_SELECT_DEVICE + 0 0 @@ -1977,21 +1989,21 @@ - + 5 0 - + 0 protected 0 - + 5 wxEXPAND|wxALL 0 - + 4 0 @@ -1999,23 +2011,24 @@ none 1 0 - + 0 wxEXPAND 1 - + wxID_ANY 139,-1 sbSizer4 wxVERTICAL + 1 none - + 2 wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxALL 1 - + 1 1 1 @@ -2044,7 +2057,8 @@ 0 0 wxID_ANY - &Mount + MOUNT_BUTTON + 0 0 @@ -2101,23 +2115,24 @@ - + 5 wxEXPAND 1 - + wxID_ANY 139,-1 sbSizer41 wxVERTICAL + 1 none - + 2 wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxALL 1 - + 1 1 1 @@ -2146,7 +2161,8 @@ 0 0 wxID_ANY - &Auto-Mount Devices + IDC_MOUNTALL + 0 0 @@ -2203,23 +2219,24 @@ - + 5 wxEXPAND 1 - + wxID_ANY 139,-1 sbSizer42 wxVERTICAL + 1 none - + 2 wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxALL 1 - + 1 1 1 @@ -2248,7 +2265,8 @@ 0 0 wxID_ANY - Di&smount All + IDC_UNMOUNTALL + 0 0 @@ -2305,23 +2323,24 @@ - + 5 wxEXPAND 1 - + wxID_ANY 139,-1 sbSizer43 wxVERTICAL + 1 none - + 2 wxALIGN_CENTER_HORIZONTAL|wxEXPAND|wxALL 1 - + 1 1 1 @@ -2350,7 +2369,8 @@ 0 0 wxID_ANY - E&xit + IDC_EXIT + 0 0 @@ -2480,16 +2500,16 @@ - + MainSizer wxVERTICAL protected - + 5 wxEXPAND 1 - + 1 1 1 @@ -2563,37 +2583,38 @@ - + bSizer63 wxVERTICAL none - + 5 wxEXPAND 1 - + bSizer64 wxVERTICAL none - + 5 wxEXPAND|wxRIGHT|wxLEFT 1 - + wxID_ANY sbSizer27 wxHORIZONTAL + 1 none - + 5 wxALL|wxEXPAND 0 - + 1 1 1 @@ -2670,29 +2691,29 @@ - + 5 wxEXPAND|wxLEFT 1 - + bSizer66 wxVERTICAL none - + 5 wxLEFT 0 - + bSizer126 wxHORIZONTAL none - + 5 wxALL 0 - + 1 1 1 @@ -2721,6 +2742,7 @@ 0 wxID_ANY Page Title + 0 0 @@ -2773,11 +2795,11 @@ - + 5 wxEXPAND|wxTOP|wxBOTTOM|wxLEFT 1 - + PageSizer wxVERTICAL @@ -2788,30 +2810,30 @@ - + 5 wxEXPAND|wxALIGN_RIGHT|wxALL 0 - + bSizer70 wxHORIZONTAL none - + 5 wxEXPAND 1 - + 0 protected 0 - + 5 wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -2840,7 +2862,8 @@ 0 0 wxID_HELP - &Help + IDHELP + 0 0 @@ -2895,21 +2918,21 @@ - + 5 wxLEFT|wxALIGN_RIGHT 0 - + 0 protected 0 - + 5 wxTOP|wxBOTTOM|wxLEFT|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -2938,7 +2961,8 @@ 0 0 wxID_ANY - < &Prev + PREV + 0 0 @@ -2993,11 +3017,11 @@ - + 5 wxTOP|wxBOTTOM|wxRIGHT|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -3026,7 +3050,8 @@ 0 0 wxID_ANY - &Next > + NEXT + 0 0 @@ -3081,21 +3106,21 @@ - + 5 wxLEFT|wxALIGN_RIGHT 0 - + 0 protected 0 - + 5 wxALL|wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -3124,7 +3149,8 @@ 0 0 wxID_CANCEL - Cancel + IDCANCEL + 0 0 @@ -3514,6 +3540,7 @@ 0 wxID_ANY + 0 0 @@ -3607,6 +3634,7 @@ 0 wxID_ANY + 0 0 @@ -4154,7 +4182,8 @@ 0 0 wxID_OK - OK + IDOK + 0 0 @@ -4246,7 +4275,7 @@ wxDEFAULT_DIALOG_STYLE - VeraCrypt - Algorithms Benchmark + IDD_BENCHMARK_DLG @@ -4349,7 +4378,7 @@ 0 0 wxID_ANY - Benchmark: + IDT_BENCHMARK 0 0 @@ -4419,7 +4448,7 @@ 1 0 - "Encryption Algorithm" "PKCS-5 PRF" "Hash Algorithm" + "ENCRYPTION_ALGORITHM" "PKCS5_PRF" "IDT_HASH_ALGO" 1 1 @@ -4521,7 +4550,8 @@ 0 0 wxID_ANY - Buffer Size: + IDT_BUFFER_SIZE + 0 0 @@ -4692,7 +4722,7 @@ 0 0 wxID_ANY - Volume PIM: + IDT_PIM 0 0 @@ -5074,7 +5104,8 @@ 0 0 wxID_OK - Benchmark + IDC_PERFORM_BENCHMARK + 0 0 @@ -5162,7 +5193,8 @@ 0 0 wxID_CANCEL - Close + IDCLOSE + 0 0 @@ -5260,6 +5292,7 @@ 0 wxID_ANY + 0 0 -1,-1 @@ -5409,10 +5442,11 @@ 0 wxID_ANY - Current + IDT_CURRENT CurrentSizer wxVERTICAL + 1 protected @@ -5434,10 +5468,11 @@ 0 wxID_ANY - New + IDT_NEW NewSizer wxVERTICAL + 1 protected @@ -5497,7 +5532,8 @@ 0 0 wxID_OK - OK + IDOK + 0 0 @@ -5585,7 +5621,8 @@ 0 0 wxID_CANCEL - Cancel + IDCANCEL + 0 0 @@ -5667,7 +5704,7 @@ -1,-1 wxDEFAULT_DIALOG_STYLE - Select a Partition or Device + IDD_RAWDEVICES_DLG wxWS_EX_VALIDATE_RECURSIVELY @@ -5708,25 +5745,25 @@ - + bSizer3 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer4 wxVERTICAL none - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -5827,126 +5864,299 @@ - - 5 - wxEXPAND|wxALL - 0 - - 0 - 1 - 0 - 0 - 0 - 1 - 0 - 0 - - StdButtons - protected - - - - - - - - - - - - - - 0 - wxAUI_MGR_DEFAULT - - - - 1 - 1 - impl_virtual - - - - 0 - wxID_ANY - - - EncryptionTestDialogBase - - - wxDEFAULT_DIALOG_STYLE - - VeraCrypt - Test Vectors - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - bSizer132 - wxVERTICAL - none - + 5 - wxEXPAND|wxALL - 1 - + wxALIGN_RIGHT|wxALL|wxEXPAND + 0 + - bSizer133 - wxVERTICAL + bSizer166 + wxHORIZONTAL none - + 5 - wxALIGN_CENTER_HORIZONTAL + wxEXPAND + 1 + + 0 + protected + 0 + + + + 5 + wxALL 0 - + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 0 + 1 + + 1 + 0 + 0 + Dock + 0 + Left + 1 + + 1 + + 0 + 0 + wxID_CANCEL + IDCANCEL + 0 + + 0 + + + 0 - bSizer134 - wxHORIZONTAL - none - + 1 + CancelButton + 1 + + + protected + 1 + + Resizable + 1 + + + + 0 + + + wxFILTER_NONE + wxDefaultValidator + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 5 + wxALL + 0 + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 0 + 1 + + 1 + 1 + 0 + Dock + 0 + Left + 1 + + 1 + + 0 + 0 + wxID_OK + IDOK + 0 + + 0 + + + 0 + + 1 + OKButton + 1 + + + protected + 1 + + Resizable + 1 + + + + 0 + + + wxFILTER_NONE + wxDefaultValidator + + + + + OnOKButtonClick + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0 + wxAUI_MGR_DEFAULT + + + + 1 + 1 + impl_virtual + + + + 0 + wxID_ANY + + + EncryptionTestDialogBase + + + wxDEFAULT_DIALOG_STYLE + + IDD_CIPHER_TEST_DLG + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bSizer132 + wxVERTICAL + none + + 5 + wxEXPAND|wxALL + 1 + + + bSizer133 + wxVERTICAL + none + + 5 + wxALIGN_CENTER_HORIZONTAL + 0 + + + bSizer134 + wxHORIZONTAL + none + 5 wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxLEFT 0 - + 1 1 1 @@ -5974,7 +6184,8 @@ 0 0 wxID_ANY - Encryption algorithm: + IDT_CIPHER + 0 0 @@ -6025,11 +6236,11 @@ - + 5 wxALL|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -6113,11 +6324,11 @@ - + 5 wxALL|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -6146,7 +6357,7 @@ 0 0 wxID_ANY - XTS mode + IDT_XTS_MODE 0 @@ -6203,23 +6414,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Key (hexadecimal) + IDT_TEST_KEY sbSizer38 wxVERTICAL + 1 none - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -6306,20 +6518,20 @@ - + 5 wxEXPAND 0 - + bSizer135 wxHORIZONTAL none - + 5 wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT 0 - + 1 1 1 @@ -6347,7 +6559,8 @@ 0 0 wxID_ANY - Key size: + IDT_KEY + 0 0 @@ -6398,11 +6611,11 @@ - + 5 wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT 0 - + 1 1 1 @@ -6431,6 +6644,7 @@ 0 wxID_ANY + 0 0 @@ -6485,23 +6699,24 @@ - + 5 wxEXPAND|wxALL 1 - + wxID_ANY - XTS mode + IDT_XTS_MODE sbSizer39 wxVERTICAL + 1 none - + 5 wxTOP|wxRIGHT|wxLEFT 0 - + 1 1 1 @@ -6529,7 +6744,8 @@ 0 0 wxID_ANY - Secondary key (hexadecimal) + IDT_SECONDARY_KEY + 0 0 @@ -6580,11 +6796,11 @@ - + 5 wxEXPAND|wxALL 0 - + 1 1 1 @@ -6671,11 +6887,11 @@ - + 5 wxTOP|wxRIGHT|wxLEFT 0 - + 1 1 1 @@ -6703,7 +6919,8 @@ 0 0 wxID_ANY - Data unit number (64-bit, data unit size is 512 bytes) + IDT_TEST_DATA_UNIT_NUMBER + 0 0 @@ -6754,11 +6971,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -6845,11 +7062,11 @@ - + 5 wxTOP|wxRIGHT|wxLEFT 0 - + 1 1 1 @@ -6877,7 +7094,8 @@ 0 0 wxID_ANY - Block number: + IDT_TEST_BLOCK_NUMBER + 0 0 @@ -6928,11 +7146,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -7021,23 +7239,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Plaintext (hexadecimal) + IDT_TEST_PLAINTEXT sbSizer40 wxVERTICAL + 1 none - + 5 wxALL|wxEXPAND 0 - + 1 1 1 @@ -7126,23 +7345,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Ciphertext (hexadecimal) + IDT_TEST_CIPHERTEXT sbSizer41 wxVERTICAL + 1 none - + 5 wxALL|wxEXPAND 0 - + 1 1 1 @@ -7231,20 +7451,20 @@ - + 5 wxEXPAND 0 - + bSizer136 wxHORIZONTAL none - + 5 wxALL 0 - + 1 1 1 @@ -7273,7 +7493,8 @@ 0 0 wxID_ANY - &Encrypt + ENCRYPT + 0 0 @@ -7328,11 +7549,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -7361,7 +7582,8 @@ 0 0 wxID_ANY - &Decrypt + DECRYPT + 0 0 @@ -7416,11 +7638,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -7449,7 +7671,8 @@ 0 0 wxID_ANY - &Auto-Test All + IDC_AUTO + 0 0 @@ -7504,11 +7727,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -7537,7 +7760,8 @@ 0 0 wxID_ANY - &Reset + IDC_RESET + 0 0 @@ -7592,11 +7816,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -7625,7 +7849,8 @@ 0 0 wxID_CANCEL - Close + IDCLOSE + 0 0 @@ -7707,7 +7932,7 @@ wxDEFAULT_DIALOG_STYLE - Favorite Volumes + IDD_FAVORITE_VOLUMES @@ -7921,7 +8146,8 @@ 0 0 wxID_ANY - Move &Up + IDC_FAVORITE_MOVE_UP + 0 0 @@ -8009,7 +8235,8 @@ 0 0 wxID_ANY - Move &Down + IDC_FAVORITE_MOVE_DOWN + 0 0 @@ -8097,7 +8324,8 @@ 0 0 wxID_ANY - &Remove + IDC_KEYREMOVE + 0 0 @@ -8185,7 +8413,8 @@ 0 0 wxID_ANY - Remove &All + IDC_KEYREMOVEALL + 0 0 @@ -8314,7 +8543,8 @@ 0 0 wxID_OK - OK + IDOK + 0 0 @@ -8402,7 +8632,8 @@ 0 0 wxID_CANCEL - Cancel + IDCANCEL + 0 0 @@ -8484,7 +8715,7 @@ wxDEFAULT_DIALOG_STYLE - Select Keyfiles + SELECT_TOKEN_KEYFILES wxWS_EX_VALIDATE_RECURSIVELY @@ -8525,45 +8756,45 @@ - + bSizer26 wxVERTICAL none - + 5 wxTOP|wxRIGHT|wxLEFT 1 - + UpperSizer wxHORIZONTAL protected - + 5 wxEXPAND 1 - + PanelSizer wxVERTICAL protected - + 5 wxEXPAND 0 - + bSizer22 wxVERTICAL none - + 5 wxALL|wxEXPAND 0 - + 1 1 1 @@ -8592,7 +8823,8 @@ 0 0 wxID_OK - OK + IDOK + 0 0 @@ -8647,11 +8879,11 @@ - + 5 wxALL|wxEXPAND 0 - + 1 1 1 @@ -8680,7 +8912,8 @@ 0 0 wxID_CANCEL - Cancel + IDCANCEL + 0 0 @@ -8735,11 +8968,11 @@ - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -8768,6 +9001,7 @@ 0 wxID_ANY + 0 0 @@ -8822,29 +9056,29 @@ - + 5 wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT 0 - + bSizer23 wxVERTICAL none - + 5 wxEXPAND 1 - + KeyfilesNoteSizer wxVERTICAL protected - + 5 wxEXPAND | wxALL 0 - + 1 1 1 @@ -8921,11 +9155,11 @@ - + 5 wxALL|wxEXPAND 0 - + 1 1 1 @@ -8954,6 +9188,7 @@ 0 wxID_ANY + 0 0 -1,-1 @@ -9004,11 +9239,11 @@ - + 5 wxEXPAND | wxALL 0 - + 1 1 1 @@ -9087,11 +9322,11 @@ - + 5 wxEXPAND 0 - + 2 wxBOTH 0 @@ -9103,11 +9338,11 @@ none 1 0 - + 5 wxALL|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -9136,7 +9371,7 @@ 0 wxSYS_COLOUR_WINDOWTEXT wxID_ANY - More information on keyfiles + IDC_LINK_KEYFILES_INFO 0 @@ -9190,11 +9425,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -9223,7 +9458,8 @@ 0 0 wxID_ANY - &Generate Random Keyfile... + IDC_GENERATE_KEYFILE + 0 0 @@ -9346,44 +9582,44 @@ - + MainSizer wxVERTICAL protected - + 5 wxEXPAND|wxALL 1 - + bSizer144 wxVERTICAL none - + 5 wxEXPAND 0 - + bSizer145 wxHORIZONTAL none - + 5 wxEXPAND 1 - + 0 protected 0 - + 5 wxALL|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -9411,7 +9647,8 @@ 0 0 wxID_ANY - Mixing PRF: + IDT_PRF + 0 0 @@ -9462,11 +9699,11 @@ - + 5 wxALL|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -9550,11 +9787,11 @@ - + 5 wxEXPAND 1 - + 0 protected 0 @@ -9562,32 +9799,33 @@ - + 5 wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT 1 - + wxID_ANY sbSizer43 wxVERTICAL + 1 none - + 5 wxEXPAND|wxTOP 0 - + bSizer147 wxHORIZONTAL none - + 5 wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -9615,7 +9853,8 @@ 0 0 wxID_ANY - Random Pool: + IDT_RANDOM_POOL + 0 0 @@ -9666,11 +9905,11 @@ - + 5 wxALL|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -9699,6 +9938,7 @@ 0 wxID_ANY + 0 0 @@ -9749,11 +9989,11 @@ - + 5 wxALL|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -9782,7 +10022,7 @@ 0 0 wxID_ANY - Show + IDC_DISPLAY_POOL_CONTENTS 0 @@ -9839,26 +10079,27 @@ - + 5 wxEXPAND 1 - + 0 protected 0 - + 5 wxBOTTOM|wxEXPAND|wxTOP 0 wxID_ANY - Randomness Collected From Mouse Movements + IDT_ENTROPY_BAR sbSizer45 wxVERTICAL + 1 none @@ -9964,7 +10205,7 @@ 5 wxALL|wxALIGN_CENTER_HORIZONTAL 0 - + 1 1 1 @@ -9992,7 +10233,8 @@ 0 0 wxID_ANY - IMPORTANT: Move your mouse as randomly as possible within this window. The longer you move it, the better. This significantly increases the cryptographic strength of the keyfile. + IDT_KEYFILE_GENERATOR_NOTE + 0 0 @@ -10043,11 +10285,11 @@ - + 5 wxEXPAND 1 - + 0 protected 0 @@ -10055,7 +10297,7 @@ - + 5 wxALL|wxEXPAND 1 @@ -10112,7 +10354,8 @@ 0 0 wxID_ANY - Number of keyfiles: + IDT_NUMBER_KEYFILES + 0 0 @@ -10363,7 +10606,8 @@ 0 0 wxID_ANY - Keyfiles size (in Bytes): + IDT_KEYFILES_SIZE + 0 0 @@ -10535,7 +10779,7 @@ 0 0 wxID_ANY - Random size (64 <-> 1048576) + IDC_KEYFILES_RANDOM_SIZE 0 @@ -10622,7 +10866,8 @@ 0 0 wxID_ANY - Keyfiles base name: + IDT_KEYFILES_BASE_NAME + 0 0 @@ -10857,11 +11102,11 @@ bSizer146 wxHORIZONTAL none - + 5 wxALL 0 - + 1 1 1 @@ -10890,7 +11135,8 @@ 0 0 wxID_ANY - Generate and Save Keyfile... + IDC_GENERATE_AND_SAVE_KEYFILE + 0 0 @@ -10945,21 +11191,21 @@ - + 5 wxEXPAND 1 - + 0 protected 0 - + 5 wxALL 0 - + 1 1 1 @@ -10988,7 +11234,8 @@ 0 0 wxID_CANCEL - Close + IDCLOSE + 0 0 @@ -11070,7 +11317,7 @@ wxDEFAULT_DIALOG_STYLE - VeraCrypt - Legal Notices + LEGAL_NOTICES_DLG_TITLE @@ -11111,25 +11358,25 @@ - + bSizer114 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer115 wxVERTICAL none - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -11216,11 +11463,11 @@ - + 5 wxALL|wxALIGN_CENTER_HORIZONTAL 0 - + 1 1 1 @@ -11249,7 +11496,8 @@ 0 0 wxID_OK - OK + IDOK + 0 0 @@ -11329,7 +11577,7 @@ -1,-1 wxDEFAULT_DIALOG_STYLE - Enter VeraCrypt Volume Password + IDD_PASSWORD_DLG wxWS_EX_VALIDATE_RECURSIVELY @@ -11370,54 +11618,54 @@ - + MainSizer wxVERTICAL protected - + 5 wxEXPAND 1 - + bSizer19 wxVERTICAL none - + 5 wxEXPAND|wxALL 0 - + bSizer14 wxHORIZONTAL none - + 5 wxEXPAND 1 - + PasswordSizer wxVERTICAL protected - + 5 wxEXPAND 0 - + bSizer9 wxVERTICAL none - + 5 wxALL|wxEXPAND 0 - + 1 1 1 @@ -11446,7 +11694,8 @@ 0 0 wxID_OK - OK + IDOK + 0 0 @@ -11501,11 +11750,11 @@ - + 5 wxALL|wxEXPAND 0 - + 1 1 1 @@ -11534,7 +11783,8 @@ 0 0 wxID_CANCEL - Cancel + IDCANCEL + 0 0 @@ -11589,21 +11839,21 @@ - + 5 wxTOP|wxEXPAND 1 - + 0 protected 0 - + 5 wxALL|wxEXPAND 0 - + 1 1 1 @@ -11632,7 +11882,8 @@ 0 0 wxID_ANY - Op&tions + IDT_FORMAT_OPTIONS + 0 0 @@ -11691,20 +11942,20 @@ - + 5 wxEXPAND 0 - + bSizer6 wxVERTICAL none - + 5 wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT 1 - + 1 1 1 @@ -11778,29 +12029,30 @@ - + wxID_ANY OptionsSizer wxVERTICAL + 1 protected - + 5 wxTOP 0 - + 0 protected 0 - + 5 wxALL 0 - + 1 1 1 @@ -11829,7 +12081,7 @@ 0 0 wxID_ANY - Mount volume as &read-only + IDC_MOUNT_READONLY 0 @@ -11884,11 +12136,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -11917,7 +12169,7 @@ 0 0 wxID_ANY - Mount volume as removable &medium + IDC_MOUNT_REMOVABLE 0 @@ -11972,11 +12224,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -12005,7 +12257,7 @@ 0 0 wxID_ANY - Use backup header embedded in &volume if available + IDC_USE_EMBEDDED_HEADER_BAK 0 @@ -12060,11 +12312,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -12093,7 +12345,7 @@ 0 0 wxID_ANY - Mount partition &using system encryption (preboot authentication) + LINUX_MOUNT_SYSTEM_ENC_PREBOOT 0 @@ -12148,23 +12400,24 @@ - + 5 wxEXPAND|wxALL 1 - + wxID_ANY - Hidden Volume Protection + IDT_HIDDEN_VOL_PROTECTION ProtectionSizer wxVERTICAL + 1 protected - + 5 wxALL 0 - + 1 1 1 @@ -12193,7 +12446,7 @@ 0 0 wxID_ANY - &Protect hidden volume when mounting outer volume + IDC_PROTECT_HIDDEN_VOL 0 @@ -12248,22 +12501,22 @@ - + 5 wxEXPAND|wxLEFT 1 - + ProtectionPasswordSizer wxVERTICAL protected - + 5 wxALL 0 - + 1 1 1 @@ -12292,7 +12545,7 @@ 0 wxSYS_COLOUR_WINDOWTEXT wxID_ANY - What is hidden volume protection? + IDC_LINK_HIDVOL_PROTECTION_INFO 0 @@ -12348,20 +12601,20 @@ - + 5 wxEXPAND 0 - + FilesystemSizer wxVERTICAL protected - + 5 wxEXPAND | wxALL 0 - + 1 1 1 @@ -12435,37 +12688,38 @@ - + wxID_ANY - Filesystem + IDT_FILESYSTEM sbSizer28 wxVERTICAL + 1 none - + 5 wxEXPAND|wxBOTTOM 0 - + bSizer54 wxVERTICAL none - + 5 wxEXPAND 1 - + bSizer55 wxVERTICAL none - + 5 wxTOP|wxRIGHT|wxLEFT 0 - + 1 1 1 @@ -12494,7 +12748,7 @@ 0 0 wxID_ANY - Do &not mount + LINUX_DO_NOT_MOUNT 0 @@ -12551,11 +12805,11 @@ - + 5 wxEXPAND 0 - + 0,0 wxBOTH 1 @@ -12566,28 +12820,28 @@ wxFLEX_GROWMODE_SPECIFIED protected 0 - + 5 1 0 wxEXPAND|wxTOP 0 1 - + FilesystemSpacer wxVERTICAL protected - + 5 1 0 wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT 1 1 - + 1 1 1 @@ -12615,7 +12869,8 @@ 0 0 wxID_ANY - Mount at directory: + LINUX_MOUNT_AT_DIR + 0 0 @@ -12666,14 +12921,14 @@ - + 5 1 1 wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND 1 1 - + 1 1 1 @@ -12760,14 +13015,14 @@ - + 5 1 2 wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT 1 1 - + 1 1 1 @@ -12796,7 +13051,8 @@ 0 0 wxID_ANY - Se&lect... + LINUX_SELECT + 0 0 @@ -12851,14 +13107,14 @@ - + 5 1 0 wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxLEFT 2 1 - + 1 1 1 @@ -12886,7 +13142,8 @@ 0 0 wxID_ANY - Mount options: + IDT_LINUX_PREF_TAB_MOUNT_OPTIONS + 0 0 @@ -12937,14 +13194,14 @@ - + 5 2 1 wxALIGN_CENTER_VERTICAL|wxEXPAND|wxTOP|wxRIGHT|wxLEFT 2 1 - + 1 1 1 @@ -13067,10 +13324,10 @@ NewSecurityTokenKeyfileDialogBase - + -1,-1 wxDEFAULT_DIALOG_STYLE - New Security Token Keyfile Properties + IDD_TOKEN_PREFERENCES @@ -13111,37 +13368,38 @@ - + bSizer143 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer144 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + wxID_ANY sbSizer42 wxVERTICAL + 1 none - + 5 wxEXPAND|wxTOP 1 - + 2 wxBOTH @@ -13153,11 +13411,11 @@ none 2 0 - + 5 wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT 0 - + 1 1 1 @@ -13185,7 +13443,8 @@ 0 0 wxID_ANY - Security token: + IDT_SECURITY_TOKEN + 0 0 @@ -13236,11 +13495,11 @@ - + 5 wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND 0 - + 1 1 1 @@ -13324,11 +13583,11 @@ - + 5 wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT 0 - + 1 1 1 @@ -13356,7 +13615,8 @@ 0 0 wxID_ANY - Keyfile name: + IDT_TOKEN_KEYFILE_NAME + 0 0 @@ -13407,11 +13667,11 @@ - + 5 wxALIGN_CENTER_VERTICAL|wxEXPAND|wxALL 0 - + 1 1 1 @@ -13502,30 +13762,203 @@ - + 5 - wxALIGN_RIGHT|wxALL + wxEXPAND 0 - - 0 - 1 - 0 - 0 - 0 - 1 - 0 - 0 + - StdButtons - protected - - - - - - - - + bSizer167 + wxHORIZONTAL + none + + 5 + wxEXPAND + 1 + + 0 + protected + 0 + + + + 5 + wxALL + 0 + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 0 + 1 + + 1 + 0 + 0 + Dock + 0 + Left + 1 + + 1 + + 0 + 0 + wxID_CANCEL + IDCANCEL + 0 + + 0 + + + 0 + + 1 + CancelButton + 1 + + + protected + 1 + + Resizable + 1 + + + + 0 + + + wxFILTER_NONE + wxDefaultValidator + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 5 + wxALL + 0 + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 0 + 1 + + 1 + 1 + 0 + Dock + 0 + Left + 1 + + 1 + + 0 + 0 + wxID_OK + IDOK + 0 + + 0 + + + 0 + + 1 + OKButton + 1 + + + protected + 1 + + Resizable + 1 + + + + 0 + + + wxFILTER_NONE + wxDefaultValidator + + + + + OnOKButtonClick + + + + + + + + + + + + + + + + + + + + + + + + + @@ -13550,10 +13983,10 @@ PreferencesDialogBase - + -1,-1 wxDEFAULT_DIALOG_STYLE - Preferences + IDD_PREFERENCES_DLG wxWS_EX_VALIDATE_RECURSIVELY @@ -13594,25 +14027,25 @@ - + bSizer32 wxVERTICAL - none - + protected + 5 - wxEXPAND|wxALL + wxEXPAND 1 - + - bSizer41 + bSizer178 wxVERTICAL none - + 5 wxEXPAND | wxALL 1 - + 1 1 1 @@ -13690,9 +14123,9 @@ - + - Security + LINUX_PREF_TAB_SECURITY 1 1 @@ -13768,49 +14201,51 @@ - + bSizer44 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer33 wxVERTICAL none - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Auto-Dismount + IDT_AUTO_DISMOUNT AutoDismountSizer wxVERTICAL + 1 protected - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Dismount All Volumes When + LINUX_DISMOUNT_ALL_WHEN sbSizer13 wxVERTICAL + 1 none - + 5 wxALL 0 - + 1 1 1 @@ -13839,7 +14274,7 @@ 0 0 wxID_ANY - User logs off + IDC_PREF_DISMOUNT_LOGOFF 0 @@ -13894,11 +14329,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -13927,7 +14362,7 @@ 0 0 wxID_ANY - Screen saver is launched + IDC_PREF_DISMOUNT_SCREENSAVER 0 @@ -13982,11 +14417,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -14015,7 +14450,7 @@ 0 0 wxID_ANY - System is entering power saving mode + LINUX_ENTERING_POVERSAWING 0 @@ -14072,20 +14507,20 @@ - + 5 wxEXPAND 0 - + bSizer34 wxHORIZONTAL none - + 5 wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -14114,7 +14549,7 @@ 0 0 wxID_ANY - Auto-dismount volume after no data has been read/written to it for + IDC_PREF_DISMOUNT_INACTIVE 0 @@ -14169,11 +14604,11 @@ - + 5 wxALIGN_CENTER_VERTICAL|wxALL 0 - + 1 1 1 @@ -14257,11 +14692,11 @@ - + 5 wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT 1 - + 1 1 1 @@ -14289,7 +14724,8 @@ 0 0 wxID_ANY - minutes + MINUTES + 0 0 @@ -14342,11 +14778,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -14375,7 +14811,7 @@ 0 0 wxID_ANY - Force auto-dismount even if volume contains open files or directories + IDC_PREF_FORCE_AUTO_DISMOUNT 0 @@ -14432,23 +14868,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Filesystem + LINUX_PREF_TAB_MOUNT_OPTIONS_FS FilesystemSecuritySizer wxVERTICAL + 1 protected - + 5 wxALL 0 - + 1 1 1 @@ -14477,7 +14914,7 @@ 0 0 wxID_ANY - Preserve modification timestamp of file containers + IDC_PRESERVE_TIMESTAMPS 0 @@ -14534,23 +14971,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Password Cache + IDT_PW_CACHE_OPTIONS sbSizer14 wxVERTICAL + 1 none - + 5 wxALL 0 - + 1 1 1 @@ -14579,7 +15017,7 @@ 0 0 wxID_ANY - Wipe after VeraCrypt window has been closed + IDC_PREF_WIPE_CACHE_ON_EXIT 0 @@ -14634,11 +15072,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -14667,7 +15105,7 @@ 0 0 wxID_ANY - Wipe after volume has been auto-dismounted + IDC_PREF_WIPE_CACHE_ON_AUTODISMOUNT 0 @@ -14729,9 +15167,9 @@ - + - Mount Options + LINUX_PREF_TAB_MOUNT_OPTIONS 0 1 @@ -14807,37 +15245,38 @@ - + bSizer46 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer35 wxVERTICAL none - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Default Mount Options + IDT_DEFAULT_MOUNT_OPTIONS sbSizer15 wxVERTICAL + 1 none - + 5 wxALL 0 - + 1 1 1 @@ -14866,7 +15305,7 @@ 0 0 wxID_ANY - Mount volumes as read-only + IDC_PREF_MOUNT_READONLY 0 @@ -14921,11 +15360,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -14954,7 +15393,7 @@ 0 0 wxID_ANY - Mount volumes as removable media + IDC_PREF_MOUNT_REMOVABLE 0 @@ -15009,11 +15448,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -15042,7 +15481,7 @@ 0 0 wxID_ANY - Cache passwords in memory + IDC_TRAV_CACHE_PASSWORDS 0 @@ -15130,7 +15569,7 @@ 0 0 wxID_ANY - TrueCrypt Mode + IDC_TRUECRYPT_MODE 0 @@ -15185,7 +15624,7 @@ - + 5 wxEXPAND 0 @@ -15226,7 +15665,8 @@ 0 0 wxID_ANY - PKCS5-PRF: + PKCS5_PRF + 0 0 @@ -15369,23 +15809,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Filesystem + LINUX_PREF_TAB_MOUNT_OPTIONS_FS FilesystemSizer wxVERTICAL + 1 protected - + 5 wxEXPAND 1 - + 2 wxBOTH 1 @@ -15397,11 +15838,11 @@ none 1 0 - + 5 wxTOP|wxBOTTOM|wxLEFT|wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT 0 - + 1 1 1 @@ -15429,7 +15870,8 @@ 0 0 wxID_ANY - Mount options: + IDT_LINUX_PREF_TAB_MOUNT_OPTIONS + 0 0 @@ -15480,11 +15922,11 @@ - + 5 wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -15580,9 +16022,9 @@ - + - Background Task + LINUX_PREF_TAB_BACKGROUND_TASK 0 1 @@ -15658,37 +16100,38 @@ - + bSizer61 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer62 wxVERTICAL none - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - VeraCrypt Background Task + IDT_TASKBAR_ICON sbSizer18 wxVERTICAL + 1 none - + 5 wxALL 0 - + 1 1 1 @@ -15717,7 +16160,7 @@ 0 0 wxID_ANY - Enabled + IDC_PREF_BKG_TASK_ENABLE 0 @@ -15772,11 +16215,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -15805,7 +16248,7 @@ 0 0 wxID_ANY - Exit when there are no mounted volumes + IDC_CLOSE_BKG_TASK_WHEN_NOVOL 0 @@ -15860,23 +16303,24 @@ - + 5 wxEXPAND|wxALL 1 - + wxID_ANY - Task Icon Menu Items + TASKICON_PREF_MENU_ITEMS sbSizer26 wxVERTICAL + 1 none - + 5 wxALL 0 - + 1 1 1 @@ -15905,7 +16349,7 @@ 0 0 wxID_ANY - Mount Favorite Volumes + HK_MOUNT_FAVORITE_VOLUMES 0 @@ -15960,11 +16404,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -15993,7 +16437,7 @@ 0 0 wxID_ANY - Open Mounted Volumes + TASKICON_PREF_OPEN_VOL 0 @@ -16048,11 +16492,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -16081,7 +16525,7 @@ 0 0 wxID_ANY - Dismount Mounted Volumes + TASKICON_PREF_DISMOUNT_VOL 0 @@ -16145,9 +16589,9 @@ - + - System Integration + LINUX_PREF_TAB_SYSTEM_INTEGRATION 0 1 @@ -16223,37 +16667,38 @@ - + bSizer49 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer37 wxVERTICAL none - + 5 wxALL|wxEXPAND 0 - + wxID_ANY - Actions to Perform when User Logs On + LINUX_LOGIN_ACTION LogOnSizer wxVERTICAL + 1 protected - + 5 wxALL 0 - + 1 1 1 @@ -16282,7 +16727,7 @@ 0 0 wxID_ANY - Start VeraCrypt Background Task + IDC_PREF_LOGON_START 0 @@ -16337,11 +16782,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -16370,7 +16815,7 @@ 0 0 wxID_ANY - Mount favorite volumes + HK_MOUNT_FAVORITE_VOLUMES 0 @@ -16425,11 +16870,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -16458,7 +16903,7 @@ 0 0 wxID_ANY - Mount all device-hosted VeraCrypt volumes + IDC_PREF_LOGON_MOUNT_DEVICES 0 @@ -16515,23 +16960,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Filesystem Explorer + LINUX_PREF_TAB_SYSTEM_INTEGRATION_EXPLORER ExplorerSizer wxVERTICAL + 1 protected - + 5 wxALL 0 - + 1 1 1 @@ -16560,7 +17006,7 @@ 0 0 wxID_ANY - Open Explorer window for successfully mounted volume + IDC_PREF_OPEN_EXPLORER 0 @@ -16615,11 +17061,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -16648,7 +17094,7 @@ 0 0 wxID_ANY - Close all Explorer windows of volume being dismounted + LINUX_CLOSE_EXPL_ON_DISMOUNT 0 @@ -16705,23 +17151,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Kernel Services + LINUX_PREF_KERNEL_SERVICES KernelServicesSizer wxVERTICAL + 1 protected - + 5 wxALL 0 - + 1 1 1 @@ -16750,7 +17197,7 @@ 0 0 wxID_ANY - Do not use kernel cryptographic services + LINUX_PREF_KERNEL_CRYPT 0 @@ -16812,9 +17259,9 @@ - + - Performance + LINUX_PREF_TAB_PERFORMANCE 0 1 @@ -16890,46 +17337,47 @@ - + bSizer151 wxVERTICAL none - + 5 wxALL|wxEXPAND 1 - + bSizer152 wxVERTICAL none - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Hardware Acceleration + IDT_ACCELERATION_OPTIONS sbSizer44 wxVERTICAL + 1 none - + 5 wxEXPAND 1 - + bSizer158 wxHORIZONTAL none - + 5 wxALL 0 - + 1 1 1 @@ -16957,7 +17405,8 @@ 0 0 wxID_ANY - Processor (CPU) in this computer supports hardware acceleration for AES: + IDT_HW_AES_SUPPORTED_BY_CPU + 0 0 @@ -17008,11 +17457,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -17041,6 +17490,7 @@ 0 wxID_ANY + 0 0 @@ -17093,21 +17543,21 @@ - + 5 wxBOTTOM 0 - + 0 protected 0 - + 5 wxALL 0 - + 1 1 1 @@ -17136,7 +17586,7 @@ 0 0 wxID_ANY - Do not accelerate AES encryption/decryption by using the AES instructions of the processor + IDC_ENABLE_HARDWARE_ENCRYPTION_NEG 0 @@ -17198,9 +17648,9 @@ - + - Keyfiles + LINUX_PREF_TAB_KEYFILES 0 1 @@ -17276,37 +17726,38 @@ - + bSizer40 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer43 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + wxID_ANY - Default Keyfiles + IDD_KEYFILES bSizer42 wxVERTICAL + 1 none - + 5 wxEXPAND 1 - + DefaultKeyfilesSizer wxVERTICAL @@ -17315,11 +17766,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -17348,7 +17799,7 @@ 0 0 wxID_ANY - Use keyfiles by default + IDC_KEYFILES_ENABLE 0 @@ -17408,9 +17859,9 @@ - + - Security Tokens + LINUX_PREF_TAB_TOKENS 0 1 @@ -17486,46 +17937,47 @@ - + bSizer127 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer128 wxVERTICAL none - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - PKCS #11 Library Path + IDT_PKCS11_LIB_PATH sbSizer36 wxVERTICAL + 1 none - + 5 wxEXPAND 1 - + bSizer129 wxHORIZONTAL none - + 5 wxALL 1 - + 1 1 1 @@ -17612,11 +18064,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -17645,7 +18097,8 @@ 0 0 wxID_ANY - Select &Library... + IDC_SELECT_PKCS11_MODULE + 0 0 @@ -17704,23 +18157,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Security Options + IDT_SECURITY_OPTIONS sbSizer37 wxVERTICAL + 1 none - + 5 wxALL 0 - + 1 1 1 @@ -17749,7 +18203,7 @@ 0 0 wxID_ANY - &Close token session (log out) after a volume is successfully mounted + IDC_CLOSE_TOKEN_SESSION_AFTER_MOUNT 0 @@ -17811,9 +18265,9 @@ - + - Hotkeys + LINUX_HOTKEYS 0 1 @@ -17889,37 +18343,38 @@ - + bSizer51 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer38 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + wxID_ANY - System-Wide Hotkeys + LINUX_SYSTEM_HOTKEYS sbSizer21 wxVERTICAL + 1 none - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -18020,23 +18475,24 @@ - + 5 wxEXPAND|wxALL 0 wxID_ANY - Shortcut + SHORTCUT sbSizer23 wxVERTICAL + 1 none - + 5 wxALIGN_RIGHT 1 - + 3 wxBOTH @@ -18048,11 +18504,11 @@ none 2 0 - + 5 wxALIGN_CENTER_VERTICAL|wxALIGN_RIGHT|wxTOP|wxBOTTOM|wxLEFT 0 - + 1 1 1 @@ -18080,7 +18536,8 @@ 0 0 wxID_ANY - Key to assign: + IDT_HOTKEY_KEY + 0 0 @@ -18131,11 +18588,11 @@ - + 5 wxALL|wxEXPAND|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -18222,11 +18679,11 @@ - + 5 wxALL|wxALIGN_CENTER_VERTICAL 1 - + 1 1 1 @@ -18255,7 +18712,8 @@ 0 0 wxID_ANY - Assign + IDC_HOTKEY_ASSIGN + 0 0 @@ -18310,21 +18768,21 @@ - + 5 wxEXPAND 1 - + 0 protected 0 - + 5 wxEXPAND 1 - + 4 0 @@ -18332,11 +18790,11 @@ none 1 0 - + 5 wxALL 0 - + 1 1 1 @@ -18365,7 +18823,7 @@ 0 0 wxID_ANY - Control + VK_CONTROL 0 @@ -18420,11 +18878,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -18453,7 +18911,7 @@ 0 0 wxID_ANY - Shift + VK_SHIFT 0 @@ -18508,11 +18966,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -18541,7 +18999,7 @@ 0 0 wxID_ANY - Alt + VK_ALT 0 @@ -18596,11 +19054,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -18629,7 +19087,7 @@ 0 0 wxID_ANY - Win + VK_WIN 0 @@ -18686,11 +19144,11 @@ - + 5 wxALL 1 - + 1 1 1 @@ -18719,7 +19177,8 @@ 0 0 wxID_ANY - Remove + IDC_KEYREMOVE + 0 0 @@ -18778,23 +19237,24 @@ - + 5 wxEXPAND|wxALL 0 wxID_ANY - Options + IDT_FORMAT_OPTIONS sbSizer24 wxVERTICAL + 1 none - + 5 wxALL 0 - + 1 1 1 @@ -18823,7 +19283,7 @@ 0 0 wxID_ANY - Play system notification sound after mount/dismount + LINUX_SOUND_NOTIFICATION 0 @@ -18878,11 +19338,11 @@ - + 5 wxALL 0 - + 1 1 1 @@ -18911,7 +19371,7 @@ 0 0 wxID_ANY - Display confirmation message box after dismount + LINUX_CONFIRM_AFTER_DISMOUNT 0 @@ -18977,32 +19437,205 @@ - - 5 - wxEXPAND|wxALL - 0 - - 0 - 1 - 0 - 0 - 0 - 1 - 0 - 0 - - StdButtons - protected - - OnCancelButtonClick - - - - OnOKButtonClick - - - - + + 5 + wxALL|wxEXPAND + 0 + + + bSizer182 + wxHORIZONTAL + none + + 5 + wxEXPAND + 1 + + 0 + protected + 0 + + + + 5 + wxALIGN_RIGHT|wxALL + 0 + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 0 + 1 + + 1 + 1 + 0 + Dock + 0 + Left + 1 + + 1 + + 0 + 0 + wxID_OK + IDOK + 0 + + 0 + + + 0 + + 1 + OKButton + 1 + + + protected + 1 + + Resizable + 1 + + + + 0 + + + wxFILTER_NONE + wxDefaultValidator + + + + + OnOKButtonClick + + + + + + + + + + + + + + + + + + + + + + + + + + + 5 + wxALL + 0 + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 0 + 1 + + 1 + 0 + 0 + Dock + 0 + Left + 1 + + 1 + + 0 + 0 + wxID_CANCEL + IDCANCEL + 0 + + 0 + + + 0 + + 1 + CancelButton + 1 + + + protected + 1 + + Resizable + 1 + + + + 0 + + + wxFILTER_NONE + wxDefaultValidator + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -19028,7 +19661,7 @@ wxDEFAULT_DIALOG_STYLE - VeraCrypt - Random Pool Enrichment + IDD_RANDOM_POOL_ENRICHMENT @@ -19134,7 +19767,8 @@ 0 0 wxID_ANY - Mixing PRF: + IDT_PRF + 0 0 @@ -19295,6 +19929,7 @@ sbSizer43 wxVERTICAL + 1 none @@ -19338,7 +19973,8 @@ 0 0 wxID_ANY - Random Pool: + IDT_RANDOM_POOL + 0 0 @@ -19422,6 +20058,7 @@ 0 wxID_ANY + 0 0 @@ -19505,7 +20142,7 @@ 0 0 wxID_ANY - Show + IDC_DISPLAY_POOL_CONTENTS 0 @@ -19578,10 +20215,11 @@ 0 wxID_ANY - Randomness Collected From Mouse Movements + IDT_ENTROPY_BAR sbSizer45 wxVERTICAL + 1 none @@ -19715,7 +20353,8 @@ 0 0 wxID_ANY - IMPORTANT: Move your mouse as randomly as possible within this window. The longer you move it, the better. This significantly increases security. When done, click 'Continue'. + IDT_RANDOM_POOL_ENRICHMENT_NOTE + 0 0 @@ -19830,7 +20469,8 @@ 0 0 wxID_OK - &Continue + CONTINUE + 0 0 @@ -19922,7 +20562,7 @@ -1,-1 wxDEFAULT_DIALOG_STYLE - Security Token Keyfiles + IDD_KEYFILES wxWS_EX_VALIDATE_RECURSIVELY @@ -20133,7 +20773,8 @@ 0 0 wxID_ANY - &Export... + IDC_EXPORT + 0 0 @@ -20221,7 +20862,8 @@ 0 0 wxID_ANY - &Delete + VKEY_2E + 0 0 @@ -20319,7 +20961,8 @@ 0 0 wxID_ANY - &Import Keyfile to Token... + IDC_IMPORT_KEYFILE + 0 0 @@ -20420,7 +21063,8 @@ 0 0 wxID_OK - OK + IDOK + 0 0 @@ -20508,7 +21152,8 @@ 0 0 wxID_CANCEL - Cancel + IDCANCEL + 0 0 @@ -20587,10 +21232,10 @@ VolumePropertiesDialogBase - + -1,-1 wxDEFAULT_DIALOG_STYLE - Volume Properties + IDD_VOLUME_PROPERTIES @@ -20631,25 +21276,25 @@ - + bSizer49 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + bSizer50 wxVERTICAL none - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -20750,30 +21395,124 @@ - + 5 - wxALL|wxALIGN_CENTER_HORIZONTAL + wxALL|wxEXPAND 0 - - 0 - 0 - 0 - 0 - 0 - 1 - 0 - 0 + - StdButtons - protected - - - - - - - - + bSizer169 + wxHORIZONTAL + none + + 5 + wxEXPAND + 1 + + 0 + protected + 0 + + + + 5 + wxALL + 0 + + 1 + 1 + 1 + 1 + + + + + + + + 1 + 0 + 1 + + 1 + 1 + 0 + Dock + 0 + Left + 1 + + 1 + + 0 + 0 + wxID_OK + IDOK + 0 + + 0 + + + 0 + + 1 + OKButton + 1 + + + protected + 1 + + Resizable + 1 + + + + 0 + + + wxFILTER_NONE + wxDefaultValidator + + + + + OnOKButtonClick + + + + + + + + + + + + + + + + + + + + + + + + + + + 5 + wxEXPAND + 1 + + 0 + protected + 0 + + @@ -20832,55 +21571,56 @@ - + bSizer93 wxVERTICAL none - + 5 wxEXPAND 1 - + bSizer94 wxVERTICAL none - + 5 wxEXPAND 1 - + bSizer95 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + wxID_ANY - Encryption Algorithm + ENCRYPTION_ALGORITHM_LV sbSizer29 wxVERTICAL + 1 none - + 5 wxEXPAND 0 - + bSizer96 wxHORIZONTAL none - + 5 wxALL|wxALIGN_CENTER_VERTICAL 1 - + 1 1 1 @@ -20964,11 +21704,11 @@ - + 5 wxALL|wxALIGN_CENTER_VERTICAL|wxEXPAND 0 - + 1 1 1 @@ -20997,7 +21737,8 @@ 0 0 wxID_ANY - &Test + TEST + 0 0 @@ -21054,11 +21795,11 @@ - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -21087,6 +21828,7 @@ 0 wxID_ANY + 0 0 @@ -21137,20 +21879,20 @@ - + 5 wxEXPAND 0 - + bSizer97 wxHORIZONTAL none - + 5 wxALL 0 - + 1 1 1 @@ -21179,7 +21921,7 @@ 0 wxSYS_COLOUR_WINDOWTEXT wxID_ANY - More information + IDC_LINK_MORE_INFO_ABOUT_CIPHER 0 @@ -21233,21 +21975,21 @@ - + 5 wxEXPAND 1 - + 0 protected 0 - + 5 wxALL 0 - + 1 1 1 @@ -21276,7 +22018,8 @@ 0 0 wxID_ANY - &Benchmark + IDC_BENCHMARK + 0 0 @@ -21335,23 +22078,24 @@ - + 5 wxEXPAND|wxALL 0 - + wxID_ANY - Hash Algorithm + IDT_HASH_ALGO sbSizer30 wxHORIZONTAL + 1 none - + 5 wxALL|wxALIGN_CENTER_VERTICAL 1 - + 1 1 1 @@ -21435,11 +22179,11 @@ - + 5 wxALL|wxALIGN_CENTER_VERTICAL 0 - + 1 1 1 @@ -21468,7 +22212,7 @@ 0 wxSYS_COLOUR_WINDOWTEXT wxID_ANY - Information on hash algorithms + IDC_LINK_HASH_INFO 0 @@ -21582,25 +22326,25 @@ - + bSizer71 wxVERTICAL none - + 5 wxEXPAND 1 - + InfoPageSizer wxVERTICAL protected - + 5 wxALL|wxEXPAND 1 - + 1 1 1 @@ -21629,6 +22373,7 @@ 0 wxID_ANY + 0 0 @@ -21740,29 +22485,29 @@ bSizer19 wxVERTICAL none - + 5 wxEXPAND 1 - + bSizer20 wxHORIZONTAL none - + 5 wxEXPAND 1 - + bSizer21 wxVERTICAL none - + 5 wxEXPAND|wxALL 1 - + 1 1 1 @@ -21863,20 +22608,20 @@ - + 5 wxEXPAND 0 - + bSizer137 wxHORIZONTAL none - + 5 wxEXPAND|wxTOP|wxBOTTOM|wxLEFT 0 - + 1 1 1 @@ -21905,7 +22650,8 @@ 0 0 wxID_ANY - Add &Files... + IDC_KEYADD + 0 0 @@ -21960,11 +22706,11 @@ - + 5 wxEXPAND|wxTOP|wxBOTTOM|wxLEFT 0 - + 1 1 1 @@ -21993,7 +22739,8 @@ 0 0 wxID_ANY - Add &Path... + IDC_ADD_KEYFILE_PATH + 0 0 @@ -22048,11 +22795,11 @@ - + 5 wxEXPAND|wxTOP|wxBOTTOM|wxLEFT 0 - + 1 1 1 @@ -22081,7 +22828,8 @@ 0 0 wxID_ANY - Add &Token Files... + IDC_TOKEN_FILES_ADD + 0 0 @@ -22136,11 +22884,11 @@ - + 5 wxEXPAND|wxTOP|wxBOTTOM|wxLEFT 0 - + 1 1 1 @@ -22169,7 +22917,8 @@ 0 0 wxID_ANY - &Remove + IDC_KEYREMOVE + 0 0 @@ -22224,11 +22973,11 @@ - + 5 wxEXPAND|wxALL 0 - + 1 1 1 @@ -22257,7 +23006,8 @@ 0 0 wxID_ANY - Remove &All + IDC_KEYREMOVEALL + 0 0 @@ -22515,7 +23265,8 @@ 0 0 wxID_ANY - &Abort + IDC_ABORT_BUTTON + 0 0 @@ -22605,6 +23356,7 @@ 0 wxID_ANY + 0 0 @@ -22858,7 +23610,8 @@ 0 0 wxID_ANY - &Browse... + IDC_BROWSE_FILES + 0 0 @@ -22948,6 +23701,7 @@ 0 wxID_ANY + 0 0 @@ -23133,6 +23887,7 @@ 0 wxID_ANY + 0 0 @@ -23263,6 +24018,7 @@ sbSizer31 wxVERTICAL + 1 none @@ -23335,7 +24091,8 @@ 0 0 wxID_ANY - Random Pool: + IDT_RANDOM_POOL + 0 0 @@ -23428,6 +24185,7 @@ 0 wxID_ANY + 0 0 @@ -23511,7 +24269,7 @@ 0 0 wxID_ANY - Show + IDC_DISPLAY_POOL_CONTENTS 0 @@ -23600,7 +24358,8 @@ 0 0 wxID_ANY - Header Key: + IDT_HEADER_KEY + 0 0 @@ -23684,6 +24443,7 @@ 0 wxID_ANY + 0 0 @@ -23766,7 +24526,8 @@ 0 0 wxID_ANY - Master Key: + IDT_MASTER_KEY + 0 0 @@ -23850,6 +24611,7 @@ 0 wxID_ANY + 0 0 @@ -23910,10 +24672,11 @@ 0 wxID_ANY - Randomness Collected From Mouse Movements + IDT_ENTROPY_BAR sbSizer45 wxVERTICAL + 1 none @@ -24015,6 +24778,7 @@ sbSizer32 wxVERTICAL + 1 none @@ -24146,7 +24910,8 @@ 0 0 wxID_ANY - Abort + IDC_ABORT_BUTTON + 0 0 @@ -24256,7 +25021,8 @@ 0 0 wxID_ANY - Done + IDT_DONE + 0 0 @@ -24423,6 +25189,7 @@ 0 wxID_ANY + 0 0 @@ -24519,7 +25286,8 @@ 0 0 wxID_ANY - Speed + IDT_SPEED + 0 0 @@ -24686,6 +25454,7 @@ 0 wxID_ANY + 0 0 @@ -24782,7 +25551,8 @@ 0 0 wxID_ANY - Left + IDT_LEFT + 0 0 @@ -24949,6 +25719,7 @@ 0 wxID_ANY + 0 0 @@ -25041,6 +25812,7 @@ 0 wxID_ANY + 0 0 @@ -25263,6 +26035,8 @@ + + @@ -25331,7 +26105,8 @@ 0 0 wxID_ANY - Select &File... + IDC_SELECT_FILE + 0 0 @@ -25419,7 +26194,8 @@ 0 0 wxID_ANY - Select D&evice... + IDC_SELECT_DEVICE + 0 0 @@ -25530,7 +26306,7 @@ 0 0 wxID_ANY - &Never save history + IDC_NO_HISTORY 0 @@ -25634,6 +26410,7 @@ 0 wxID_ANY + 0 0 @@ -25760,10 +26537,11 @@ 0 wxID_ANY - Filesystem Options + IDT_FORMAT_OPTIONS sbSizer33 wxVERTICAL + 1 none @@ -25814,7 +26592,8 @@ 0 0 wxID_ANY - Filesystem type: + IDT_FILESYSTEM + 0 0 @@ -25963,10 +26742,11 @@ 0 wxID_ANY - Volume Format Options + IDT_FORMAT_OPTIONS sbSizer34 wxVERTICAL + 1 none @@ -26002,7 +26782,7 @@ 0 0 wxID_ANY - Quick format + IDC_QUICKFORMAT 0 @@ -26102,6 +26882,7 @@ 0 wxID_ANY + 0 0 @@ -26263,7 +27044,8 @@ 0 0 wxID_ANY - Password: + IDT_NEW_PASSWORD + 0 0 @@ -26443,7 +27225,8 @@ 0 0 wxID_ANY - Confirm password: + IDT_CONFIRM_PASSWORD + 0 0 @@ -26623,7 +27406,8 @@ 0 0 wxID_ANY - Volume PIM: + IDT_PIM + 0 0 @@ -26803,7 +27587,8 @@ 0 0 wxID_ANY - (Empty or 0 for default iterations) + IDC_PIM_HELP + 0 0 @@ -26890,7 +27675,7 @@ 0 0 wxID_ANY - Use PIM + IDC_NEW_PIM_ENABLE 0 @@ -26981,7 +27766,7 @@ 0 0 wxID_ANY - Cach&e passwords and keyfiles in memory + IDC_CACHE 0 @@ -27072,7 +27857,7 @@ 0 0 wxID_ANY - &Display password + IDC_SHOW_PASSWORD_MO 0 @@ -27163,7 +27948,7 @@ 0 0 wxID_ANY - U&se keyfiles + IDC_KEYFILES_ENABLE_HIDVOL_PROT 0 @@ -27254,7 +28039,8 @@ 0 0 wxID_ANY - &Keyfiles... + IDC_KEYFILES_HIDVOL_PROT + 0 0 @@ -27358,7 +28144,8 @@ 0 0 wxID_ANY - PKCS-5 PRF: + IDT_NEW_PKCS5_PRF + 0 0 @@ -27430,7 +28217,7 @@ 1 0 - "Unchanged" + "UNCHANGED" 1 1 @@ -27536,7 +28323,7 @@ 0 0 wxID_ANY - TrueCrypt Mode + IDC_TRUECRYPT_MODE 0 @@ -27626,7 +28413,8 @@ 0 0 wxID_ANY - Header Wipe: + IDT_WIPE_MODE + 0 0 @@ -27698,7 +28486,7 @@ 1 0 - "1-pass" "3-pass" "7-pass" "35-pass" "256-pass" + "WIPE_MODE_1_RAND" "WIPE_MODE_3_DOD_5220" "WIPE_MODE_7_DOD_5220" "WIPE_MODE_35_GUTMANN" "WIPE_MODE_256" 1 1 @@ -27896,6 +28684,7 @@ 0 wxID_ANY + 0 0 @@ -28066,7 +28855,8 @@ 0 0 wxID_ANY - Volume PIM: + IDT_PIM + 0 0 @@ -28240,7 +29030,8 @@ 0 0 wxID_ANY - (Empty or 0 for default iterations) + IDC_PIM_HELP + 0 0 @@ -28335,7 +29126,7 @@ 0 0 wxID_ANY - &Display PIM + IDC_SHOW_PIM 0 @@ -28427,6 +29218,7 @@ 0 wxID_ANY + 0 0 @@ -28790,6 +29582,7 @@ 0 wxID_ANY + 0 0 @@ -28883,6 +29676,7 @@ 0 wxID_ANY + 0 0 @@ -29037,6 +29831,7 @@ 0 wxID_ANY MyLabel + 0 0 diff --git a/src/Main/Forms/VolumeCreationWizard.cpp b/src/Main/Forms/VolumeCreationWizard.cpp index 5d814e89..dbb01974 100644 --- a/src/Main/Forms/VolumeCreationWizard.cpp +++ b/src/Main/Forms/VolumeCreationWizard.cpp @@ -117,7 +117,7 @@ namespace VeraCrypt page->SetPageTitle (LangString["INTRO_TITLE"]); page->AddChoice (VolumeHostType::File, LangString["IDC_FILE_CONTAINER"], LangString["IDT_FILE_CONTAINER"], L"introcontainer", LangString["IDC_MORE_INFO_ON_CONTAINERS"]); - page->AddChoice (VolumeHostType::Device, _("Create a volume within a partition/&drive"), _("Formats and encrypts a non-system partition, entire external or secondary drive, entire USB stick, etc.")); + page->AddChoice (VolumeHostType::Device, LangString["IDC_NONSYS_DEVICE"], LangString["IDT_NON_SYS_DEVICE"]); page->SetSelection (SelectedVolumeHostType); return page; @@ -138,7 +138,7 @@ namespace VeraCrypt case Step::VolumeLocation: { VolumeLocationWizardPage *page = new VolumeLocationWizardPage (GetPageParent(), SelectedVolumeHostType); - page->SetPageTitle (LangString["VOLUME_LOCATION"]); + page->SetPageTitle (LangString["LOCATION"]); if (SelectedVolumeType == VolumeType::Hidden) page->SetPageText (LangString[SelectedVolumeHostType == VolumeHostType::File ? "FILE_HELP_HIDDEN_HOST_VOL" : "DEVICE_HELP_HIDDEN_HOST_VOL"]); @@ -179,8 +179,8 @@ namespace VeraCrypt else if (SelectedVolumeType == VolumeType::Hidden) { pageTitle = LangString["SIZE_HIDVOL_TITLE"]; - pageText = LangString["SIZE_HELP_HIDDEN_VOL"] + L"\n\n" + _("Please note that if your operating system does not allocate files from the beginning of the free space, the maximum possible hidden volume size may be much smaller than the size of the free space on the outer volume. This is not a bug in VeraCrypt but a limitation of the operating system."); - freeSpaceText = StringFormatter (_("Maximum possible hidden volume size for this volume is {0}."), Gui->SizeToString (MaxHiddenVolumeSize)); + pageText = LangString["SIZE_HELP_HIDDEN_VOL"] + L"\n\n" + LangString["LINUX_DYNAMIC_NOTICE"]; + freeSpaceText = StringFormatter (LangString["LINUX_MAX_HIDDEN_SIZE"], Gui->SizeToString (MaxHiddenVolumeSize)); } else { @@ -246,11 +246,9 @@ namespace VeraCrypt SingleChoiceWizardPage *page = new SingleChoiceWizardPage (GetPageParent(), wxEmptyString, true); page->SetPageTitle (LangString["FILESYS_PAGE_TITLE"]); - page->AddChoice (false, _("I will not store files larger than 4 GB on the volume"), - _("Choose this option if you do not need to store files larger than 4 GB (4,294,967,296 bytes) on the volume.")); + page->AddChoice (true, LangString["UISTR_YES"],LangString["FILESYS_PAGE_HELP_QUESTION"]); - page->AddChoice (true, _("I will store files larger than 4 GB on the volume"), - _("Choose this option if you need to store files larger than 4 GB (4,294,967,296 bytes) on the volume.")); + page->AddChoice (false, LangString["UISTR_NO"],LangString["FILESYS_PAGE_HELP_EXPLANATION"]); page->SetSelection (LargeFilesSupport); return page; @@ -264,7 +262,7 @@ namespace VeraCrypt VolumeFormatOptionsWizardPage *page = new VolumeFormatOptionsWizardPage (GetPageParent(), filesystemSize, SectorSize, SelectedVolumePath.IsDevice() && (OuterVolume || SelectedVolumeType != VolumeType::Hidden), OuterVolume, LargeFilesSupport); - page->SetPageTitle (_("Format Options")); + page->SetPageTitle (LangString["FORMAT_TITLE"]); page->SetFilesystemType (SelectedFilesystemType); if (!OuterVolume && SelectedVolumeType == VolumeType::Hidden) @@ -277,13 +275,12 @@ namespace VeraCrypt case Step::CrossPlatformSupport: { SingleChoiceWizardPage *page = new SingleChoiceWizardPage (GetPageParent(), wxEmptyString, true); - page->SetPageTitle (_("Cross-Platform Support")); + page->SetPageTitle ( LangString["LINUX_CROSS_SUPPORT"]); - page->AddChoice (true, _("I will mount the volume on other platforms"), - _("Choose this option if you need to use the volume on other platforms.")); + page->AddChoice (true, LangString["LINUX_CROSS_SUPPORT_OTHER"], LangString["LINUX_CROSS_SUPPORT_OTHER_HELP"]); - page->AddChoice (false, StringFormatter (_("I will mount the volume only on {0}"), SystemInfo::GetPlatformName()), - _("Choose this option if you do not need to use the volume on other platforms.")); + page->AddChoice (false, StringFormatter ( LangString["LINUX_CROSS_SUPPORT_ONLY"], SystemInfo::GetPlatformName()), + LangString["LINUX_CROSS_SUPPORT_ONLY_HELP"]); page->SetSelection (CrossPlatformSupport); return page; @@ -312,7 +309,7 @@ namespace VeraCrypt page->SetPageTitle (LangString["FORMAT_FINISHED_TITLE"]); page->SetPageText (LangString["FORMAT_FINISHED_HELP"]); - SetCancelButtonText (_("Exit")); + SetCancelButtonText (LangString["IDC_EXIT"]); return page; } @@ -353,13 +350,12 @@ namespace VeraCrypt DirectoryPath OuterVolumeMountPoint; }; - InfoWizardPage *page = new InfoWizardPage (GetPageParent(), _("Open Outer Volume"), + InfoWizardPage *page = new InfoWizardPage (GetPageParent(), LangString["LINUX_OPEN_OUTER_VOL"], shared_ptr (new OpenOuterVolumeFunctor (MountedOuterVolume->MountPoint))); page->SetPageTitle (LangString["HIDVOL_HOST_FILLING_TITLE"]); - page->SetPageText (StringFormatter ( - _("Outer volume has been successfully created and mounted as '{0}'. To this volume you should now copy some sensitive-looking files that you actually do NOT want to hide. The files will be there for anyone forcing you to disclose your password. You will reveal only the password for this outer volume, not for the hidden one. The files that you really care about will be stored in the hidden volume, which will be created later on. When you finish copying, click Next. Do not dismount the volume.\n\nNote: After you click Next, the outer volume will be analyzed to determine the size of uninterrupted area of free space whose end is aligned with the end of the volume. This area will accommodate the hidden volume, so it will limit its maximum possible size. The procedure ensures no data on the outer volume are overwritten by the hidden volume."), + page->SetPageText (StringFormatter (LangString["LINUX_OUTER_VOL_IS_MOUNTED"], wstring (MountedOuterVolume->MountPoint))); return page; @@ -645,7 +641,7 @@ namespace VeraCrypt { if (partition.MountPoint == "/") { - Gui->ShowError (_("Error: You are trying to encrypt a system drive.\n\nVeraCrypt can encrypt a system drive only under Windows.")); + Gui->ShowError (LangString["LINUX_ERROR_TRY_ENCRYPT_SYSTEM_DRIVE"]); return GetCurrentStep(); } } @@ -680,11 +676,11 @@ namespace VeraCrypt { if (mountPoint == "/") { - Gui->ShowError (_("Error: You are trying to encrypt a system partition.\n\nVeraCrypt can encrypt system partitions only under Windows.")); + Gui->ShowError (LangString["LINUX_ERROR_TRY_ENCRYPT_SYSTEM_PARTITION"]); return GetCurrentStep(); } - if (!Gui->AskYesNo (StringFormatter (_("WARNING: Formatting of the device will destroy all data on filesystem '{0}'.\n\nDo you want to continue?"), wstring (mountPoint)), false, true)) + if (!Gui->AskYesNo (StringFormatter (LangString["LINUX_WARNING_FORMAT_DESTROY_FS"], wstring (mountPoint)), false, true)) return GetCurrentStep(); try @@ -694,7 +690,7 @@ namespace VeraCrypt catch (exception &e) { Gui->ShowError (e); - Gui->ShowError (StringFormatter (_("The filesystem of the selected device is currently mounted. Please dismount '{0}' before proceeding."), wstring (mountPoint))); + Gui->ShowError (StringFormatter (LangString["LINUX_MOUNTET_HINT"], wstring (mountPoint))); return GetCurrentStep(); } } @@ -815,7 +811,7 @@ namespace VeraCrypt //check if they have also the same PIM if (OuterPim == Pim) { - Gui->ShowError (_("The Hidden volume can't have the same password, PIM and keyfiles as the Outer volume")); + Gui->ShowError (LangString["LINUX_HIDDEN_PASS_NO_DIFF"]); return GetCurrentStep(); } } @@ -866,7 +862,7 @@ namespace VeraCrypt //check if they have also the same PIM if (OuterPim == Pim) { - Gui->ShowError (_("The Hidden volume can't have the same password, PIM and keyfiles as the Outer volume")); + Gui->ShowError (LangString["LINUX_HIDDEN_PASS_NO_DIFF"]); return GetCurrentStep(); } } @@ -931,11 +927,7 @@ namespace VeraCrypt { if (page->GetFilesystemType() != VolumeCreationOptions::FilesystemType::FAT) { - if (!Gui->AskYesNo (_("WARNING: You have selected a filesystem other than FAT for the outer volume.\n" - "Please Note that in this case VeraCrypt can't calculate the exact maximum allowed size for the hidden volume and it will use only an estimation that can be wrong.\n" - "Thus, it is your responsibility to use an adequate value for the size of the hidden volume so that it doesn\'t overlap the outer volume.\n\n" - "Do you want to continue using the selected filesystem for the outer volume?") - , false, true)) + if (!Gui->AskYesNo (LangString["LINUX_CONFIRM_INNER_VOLUME_CALC"], false, true)) { return GetCurrentStep(); } @@ -966,7 +958,7 @@ namespace VeraCrypt } if (forward && CrossPlatformSupport) - Gui->ShowWarning (StringFormatter (_("Please note that the volume will not be formatted with a FAT filesystem and, therefore, you may be required to install additional filesystem drivers on platforms other than {0}, which will enable you to mount the volume."), SystemInfo::GetPlatformName())); + Gui->ShowWarning (StringFormatter (LangString["LINUX_NOT_FAT_HINT"], SystemInfo::GetPlatformName())); return Step::CreationProgress; } @@ -984,15 +976,15 @@ namespace VeraCrypt if (OuterVolume && VolumeSize > TC_MAX_FAT_SECTOR_COUNT * SectorSize) { uint64 limit = TC_MAX_FAT_SECTOR_COUNT * SectorSize / BYTES_PER_TB; - wstring err = StringFormatter (_("Error: The hidden volume to be created is larger than {0} TB ({1} GB).\n\nPossible solutions:\n- Create a container/partition smaller than {0} TB.\n"), limit, limit * 1024); + wstring err = StringFormatter (LangString["LINUX_ERROR_SIZE_HIDDEN_VOL"], limit, limit * 1024); if (SectorSize < 4096) { - err += _("- Use a drive with 4096-byte sectors to be able to create partition/device-hosted hidden volumes up to 16 TB in size"); + err += LangString["LINUX_MAX_SIZE_HINT"]; #if defined (TC_LINUX) - err += _(".\n"); + err += LangString["LINUX_DOT_LF"]; #else - err += _(" (not supported by components available on this platform).\n"); + err += LangString["LINUX_NOT_SUPPORTED"]; #endif } @@ -1004,7 +996,7 @@ namespace VeraCrypt { wxString confirmMsg = LangString["OVERWRITEPROMPT_DEVICE"]; - if (!Gui->AskYesNo (wxString::Format (confirmMsg, wxString (_("DEVICE")).c_str(), wstring (SelectedVolumePath).c_str(), L""), false, true)) + if (!Gui->AskYesNo (wxString::Format (confirmMsg, wxString (LangString["DEVICE"]).c_str(), wstring (SelectedVolumePath).c_str(), L""), false, true)) return GetCurrentStep(); } else if (FilesystemPath (wstring (SelectedVolumePath)).IsFile()) diff --git a/src/Main/Forms/VolumeFormatOptionsWizardPage.cpp b/src/Main/Forms/VolumeFormatOptionsWizardPage.cpp index d3bd5216..8d632059 100644 --- a/src/Main/Forms/VolumeFormatOptionsWizardPage.cpp +++ b/src/Main/Forms/VolumeFormatOptionsWizardPage.cpp @@ -20,9 +20,7 @@ namespace VeraCrypt VolumeFormatOptionsWizardPage::VolumeFormatOptionsWizardPage (wxPanel* parent, uint64 filesystemSize, uint32 sectorSize, bool enableQuickFormatButton, bool disableNoneFilesystem, bool disable32bitFilesystems) : VolumeFormatOptionsWizardPageBase (parent) { - InfoStaticText->SetLabel (_( - "In order to enable your operating system to mount your new volume, it has to be formatted with a filesystem. Please select a filesystem type.\n\nIf your volume is going to be hosted on a device or partition, you can use 'Quick format' to skip encryption of free space of the volume.")); - + InfoStaticText->SetLabel ( LangString["QUICK_FORMAT_HELP"] ); if (!disableNoneFilesystem) FilesystemTypeChoice->Append (LangString["NONE"], (void *) VolumeCreationOptions::FilesystemType::None); diff --git a/src/Main/Forms/VolumePropertiesDialog.cpp b/src/Main/Forms/VolumePropertiesDialog.cpp index cbf5e012..4332e844 100644 --- a/src/Main/Forms/VolumePropertiesDialog.cpp +++ b/src/Main/Forms/VolumePropertiesDialog.cpp @@ -89,7 +89,7 @@ namespace VeraCrypt Fit(); Center(); - StdButtonsOK->SetDefault(); + OKButton->SetDefault(); } void VolumePropertiesDialog::AppendToList (const string &name, const wxString &value) diff --git a/src/Main/Forms/VolumeSizeWizardPage.cpp b/src/Main/Forms/VolumeSizeWizardPage.cpp index fc045b57..47d73983 100644 --- a/src/Main/Forms/VolumeSizeWizardPage.cpp +++ b/src/Main/Forms/VolumeSizeWizardPage.cpp @@ -52,13 +52,13 @@ namespace VeraCrypt wxString drive = wxFileName (wstring (volumePath)).GetVolume(); if (!drive.empty()) { - FreeSpaceStaticText->SetLabel (StringFormatter (_("Free space on drive {0}: is {1}."), + FreeSpaceStaticText->SetLabel (StringFormatter (LangString["LINUX_FREE_SPACE_ON_DRIVE"], drive, Gui->SizeToString (diskSpace.GetValue()))); } else #endif { - FreeSpaceStaticText->SetLabel (StringFormatter (_("Free space available: {0}"), + FreeSpaceStaticText->SetLabel (StringFormatter (LangString["DISK_FREE"], Gui->SizeToString (diskSpace.GetValue()))); } } diff --git a/src/Main/Forms/WaitDialog.h b/src/Main/Forms/WaitDialog.h index 33f044c9..89de8718 100644 --- a/src/Main/Forms/WaitDialog.h +++ b/src/Main/Forms/WaitDialog.h @@ -13,6 +13,7 @@ #include "Main/Main.h" #include "Main/Application.h" #include +#include namespace VeraCrypt { @@ -165,7 +166,7 @@ namespace VeraCrypt void OnAdminPasswordRequest(wxCommandEvent &) { - wxPasswordEntryDialog dialog (this, _("Enter your user password or administrator password:"), _("Administrator privileges required")); + wxPasswordEntryDialog dialog (this, LangString["LINUX_ADMIN_PW_QUERY"], LangString["LINUX_ADMIN_PW_QUERY_TITLE"]); if (dialog.ShowModal() != wxID_OK) m_queue.Post(wxT("")); else @@ -196,8 +197,9 @@ namespace VeraCrypt pParam->m_style |= wxSTAY_ON_TOP; } - - int iResult = wxMessageBox (pParam->m_message, pParam->m_caption, pParam->m_style, this); + wxMessageDialog cur(this, pParam->m_message, pParam->m_caption, pParam->m_style); + cur.SetYesNoLabels(LangString["UISTR_YES"], LangString["UISTR_NO"]); + int iResult = (cur.ShowModal() == wxID_YES ? wxYES : wxNO); delete pParam; m_queue.Post(wxString::Format(wxT("%d"), iResult)); } diff --git a/src/Main/Forms/WizardFrame.cpp b/src/Main/Forms/WizardFrame.cpp index 0a21f4eb..1a6d1eea 100644 --- a/src/Main/Forms/WizardFrame.cpp +++ b/src/Main/Forms/WizardFrame.cpp @@ -100,7 +100,7 @@ namespace VeraCrypt void WizardFrame::SetCancelButtonText (const wxString &text) { - CancelButton->SetLabel (text.empty() ? wxString (_("Cancel")) : text); + CancelButton->SetLabel (text.empty() ? wxString (LangString["IDC_ABORT_BUTTON"]) : text); } void WizardFrame::SetImage (const wxBitmap &bitmap) @@ -167,7 +167,7 @@ namespace VeraCrypt wxString nextButtonText = CurrentPage->GetNextButtonText(); if (nextButtonText.empty()) - NextButton->SetLabel (_("&Next >")); + NextButton->SetLabel (_("NEXT")); else NextButton->SetLabel (nextButtonText); diff --git a/src/Main/Forms/international.h b/src/Main/Forms/international.h new file mode 100644 index 00000000..a30adab0 --- /dev/null +++ b/src/Main/Forms/international.h @@ -0,0 +1,6 @@ +#ifdef TC_LINUX +#include "Main/LanguageStrings.h" +#undef _ +#define _(key) LangString[key] +#endif + diff --git a/src/Main/GraphicUserInterface.cpp b/src/Main/GraphicUserInterface.cpp index f1bb87b2..04e98855 100755 --- a/src/Main/GraphicUserInterface.cpp +++ b/src/Main/GraphicUserInterface.cpp @@ -58,7 +58,7 @@ namespace VeraCrypt #ifdef TC_MACOSX g_customIdCmdV = wxNewId(); g_customIdCmdA = wxNewId(); - wxApp::s_macHelpMenuTitleName = _("&Help"); + wxApp::s_macHelpMenuTitleName = LangString["MENU_HELP"]; #endif } @@ -466,7 +466,7 @@ namespace VeraCrypt } else { - wxPasswordEntryDialog dialog (Gui->GetActiveWindow(), _("Enter your user password or administrator password:"), _("Administrator privileges required")); + wxPasswordEntryDialog dialog (Gui->GetActiveWindow(), LangString["LINUX_ADMIN_PW_QUERY"], LangString["LINUX_ADMIN_PW_QUERY_TITLE"]); if (dialog.ShowModal() != wxID_OK) throw UserAbort (SRC_POS); sValue = dialog.GetValue(); @@ -885,7 +885,7 @@ namespace VeraCrypt #ifdef TC_LINUX if (volume && !Preferences.NonInteractive && !Preferences.DisableKernelEncryptionModeWarning && volume->EncryptionModeName != L"XTS" - && !AskYesNo (LangString["ENCRYPTION_MODE_NOT_SUPPORTED_BY_KERNEL"] + _("\n\nDo you want to show this message next time you mount such a volume?"), true, true)) + && !AskYesNo (LangString["ENCRYPTION_MODE_NOT_SUPPORTED_BY_KERNEL"] + LangString["LINUX_MESSAGE_ON_MOUNT_AGAIN"], true, true)) { UserPreferences prefs = GetPreferences(); prefs.DisableKernelEncryptionModeWarning = true; @@ -986,7 +986,7 @@ namespace VeraCrypt if (write (showFifo, buf, 1) == 1) { close (showFifo); - Gui->ShowInfo (_("VeraCrypt is already running.")); + Gui->ShowInfo (LangString["LINUX_VC_RUNNING_ALREADY"]); Application::SetExitCode (0); return false; } @@ -1018,7 +1018,7 @@ namespace VeraCrypt wxLog::FlushActive(); Application::SetExitCode (1); - Gui->ShowInfo (_("VeraCrypt is already running.")); + Gui->ShowInfo (LangStrin["LINUX_VC_RUNNING_ALREADY"]); return false; #endif } @@ -1887,9 +1887,9 @@ namespace VeraCrypt else { if (style & wxICON_EXCLAMATION) - caption = wxString (_("Warning")) + L':'; + caption = wxString (LangString["LINUX_WARNING"]) + L':'; else if (style & wxICON_ERROR || style & wxICON_HAND) - caption = wxString (_("Error")) + L':'; + caption = wxString (LangString["LINUX_ERROR"]) + L':'; else caption.clear(); } @@ -1907,8 +1907,9 @@ namespace VeraCrypt style |= wxSTAY_ON_TOP; } - - return wxMessageBox (subMessage, caption, style, GetActiveWindow()); + wxMessageDialog cur(GetActiveWindow(), subMessage, caption, style); + cur.SetYesNoLabels(LangString["UISTR_YES"], LangString["UISTR_NO"]); + return (cur.ShowModal() == wxID_YES ? wxYES : wxNO) ; } } @@ -1923,7 +1924,7 @@ namespace VeraCrypt void GraphicUserInterface::ThrowTextModeRequired () const { - Gui->ShowError (_("This feature is currently supported only in text mode.")); + Gui->ShowError (LangString["LINUX_ONLY_TEXTMODE"]); throw UserAbort (SRC_POS); } diff --git a/src/Main/LanguageStrings.cpp b/src/Main/LanguageStrings.cpp index efc1bfe5..3591255b 100644 --- a/src/Main/LanguageStrings.cpp +++ b/src/Main/LanguageStrings.cpp @@ -40,43 +40,28 @@ namespace VeraCrypt void LanguageStrings::Init () { +#ifdef TC_LINUX + static byte LanguageXml[] = + { +# include "Common/Language.xml.h" + , 0 + }; + string def = string ((const char*) LanguageXml); + foreach (XmlNode node, XmlParser (def).GetNodes (L"entry")) + { + wxString text = node.InnerText; + text.Replace (L"\\n", L"\n"); + text.Replace (L"%s", L"{0}"); + Map[StringConverter::ToSingle (wstring (node.Attributes[L"key"]))] = text; + } +#endif foreach (XmlNode node, XmlParser (Resources::GetLanguageXml()).GetNodes (L"entry")) { wxString text = node.InnerText; text.Replace (L"\\n", L"\n"); + text.Replace (L"%s", L"{0}"); Map[StringConverter::ToSingle (wstring (node.Attributes[L"key"]))] = text; } - - Map["EXCEPTION_OCCURRED"] = _("Exception occurred"); - Map["MOUNT"] = _("Mount"); - Map["MOUNT_POINT"] = _("Mount Directory"); - Map["NO"] = _("No"); - Map["NO_VOLUMES_MOUNTED"] = _("No volumes mounted."); - Map["OPEN_NEW_VOLUME"] = _("Specify a New VeraCrypt Volume"); - Map["PARAMETER_INCORRECT"] = _("Parameter incorrect"); - Map["SELECT_KEYFILES"] = _("Select Keyfiles"); - Map["START_TC"] = _("Start VeraCrypt"); - Map["VOLUME_ALREADY_MOUNTED"] = _("The volume \"{0}\" is already mounted."); - Map["UNKNOWN_OPTION"] = _("Unknown option"); - Map["VOLUME_LOCATION"] = _("Volume Location"); - Map["YES"] = _("Yes"); - Map["VOLUME_HOST_IN_USE"] = _("WARNING: The host file/device \"{0}\" is already in use!\n\nIgnoring this can cause undesired results including system instability. All applications that might be using the host file/device should be closed before mounting the volume.\n\nContinue mounting?"); - Map["VIRTUAL_DEVICE"] = _("Virtual Device"); - Map["CONFIRM_BACKGROUND_TASK_DISABLED"] = _("WARNING: If the VeraCrypt Background Task is disabled, the following functions, depending on the platform, will be disabled whenever you exit VeraCrypt:\n\n1) Auto-dismount (e.g., upon logoff, time-out, etc.)\n2) Notifications (e.g., when damage to hidden volume is prevented)\n3) Tray icon\n\nNote: You may shut down the Background Task anytime by right-clicking the VeraCrypt tray icon and selecting 'Exit'.\n\nAre you sure you want to disable the VeraCrypt Background Task?"); - Map["CONFIRM_EXIT"] = _("WARNING: If VeraCrypt exits now, the following functions, depending on the platform, will be disabled:\n\n1) Auto-dismount (e.g., upon logoff, time-out, etc.)\n2) Notifications (e.g., when damage to hidden volume is prevented)\n3) Tray icon\n\nNote: If you do not wish VeraCrypt to continue running in background after you close its window, disable the Background Task in the Preferences.\n\nAre you sure you want VeraCrypt to exit?"); - Map["DAMAGE_TO_HIDDEN_VOLUME_PREVENTED"] = _("WARNING: Data were attempted to be saved to the hidden volume area of the volume \"{0}\"!\n\nVeraCrypt prevented these data from being saved in order to protect the hidden volume. This may have caused filesystem corruption on the outer volume and the operating system may have reported a write error (\"Delayed Write Failed\", \"The parameter is incorrect\", etc.). The entire volume (both the outer and the hidden part) will be write-protected until it is dismounted.\n\nWe strongly recommend that you restart the operating system now."); - Map["ENTER_PASSWORD"] = _("Enter password"); - Map["ENTER_PASSWORD_FOR"] = _("Enter password for \"{0}\""); - Map["ENTER_TC_VOL_PASSWORD"] = _("Enter VeraCrypt Volume Password"); - Map["SELECT_KEYFILE_PATH"] = _("Select Keyfile Search Path"); - Map["MORE_INFO_ABOUT"] = _("More information on {0}"); - Map["TWO_LAYER_CASCADE_HELP"] = _("Two ciphers in a cascade operating in XTS mode. Each block is first encrypted with {0} ({1}-bit key) and then with {2} ({3}-bit key). Each cipher uses its own key. All keys are mutually independent."); - Map["THREE_LAYER_CASCADE_HELP"] = _("Three ciphers in a cascade operating in XTS mode. Each block is first encrypted with {0} ({1}-bit key), then with {2} ({3}-bit key), and finally with {4} ({5}-bit key). Each cipher uses its own key. All keys are mutually independent."); - Map["CHECKING_FS"] = _("Checking the file system on the VeraCrypt volume mounted as {0}..."); - Map["REPAIRING_FS"] = _("Attempting to repair the file system on the VeraCrypt volume mounted as {0}..."); - Map["UNMOUNT_LOCK_FAILED"] = _("Volume \"{0}\" contains files or folders being used by applications or system.\n\nForce dismount?"); - Map["VOLUME_SIZE_HELP"] = _("Please specify the size of the container to create. Note that the minimum possible size of a volume is 292 KiB."); - Map["ENCRYPTION_MODE_NOT_SUPPORTED_BY_KERNEL"] = _("The volume you have mounted uses a mode of operation that is not supported by the Linux kernel. You may experience slow performance when using this volume. To achieve full performance, you should move the data from this volume to a new volume created by VeraCrypt 5.0 or later."); } LanguageStrings LangString; diff --git a/src/Main/Main.make b/src/Main/Main.make index 0cadff2c..e3502664 100755 --- a/src/Main/Main.make +++ b/src/Main/Main.make @@ -250,6 +250,8 @@ prepare: $(APPNAME) chmod +x $(BASE_DIR)/Setup/Linux/usr/bin/$(APPNAME)-uninstall.sh cp $(BASE_DIR)/License.txt $(BASE_DIR)/Setup/Linux/usr/share/doc/$(APPNAME)/License.txt cp $(BASE_DIR)/../doc/html/* "$(BASE_DIR)/Setup/Linux/usr/share/doc/$(APPNAME)/HTML" + mkdir -p $(BASE_DIR)/Setup/Linux/usr/share/veracrypt/languages + cp -r $(BASE_DIR)/../Translations/* $(BASE_DIR)/Setup/Linux/usr/share/veracrypt/languages/ ifndef TC_NO_GUI mkdir -p $(BASE_DIR)/Setup/Linux/usr/share/applications diff --git a/src/Main/Resources.cpp b/src/Main/Resources.cpp index 52b3cd4f..fe2f2c95 100644 --- a/src/Main/Resources.cpp +++ b/src/Main/Resources.cpp @@ -14,6 +14,12 @@ #include "Platform/Platform.h" #include "Resources.h" +#ifdef TC_LINUX +#include "Platform/File.h" +#include "Platform/StringConverter.h" +#include +#endif + #ifdef TC_WINDOWS #include "Main/resource.h" #endif @@ -48,6 +54,79 @@ namespace VeraCrypt strBuf.Zero(); strBuf.CopyFrom (res); return string (reinterpret_cast (strBuf.Ptr())); +#elif TC_LINUX + // get language from env LANG + // support: C,POSIX, + // support for e.g. german: de_DE.UTF-8, de.UTF8, de_DE, de + // not support e.g.: de@Euro + string defaultLang("en"); + string filenamePrefix("/usr/share/veracrypt/languages/Language."); + string filenamePost(".xml"); + string filename = filenamePrefix + defaultLang + filenamePost; + if(const char* env_p = std::getenv("LANG")){ + string lang(env_p); + std::cout << lang << std::endl; + if ( lang.size() > 1 ){ + int found = lang.find("."); + if ( found > 1 ){ + string langTag = lang.substr (0,found); + string lowerLangTag(StringConverter::ToLower (langTag) ); + int foundUnderscore = lowerLangTag.find("_"); + if ( foundUnderscore > 0 ) { + lowerLangTag.replace(foundUnderscore,1,1,'-'); + filename = filenamePrefix + lowerLangTag + filenamePost; + FilesystemPath xml(filename); + if (! xml.IsFile()){ + string shortLangTag = lowerLangTag.substr(0,foundUnderscore); + filename = filenamePrefix + shortLangTag + filenamePost; + FilesystemPath xml(filename); + if (! xml.IsFile()){ + filename = filenamePrefix + defaultLang + filenamePost; + } + } + }else{ + filename = filenamePrefix + langTag + filenamePost; + FilesystemPath xml(filename); + if (! xml.IsFile()){ + filename = filenamePrefix + defaultLang + filenamePost; + } + } + }else{ + string lowerLang(StringConverter::ToLower (lang) ); + filename = filenamePrefix + lowerLang + filenamePost; + FilesystemPath xml(filename); + if (! xml.IsFile()){ + int foundUnderscore = lowerLang.find("_"); + if ( foundUnderscore > 0 ) { + lowerLang.replace(foundUnderscore,1,1,'-'); + filename = filenamePrefix + lowerLang + filenamePost; + FilesystemPath xml(filename); + if (! xml.IsFile()){ + filename = filenamePrefix + defaultLang + filenamePost; + } + } + } + } + } + } + FilesystemPath xml(filename); + if ( xml.IsFile() ){ + File file; + file.Open (xml, File::OpenRead, File::ShareRead); + vector keyfileData (file.Length()); + BufferPtr keyfileDataBuf (&keyfileData.front(), keyfileData.size()); + file.ReadCompleteBuffer (keyfileDataBuf); + file.Close(); + string langxml(keyfileData.begin(), keyfileData.end()); + return langxml; + } + static byte LanguageXml[] = + { +# include "Common/Language.xml.h" + , 0 + }; + + return string ((const char*) LanguageXml); #else static byte LanguageXml[] = { diff --git a/src/Main/TextUserInterface.cpp b/src/Main/TextUserInterface.cpp index 0ad0b958..2cacbb1b 100644 --- a/src/Main/TextUserInterface.cpp +++ b/src/Main/TextUserInterface.cpp @@ -238,7 +238,7 @@ namespace VeraCrypt while (true) { wxString s = AskString (StringFormatter (L"{0} (y={1}/n={2}) [{3}]: ", - message, LangString["YES"], LangString["NO"], LangString[defaultYes ? "YES" : "NO"])); + message, LangString["UISTR_YES"], LangString["UISTR_NO"], LangString[defaultYes ? "UISTR_YES" : "UISTR_NO"])); if (s.IsSameAs (L'n', false) || s.IsSameAs (L"no", false) || (!defaultYes && s.empty())) return false; diff --git a/src/Main/UserInterface.cpp b/src/Main/UserInterface.cpp index 35396b46..b4bfe836 100644 --- a/src/Main/UserInterface.cpp +++ b/src/Main/UserInterface.cpp @@ -54,7 +54,7 @@ namespace VeraCrypt if (!Preferences.NonInteractive) { if (!SystemInfo::IsVersionAtLeast (2, 6, 24)) - ShowWarning (_("Your system uses an old version of the Linux kernel.\n\nDue to a bug in the Linux kernel, your system may stop responding when writing data to a VeraCrypt volume. This problem can be solved by upgrading the kernel to version 2.6.24 or later.")); + ShowWarning (LangString["LINUX_KERNEL_OLD"]); } #endif // TC_LINUX } @@ -212,7 +212,7 @@ namespace VeraCrypt { if (!message.IsEmpty()) message += L'\n'; - message += StringFormatter (_("Volume \"{0}\" has been dismounted."), wstring (volume->Path)); + message += StringFormatter (LangString["LINUX_VOL_DISMOUNTED"], wstring (volume->Path)); } } @@ -247,7 +247,7 @@ namespace VeraCrypt foreach_ref (const VolumeInfo &volume, volumes) { - prop << _("Slot") << L": " << StringConverter::FromNumber (volume.SlotNumber) << L'\n'; + prop << LangString["TOKEN_SLOT_ID"] << L": " << StringConverter::FromNumber (volume.SlotNumber) << L'\n'; prop << LangString["VOLUME"] << L": " << wstring (volume.Path) << L'\n'; #ifndef TC_WINDOWS prop << LangString["VIRTUAL_DEVICE"] << L": " << wstring (volume.VirtualDevice) << L'\n'; @@ -355,7 +355,7 @@ namespace VeraCrypt // bad_alloc const bad_alloc *outOfMemory = dynamic_cast (&ex); if (outOfMemory) - return _("Out of memory."); + return LangString["LINUX_OOM"]; // Unresolved exceptions string typeName (StringConverter::GetTypeName (typeid (ex))); @@ -384,12 +384,12 @@ namespace VeraCrypt // ElevationFailed if (dynamic_cast (&ex)) - errOutput += wxString (_("Failed to obtain administrator privileges")) + (StringConverter::Trim (execEx->GetErrorOutput()).empty() ? L". " : L": "); + errOutput += wxString (LangString["LINUX_CANT_GET_ADMIN_PRIV"]) + (StringConverter::Trim (execEx->GetErrorOutput()).empty() ? L". " : L": "); errOutput += StringConverter::ToWide (execEx->GetErrorOutput()); if (errOutput.empty()) - return errOutput + StringFormatter (_("Command \"{0}\" returned error {1}."), execEx->GetCommand(), execEx->GetExitCode()); + return errOutput + StringFormatter (LangString["LINUX_COMMAND_GET_ERROR"], execEx->GetCommand(), execEx->GetExitCode()); return wxString (errOutput).Trim (true); } @@ -406,7 +406,7 @@ namespace VeraCrypt if (Keyfile::WasHiddenFilePresentInKeyfilePath()) { #ifdef TC_UNIX - message += _("\n\nWarning: Hidden files are present in a keyfile path. If you need to use them as keyfiles, remove the leading dot from their filenames. Hidden files are visible only if enabled in system options."); + message += LangString["LINUX_HIDDEN_FILES_PRESENT_IN_KEYFILE_PATH"]; #else message += LangString["HIDDEN_FILES_PRESENT_IN_KEYFILE_PATH"]; #endif @@ -442,60 +442,61 @@ namespace VeraCrypt wxString UserInterface::ExceptionTypeToString (const std::type_info &ex) { + #define EX2MSG(exception, message) do { if (ex == typeid (exception)) return (message); } while (false) EX2MSG (DriveLetterUnavailable, LangString["DRIVE_LETTER_UNAVAILABLE"]); - EX2MSG (DeviceSectorSizeMismatch, _("Storage device and VC volume sector size mismatch")); - EX2MSG (EncryptedSystemRequired, _("This operation must be performed only when the system hosted on the volume is running.")); + EX2MSG (DeviceSectorSizeMismatch, LangString["LINUX_EX2MSG_DEVICESECTORSIZEMISMATCH"]); + EX2MSG (EncryptedSystemRequired, LangString["LINUX_EX2MSG_ENCRYPTEDSYSTEMREQUIRED"]); EX2MSG (ExternalException, LangString["EXCEPTION_OCCURRED"]); - EX2MSG (InsufficientData, _("Not enough data available.")); + EX2MSG (InsufficientData, LangString["LINUX_EX2MSG_INSUFFICIENTDATA"]); EX2MSG (InvalidSecurityTokenKeyfilePath, LangString["INVALID_TOKEN_KEYFILE_PATH"]); EX2MSG (HigherVersionRequired, LangString["NEW_VERSION_REQUIRED"]); - EX2MSG (KernelCryptoServiceTestFailed, _("Kernel cryptographic service test failed. The cryptographic service of your kernel most likely does not support volumes larger than 2 TB.\n\nPossible solutions:\n- Upgrade the Linux kernel to version 2.6.33 or later.\n- Disable use of the kernel cryptographic services (Settings > Preferences > System Integration) or use 'nokernelcrypto' mount option on the command line.")); + EX2MSG (KernelCryptoServiceTestFailed, LangString["LINUX_EX2MSG_KERNELCRYPTOSERVICETESTFAILED"]); EX2MSG (KeyfilePathEmpty, LangString["ERR_KEYFILE_PATH_EMPTY"]); - EX2MSG (LoopDeviceSetupFailed, _("Failed to set up a loop device.")); - EX2MSG (MissingArgument, _("A required argument is missing.")); - EX2MSG (MissingVolumeData, _("Volume data missing.")); - EX2MSG (MountPointRequired, _("Mount point required.")); - EX2MSG (MountPointUnavailable, _("Mount point is already in use.")); + EX2MSG (LoopDeviceSetupFailed, LangString["LINUX_EX2MSG_LOOPDEVICESETUPFAILED"]); + EX2MSG (MissingArgument, LangString["LINUX_EX2MSG_MISSINGARGUMENT"]); + EX2MSG (MissingVolumeData, LangString["LINUX_EX2MSG_MISSINGVOLUMEDATA"]); + EX2MSG (MountPointRequired, LangString["LINUX_EX2MSG_MOUNTPOINTREQUIRED"]); + EX2MSG (MountPointUnavailable, LangString["LINUX_EX2MSG_MOUNTPOINTUNAVAILABLE"]); EX2MSG (NoDriveLetterAvailable, LangString["NO_FREE_DRIVES"]); - EX2MSG (PasswordEmpty, _("No password or keyfile specified.")); + EX2MSG (PasswordEmpty, LangString["LINUX_EX2MSG_PASSWORDEMPTY"]); EX2MSG (PasswordIncorrect, LangString["PASSWORD_WRONG"]); EX2MSG (PasswordKeyfilesIncorrect, LangString["PASSWORD_OR_KEYFILE_WRONG"]); - EX2MSG (PasswordOrKeyboardLayoutIncorrect, LangString["PASSWORD_OR_KEYFILE_WRONG"] + _("\n\nNote that pre-boot authentication passwords need to be typed in the pre-boot environment where non-US keyboard layouts are not available. Therefore, pre-boot authentication passwords must always be typed using the standard US keyboard layout (otherwise, the password will be typed incorrectly in most cases). However, note that you do NOT need a real US keyboard; you just need to change the keyboard layout in your operating system.")); - EX2MSG (PasswordOrMountOptionsIncorrect, LangString["PASSWORD_OR_KEYFILE_OR_MODE_WRONG"] + _("\n\nNote: If you are attempting to mount a partition located on an encrypted system drive without pre-boot authentication or to mount the encrypted system partition of an operating system that is not running, you can do so by selecting 'Options >' > 'Mount partition using system encryption'.")); - EX2MSG (PasswordTooLong, StringFormatter (_("Password is longer than {0} characters."), (int) VolumePassword::MaxSize)); + EX2MSG (PasswordOrKeyboardLayoutIncorrect, LangString["PASSWORD_OR_KEYFILE_WRONG"] + LangString["LINUX_EX2MSG_PASSWORDORKEYBOARDLAYOUTINCORRECT"]); + EX2MSG (PasswordOrMountOptionsIncorrect, LangString["PASSWORD_OR_KEYFILE_OR_MODE_WRONG"] + LangString["LINUX_EX2MSG_PASSWORDORMOUNTOPTIONSINCORRECT"]); + EX2MSG (PasswordTooLong, StringFormatter (LangString["LINUX_EX2MSG_PASSWORDTOOLONG"], (int) VolumePassword::MaxSize)); EX2MSG (PasswordUTF8TooLong, LangString["PASSWORD_UTF8_TOO_LONG"]); EX2MSG (PasswordLegacyUTF8TooLong, LangString["LEGACY_PASSWORD_UTF8_TOO_LONG"]); EX2MSG (PasswordUTF8Invalid, LangString["PASSWORD_UTF8_INVALID"]); - EX2MSG (PartitionDeviceRequired, _("Partition device required.")); - EX2MSG (ProtectionPasswordIncorrect, _("Incorrect password to the protected hidden volume or the hidden volume does not exist.")); - EX2MSG (ProtectionPasswordKeyfilesIncorrect,_("Incorrect keyfile(s) and/or password to the protected hidden volume or the hidden volume does not exist.")); + EX2MSG (PartitionDeviceRequired, LangString["LINUX_EX2MSG_PARTITIONDEVICEREQUIRED"]); + EX2MSG (ProtectionPasswordIncorrect, LangString["LINUX_EX2MSG_PROTECTIONPASSWORDINCORRECT"]); + EX2MSG (ProtectionPasswordKeyfilesIncorrect, LangString["LINUX_EX2MSG_PROTECTIONPASSWORDKEYFILESINCORRECT"]); EX2MSG (RootDeviceUnavailable, LangString["NODRIVER"]); EX2MSG (SecurityTokenKeyfileAlreadyExists, LangString["TOKEN_KEYFILE_ALREADY_EXISTS"]); EX2MSG (SecurityTokenKeyfileNotFound, LangString["TOKEN_KEYFILE_NOT_FOUND"]); EX2MSG (SecurityTokenLibraryNotInitialized, LangString["PKCS11_MODULE_INIT_FAILED"]); - EX2MSG (StringConversionFailed, _("Invalid characters encountered.")); - EX2MSG (StringFormatterException, _("Error while parsing formatted string.")); - EX2MSG (TemporaryDirectoryFailure, _("Failed to create a file or directory in a temporary directory.\n\nPlease make sure that the temporary directory exists, its security permissions allow you to access it, and there is sufficient disk space.")); + EX2MSG (StringConversionFailed, LangString["LINUX_EX2MSG_STRINGCONVERSIONFAILED"]); + EX2MSG (StringFormatterException, LangString["LINUX_EX2MSG_STRINGFORMATTEREXCEPTION"]); + EX2MSG (TemporaryDirectoryFailure, LangString["LINUX_EX2MSG_TEMPORARYDIRECTORYFAILURE"]); EX2MSG (UnportablePassword, LangString["UNSUPPORTED_CHARS_IN_PWD"]); #if defined (TC_LINUX) EX2MSG (UnsupportedSectorSize, LangString["SECTOR_SIZE_UNSUPPORTED"]); - EX2MSG (UnsupportedSectorSizeHiddenVolumeProtection, _("Error: The drive uses a sector size other than 512 bytes.\n\nDue to limitations of components available on your platform, outer volumes hosted on the drive cannot be mounted using hidden volume protection.\n\nPossible solutions:\n- Use a drive with 512-byte sectors.\n- Create a file-hosted volume (container) on the drive.\n- Backup the contents of the hidden volume and then update the outer volume.")); - EX2MSG (UnsupportedSectorSizeNoKernelCrypto, _("Error: The drive uses a sector size other than 512 bytes.\n\nDue to limitations of components available on your platform, partition/device-hosted volumes on the drive can only be mounted using kernel cryptographic services.\n\nPossible solutions:\n- Enable use of the kernel cryptographic services (Preferences > System Integration).\n- Use a drive with 512-byte sectors.\n- Create a file-hosted volume (container) on the drive.")); + EX2MSG (UnsupportedSectorSizeHiddenVolumeProtection, LangString["LINUX_EX2MSG_UNSUPPORTEDSECTORSIZEHIDDENVOLUMEPROTECTION"]); + EX2MSG (UnsupportedSectorSizeNoKernelCrypto, LangString["LINUX_EX2MSG_UNSUPPORTEDSECTORSIZENOKERNELCRYPTO"]); #else - EX2MSG (UnsupportedSectorSize, _("Error: The drive uses a sector size other than 512 bytes.\n\nDue to limitations of components available on your platform, partition/device-hosted volumes cannot be created/used on the drive.\n\nPossible solutions:\n- Create a file-hosted volume (container) on the drive.\n- Use a drive with 512-byte sectors.\n- Use VeraCrypt on another platform.")); + EX2MSG (UnsupportedSectorSize, LangString["LINUX_EX2MSG_UNSUPPORTEDSECTORSIZE"]); #endif EX2MSG (VolumeAlreadyMounted, LangString["VOL_ALREADY_MOUNTED"]); EX2MSG (VolumeEncryptionNotCompleted, LangString["ERR_ENCRYPTION_NOT_COMPLETED"]); - EX2MSG (VolumeHostInUse, _("The host file/device is already in use.")); - EX2MSG (VolumeSlotUnavailable, _("Volume slot unavailable.")); + EX2MSG (VolumeHostInUse, LangString["LINUX_EX2MSG_VOLUMEHOSTINUSE"]); + EX2MSG (VolumeSlotUnavailable, LangString["LINUX_EX2MSG_VOLUMESLOTUNAVAILABLE"]); EX2MSG (UnsupportedAlgoInTrueCryptMode, LangString["ALGO_NOT_SUPPORTED_FOR_TRUECRYPT_MODE"]); EX2MSG (UnsupportedTrueCryptFormat, LangString["UNSUPPORTED_TRUECRYPT_FORMAT"]); #ifdef TC_MACOSX - EX2MSG (HigherFuseVersionRequired, _("VeraCrypt requires OSXFUSE 2.5 or above.")); + EX2MSG (HigherFuseVersionRequired, LangString["LINUX_EX2MSG_HIGHERFUSEVERSIONREQUIRED"]); #endif #undef EX2MSG @@ -800,7 +801,7 @@ namespace VeraCrypt } catch (...) { - ShowError (_("Unknown exception occurred.")); + ShowError (LangString["LINUX_UNKNOWN_EXC_OCCURRED"]); } Yield(); @@ -1007,7 +1008,7 @@ namespace VeraCrypt { if (!message.IsEmpty()) message += L'\n'; - message += StringFormatter (_("Volume \"{0}\" has been mounted."), wstring (volume.Path)); + message += StringFormatter (LangString["LINUX_VOL_DISMOUNTED"], wstring (volume.Path)); } ShowInfo (message); } @@ -1326,7 +1327,7 @@ namespace VeraCrypt #ifndef TC_NO_GUI if (Application::GetUserInterfaceType() == UserInterfaceType::Graphic) { - wxDialog dialog (nullptr, wxID_ANY, _("VeraCrypt Command Line Help"), wxDefaultPosition); + wxDialog dialog (nullptr, wxID_ANY, LangString["LINUX_CMD_HELP"], wxDefaultPosition); wxTextCtrl *textCtrl = new wxTextCtrl (&dialog, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_MULTILINE | wxTE_READONLY); textCtrl->SetFont (wxFont (wxNORMAL_FONT->GetPointSize(), wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL, false, L"Courier")); @@ -1338,7 +1339,7 @@ namespace VeraCrypt wxBoxSizer *sizer = new wxBoxSizer (wxVERTICAL); sizer->Add (textCtrl, 1, wxALL | wxEXPAND, 5); - sizer->Add (new wxButton (&dialog, wxID_OK, _("OK")), 0, wxALL | wxALIGN_CENTER_HORIZONTAL, 5); + sizer->Add (new wxButton (&dialog, wxID_OK, LangString["IDOK"]), 0, wxALL | wxALIGN_CENTER_HORIZONTAL, 5); dialog.SetSizer (sizer); dialog.Layout(); -- cgit v1.2.3