mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2025-11-11 19:08:26 -06:00
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 <tb@tbon.de>
This commit is contained in:
@@ -1446,6 +1446,126 @@
|
||||
<entry lang="en" key="IDC_FORCE_VERACRYPT_FIRST_BOOT_ENTRY">Force VeraCrypt entry to be the first in the EFI firmware boot menu</entry>
|
||||
<entry lang="en" key="RAM_ENCRYPTION_DISABLE_HIBERNATE">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?</entry>
|
||||
<entry lang="en" key="CONFIRM_DISABLE_FAST_STARTUP">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?</entry>
|
||||
<entry lang="en" key="QUICK_FORMAT_HELP">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.</entry>
|
||||
<entry lang="en" key="IDC_ENABLE_HARDWARE_ENCRYPTION_NEG">Do not accelerate AES encryption/decryption by using the AES instructions of the processor</entry>
|
||||
<entry lang="en" key="IDM_ADD_ALL_VOLUME_TO_FAVORITES">Add All Mounted Volumes to Favorites...</entry>
|
||||
<entry lang="en" key="TASKICON_PREF_MENU_ITEMS">Task Icon Menu Items</entry>
|
||||
<entry lang="en" key="TASKICON_PREF_OPEN_VOL">Open Mounted Volumes</entry>
|
||||
<entry lang="en" key="TASKICON_PREF_DISMOUNT_VOL">Dismount Mounted Volumes</entry>
|
||||
<entry lang="en" key="DISK_FREE">Free space available: {0}</entry>
|
||||
<entry lang="en" key="VOLUME_SIZE_HELP">Please specify the size of the container to create. Note that the minimum possible size of a volume is 292 KiB.</entry>
|
||||
<entry lang="en" key="LINUX_CONFIRM_INNER_VOLUME_CALC">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?</entry>
|
||||
<entry lang="en" key="LINUX_PREF_TAB_SECURITY">Security</entry>
|
||||
<entry lang="en" key="LINUX_PREF_TAB_MOUNT_OPTIONS">Mount Options</entry>
|
||||
<entry lang="en" key="LINUX_PREF_TAB_BACKGROUND_TASK">Background Task</entry>
|
||||
<entry lang="en" key="LINUX_PREF_TAB_SYSTEM_INTEGRATION">System Integration</entry>
|
||||
<entry lang="en" key="LINUX_PREF_TAB_SYSTEM_INTEGRATION_EXPLORER">Filesystem Explorer</entry>
|
||||
<entry lang="en" key="LINUX_PREF_TAB_PERFORMANCE">Performance</entry>
|
||||
<entry lang="en" key="LINUX_PREF_TAB_KEYFILES">Keyfiles</entry>
|
||||
<entry lang="en" key="LINUX_PREF_TAB_TOKENS">Security Tokens</entry>
|
||||
<entry lang="en" key="LINUX_PREF_KERNEL_SERVICES">Kernel Services</entry>
|
||||
<entry lang="en" key="LINUX_PREF_KERNEL_CRYPT">Do not use kernel cryptographic services</entry>
|
||||
<entry lang="en" key="LINUX_PREF_TAB_MOUNT_OPTIONS_FS">Filesystem</entry>
|
||||
<entry lang="en" key="IDT_LINUX_PREF_TAB_MOUNT_OPTIONS">Mount options:</entry>
|
||||
<entry lang="en" key="LINUX_CROSS_SUPPORT">Cross-Platform Support</entry>
|
||||
<entry lang="en" key="LINUX_CROSS_SUPPORT_OTHER">I will mount the volume on other platforms</entry>
|
||||
<entry lang="en" key="LINUX_CROSS_SUPPORT_OTHER_HELP">Choose this option if you need to use the volume on other platforms.</entry>
|
||||
<entry lang="en" key="LINUX_CROSS_SUPPORT_ONLY">I will mount the volume only on {0}</entry>
|
||||
<entry lang="en" key="LINUX_CROSS_SUPPORT_ONLY_HELP">Choose this option if you do not need to use the volume on other platforms.</entry>
|
||||
<entry lang="en" key="LINUX_CROSS_SUPPORT_ONLY_HELP">Choose this option if you do not need to use the volume on other platforms.</entry>
|
||||
<entry lang="en" key="LINUX_DESELECT">Deselect</entry>
|
||||
<entry lang="en" key="LINUX_ADMIN_PW_QUERY">Enter your user password or administrator password:</entry>
|
||||
<entry lang="en" key="LINUX_ADMIN_PW_QUERY_TITLE">Administrator privileges required</entry>
|
||||
<entry lang="en" key="LINUX_VC_RUNNING_ALREADY">VeraCrypt is already running.</entry>
|
||||
<entry lang="en" key="LINUX_SYSTEM_ENC_PW_LENGTH_NOTE">System Encryption password is longer than {0} characters.</entry>
|
||||
<entry lang="en" key="LINUX_MOUNT_SYSTEM_ENC_PREBOOT">Mount partition &using system encryption (preboot authentication)</entry>
|
||||
<entry lang="en" key="LINUX_DO_NOT_MOUNT">Do &not mount</entry>
|
||||
<entry lang="en" key="LINUX_MOUNT_AT_DIR">Mount at directory:</entry>
|
||||
<entry lang="en" key="LINUX_SELECT">Se&lect...</entry>
|
||||
<entry lang="en" key="LINUX_DISMOUNT_ALL_WHEN">Dismount All Volumes When</entry>
|
||||
<entry lang="en" key="LINUX_ENTERING_POWERSAVING">System is entering power saving mode</entry>
|
||||
<entry lang="en" key="LINUX_LOGIN_ACTION">Actions to Perform when User Logs On</entry>
|
||||
<entry lang="en" key="LINUX_CLOSE_EXPL_ON_DISMOUNT">Close all Explorer windows of volume being dismounted</entry>
|
||||
<entry lang="en" key="LINUX_HOTKEYS">Hotkeys</entry>
|
||||
<entry lang="en" key="LINUX_SYSTEM_HOTKEYS">System-Wide Hotkeys</entry>
|
||||
<entry lang="en" key="LINUX_SOUND_NOTIFICATION">Play system notification sound after mount/dismount</entry>
|
||||
<entry lang="en" key="LINUX_CONFIRM_AFTER_DISMOUNT">Display confirmation message box after dismount</entry>
|
||||
<entry lang="en" key="LINUX_VC_QUITS">VeraCrypt quits</entry>
|
||||
<entry lang="en" key="LINUX_OPEN_FINDER">Open Finder window for successfully mounted volume</entry>
|
||||
<entry lang="en" key="LINUX_DISABLE_KERNEL_ONLY_SETTING">Please note that this setting takes effect only if use of the kernel cryptographic services is disabled.</entry>
|
||||
<entry lang="en" key="LINUX_DISABLE_KERNEL_CRYPT_CONFIRM">Disabling the use of kernel cryptographic services can degrade performance.\n\nAre you sure?</entry>
|
||||
<entry lang="en" key="LINUX_KERNEL_CRYPT_OPTION_CHANGE_MOUNTED_HINT">Please note that disabling this option may have no effect on volumes mounted using kernel cryptographic services.</entry>
|
||||
<entry lang="en" key="LINUX_REMOUNT_BECAUSEOF_SETTING">Please note that any currently mounted volumes need to be remounted before they can use this setting.</entry>
|
||||
<entry lang="en" key="LINUX_UNKNOWN_EXC_OCCURRED">Unknown exception occurred.</entry>
|
||||
<entry lang="en" key="LINUX_FIRST_AID">"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.</entry>
|
||||
<entry lang="en" key="LINUX_MOUNT_ALL_DEV">Mount All Devices</entry>
|
||||
<entry lang="en" key="LINUX_ERROR_LOADING_CONFIG">Error while loading configuration files located in </entry>
|
||||
<entry lang="en" key="LINUX_SELECT_FREE_SLOT">Please select a free drive slot from the list.</entry>
|
||||
<entry lang="en" key="LINUX_MESSAGE_ON_MOUNT_AGAIN">\n\nDo you want to show this message next time you mount such a volume?</entry>
|
||||
<entry lang="en" key="LINUX_WARNING">Warning</entry>
|
||||
<entry lang="en" key="LINUX_ERROR">Error</entry>
|
||||
<entry lang="en" key="LINUX_ONLY_TEXTMODE">This feature is currently supported only in text mode.</entry>
|
||||
<entry lang="en" key="LINUX_FREE_SPACE_ON_DRIVE">Free space on drive {0}: is {1}.</entry>
|
||||
<entry lang="en" key="LINUX_DYNAMIC_NOTICE">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.</entry>
|
||||
<entry lang="en" key="LINUX_MAX_HIDDEN_SIZE">Maximum possible hidden volume size for this volume is {0}.</entry>
|
||||
<entry lang="en" key="LINUX_OPEN_OUTER_VOL">Open Outer Volume</entry>
|
||||
<entry lang="en" key="LINUX_OUTER_VOL_IS_MOUNTED">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.</entry>
|
||||
<entry lang="en" key="LINUX_ERROR_TRY_ENCRYPT_SYSTEM_DRIVE">Error: You are trying to encrypt a system drive.\n\nVeraCrypt can encrypt a system drive only under Windows.</entry>
|
||||
<entry lang="en" key="LINUX_ERROR_TRY_ENCRYPT_SYSTEM_PARTITION">Error: You are trying to encrypt a system partition.\n\nVeraCrypt can encrypt system partitions only under Windows.</entry>
|
||||
<entry lang="en" key="LINUX_WARNING_FORMAT_DESTROY_FS">WARNING: Formatting of the device will destroy all data on filesystem '{0}'.\n\nDo you want to continue?</entry>
|
||||
<entry lang="en" key="LINUX_MOUNTET_HINT">The filesystem of the selected device is currently mounted. Please dismount '{0}' before proceeding.</entry>
|
||||
<entry lang="en" key="LINUX_HIDDEN_PASS_NO_DIFF">The Hidden volume can't have the same password, PIM and keyfiles as the Outer volume</entry>
|
||||
<entry lang="en" key="LINUX_NOT_FAT_HINT">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.</entry>
|
||||
<entry lang="en" key="LINUX_ERROR_SIZE_HIDDEN_VOL">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</entry>
|
||||
<entry lang="en" key="LINUX_MAX_SIZE_HINT">- Use a drive with 4096-byte sectors to be able to create partition/device-hosted hidden volumes up to 16 TB in size</entry>
|
||||
<entry lang="en" key="LINUX_DOT_LF">.\n</entry>
|
||||
<entry lang="en" key="LINUX_NOT_SUPPORTED"> (not supported by components available on this platform).\n</entry>
|
||||
<entry lang="en" key="LINUX_KERNEL_OLD">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.</entry>
|
||||
<entry lang="en" key="LINUX_VOL_DISMOUNTED">Volume {0} has been dismounted.</entry>
|
||||
<entry lang="en" key="LINUX_OOM">Out of memory.</entry>
|
||||
<entry lang="en" key="LINUX_CANT_GET_ADMIN_PRIV">Failed to obtain administrator privileges</entry>
|
||||
<entry lang="en" key="LINUX_COMMAND_GET_ERROR">Command \"{0}\" returned error {1}.</entry>
|
||||
<entry lang="en" key="LINUX_CMD_HELP">VeraCrypt Command Line Help</entry>
|
||||
<entry lang="en" key="LINUX_HIDDEN_FILES_PRESENT_IN_KEYFILE_PATH">\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.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_DEVICESECTORSIZEMISMATCH">Storage device and VC volume sector size mismatch</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_ENCRYPTEDSYSTEMREQUIRED">This operation must be performed only when the system hosted on the volume is running.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_INSUFFICIENTDATA">Not enough data available.</entry>
|
||||
<entry lang="en" key="LINUX_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.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_LOOPDEVICESETUPFAILED">Failed to set up a loop device.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_MISSINGARGUMENT">A required argument is missing.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_MISSINGVOLUMEDATA">Volume data missing.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_MOUNTPOINTREQUIRED">Mount point required.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_MOUNTPOINTUNAVAILABLE">Mount point is already in use.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_PASSWORDEMPTY">No password or keyfile specified.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_PASSWORDORKEYBOARDLAYOUTINCORRECT">\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.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_PASSWORDORMOUNTOPTIONSINCORRECT">\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'.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_PASSWORDTOOLONG">Password is longer than {0} characters.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_PARTITIONDEVICEREQUIRED">Partition device required.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_PROTECTIONPASSWORDINCORRECT">Incorrect password to the protected hidden volume or the hidden volume does not exist.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_PROTECTIONPASSWORDKEYFILESINCORRECT">Incorrect keyfile(s) and/or password to the protected hidden volume or the hidden volume does not exist.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_STRINGCONVERSIONFAILED">Invalid characters encountered.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_STRINGFORMATTEREXCEPTION">Error while parsing formatted string.</entry>
|
||||
<entry lang="en" key="LINUX_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.</entry>
|
||||
<entry lang="en" key="LINUX_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.</entry>
|
||||
<entry lang="en" key="LINUX_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.</entry>
|
||||
<entry lang="en" key="LINUX_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.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_VOLUMEHOSTINUSE">The host file/device is already in use.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_VOLUMESLOTUNAVAILABLE">Volume slot unavailable.</entry>
|
||||
<entry lang="en" key="LINUX_EX2MSG_HIGHERFUSEVERSIONREQUIRED">VeraCrypt requires OSXFUSE 2.5 or above.</entry>
|
||||
<entry lang="en" key="EXCEPTION_OCCURRED">Exception occurred</entry>
|
||||
<entry lang="en" key="ENTER_PASSWORD">Enter password</entry>
|
||||
<entry lang="en" key="ENTER_TC_VOL_PASSWORD">Enter VeraCrypt Volume Password</entry>
|
||||
<entry lang="en" key="MOUNT">Mount</entry>
|
||||
<entry lang="en" key="MOUNT_POINT">Mount Directory"</entry>
|
||||
<entry lang="en" key="NO_VOLUMES_MOUNTED">No volumes mounted.</entry>
|
||||
<entry lang="en" key="OPEN_NEW_VOLUME">Specify a New VeraCrypt Volume</entry>
|
||||
<entry lang="en" key="PARAMETER_INCORRECT">Parameter incorrect</entry>
|
||||
<entry lang="en" key="SELECT_KEYFILES">Select Keyfiles</entry>
|
||||
<entry lang="en" key="START_TC">Start VeraCrypt</entry>
|
||||
<entry lang="en" key="VOLUME_ALREADY_MOUNTED">The volume {0} is already mounted.</entry>
|
||||
<entry lang="en" key="UNKNOWN_OPTION">Unknown option</entry>
|
||||
<entry lang="en" key="VOLUME_LOCATION">Volume Location</entry>
|
||||
<entry lang="en" key="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?</entry>
|
||||
</localization>
|
||||
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
||||
<xs:element name="VeraCrypt">
|
||||
|
||||
@@ -243,7 +243,7 @@ namespace VeraCrypt
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
Gui->ShowError (_("Unknown exception occurred."));
|
||||
Gui->ShowError (LangString["LINUX_UNKNOWN_EXC_OCCURRED"]);
|
||||
}
|
||||
|
||||
_exit (1);
|
||||
|
||||
@@ -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:
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -121,7 +121,7 @@ namespace VeraCrypt
|
||||
else
|
||||
EncryptionAlgorithmStaticText->SetLabel (L"");
|
||||
|
||||
EncryptionAlgorithmHyperlink->SetLabel (_("More information"));
|
||||
EncryptionAlgorithmHyperlink->SetLabel (LangString["IDC_MORE_INFO_SYS_ENCRYPTION"]);
|
||||
}
|
||||
|
||||
Layout();
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -41,6 +41,8 @@
|
||||
#include <wx/spinctrl.h>
|
||||
#include <wx/notebook.h>
|
||||
|
||||
#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();
|
||||
|
||||
};
|
||||
|
||||
@@ -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 <int, FavoriteVolume> 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);
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
@@ -43,7 +43,7 @@ namespace VeraCrypt
|
||||
|
||||
void NewSecurityTokenKeyfileDialog::OnKeyfileNameChanged (wxCommandEvent& event)
|
||||
{
|
||||
StdButtonsOK->Enable (!KeyfileNameTextCtrl->GetValue().empty());
|
||||
OKButton->Enable(!KeyfileNameTextCtrl->GetValue().empty());
|
||||
event.Skip();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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
|
||||
}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -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 <bool> *page = new SingleChoiceWizardPage <bool> (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 <bool> *page = new SingleChoiceWizardPage <bool> (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 <Functor> (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())
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@ namespace VeraCrypt
|
||||
Fit();
|
||||
Center();
|
||||
|
||||
StdButtonsOK->SetDefault();
|
||||
OKButton->SetDefault();
|
||||
}
|
||||
|
||||
void VolumePropertiesDialog::AppendToList (const string &name, const wxString &value)
|
||||
|
||||
@@ -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())));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
#include "Main/Main.h"
|
||||
#include "Main/Application.h"
|
||||
#include <wx/msgqueue.h>
|
||||
#include <wx/msgdlg.h>
|
||||
|
||||
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));
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
6
src/Main/Forms/international.h
Normal file
6
src/Main/Forms/international.h
Normal file
@@ -0,0 +1,6 @@
|
||||
#ifdef TC_LINUX
|
||||
#include "Main/LanguageStrings.h"
|
||||
#undef _
|
||||
#define _(key) LangString[key]
|
||||
#endif
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -14,6 +14,12 @@
|
||||
#include "Platform/Platform.h"
|
||||
#include "Resources.h"
|
||||
|
||||
#ifdef TC_LINUX
|
||||
#include "Platform/File.h"
|
||||
#include "Platform/StringConverter.h"
|
||||
#include <stdio.h>
|
||||
#endif
|
||||
|
||||
#ifdef TC_WINDOWS
|
||||
#include "Main/resource.h"
|
||||
#endif
|
||||
@@ -48,6 +54,79 @@ namespace VeraCrypt
|
||||
strBuf.Zero();
|
||||
strBuf.CopyFrom (res);
|
||||
return string (reinterpret_cast <char *> (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 <byte> 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[] =
|
||||
{
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 <const bad_alloc *> (&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 <const ElevationFailed*> (&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();
|
||||
|
||||
Reference in New Issue
Block a user