Linux/MacOSX: solve the 'X' icon not closing some dialog. This was caused by a bug of wxFormBuilder that calls SetExtraStyle without taking care of the previous value.

This commit is contained in:
Mounir IDRASSI 2015-02-14 23:42:15 +01:00
parent 544c55debc
commit 86529dadde
8 changed files with 14 additions and 14 deletions

View File

@ -16,11 +16,12 @@ namespace VeraCrypt
{
ChangePasswordDialog::ChangePasswordDialog (wxWindow* parent, shared_ptr <VolumePath> volumePath, Mode::Enum mode, shared_ptr <VolumePassword> password, shared_ptr <KeyfileList> keyfiles, shared_ptr <VolumePassword> newPassword, shared_ptr <KeyfileList> newKeyfiles)
: ChangePasswordDialogBase (parent), DialogMode (mode), Path (volumePath)
{
{
bool enableNewPassword = false;
bool enableNewKeyfiles = false;
bool enablePkcs5Prf = false;
SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY );
switch (mode)
{
case Mode::ChangePasswordAndKeyfiles:

View File

@ -16,6 +16,8 @@ namespace VeraCrypt
DeviceSelectionDialog::DeviceSelectionDialog (wxWindow* parent)
: DeviceSelectionDialogBase (parent)
{
SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY );
wxBusyCursor busy;
list <int> colPermilles;

View File

@ -840,7 +840,6 @@ 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( wxWS_EX_VALIDATE_RECURSIVELY );
wxBoxSizer* bSizer30;
bSizer30 = new wxBoxSizer( wxVERTICAL );
@ -909,7 +908,6 @@ ChangePasswordDialogBase::~ChangePasswordDialogBase()
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( wxWS_EX_VALIDATE_RECURSIVELY );
wxBoxSizer* bSizer3;
bSizer3 = new wxBoxSizer( wxVERTICAL );
@ -1216,7 +1214,6 @@ FavoriteVolumesDialogBase::~FavoriteVolumesDialogBase()
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( wxWS_EX_VALIDATE_RECURSIVELY );
wxBoxSizer* bSizer26;
bSizer26 = new wxBoxSizer( wxVERTICAL );
@ -1499,7 +1496,6 @@ 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( wxWS_EX_VALIDATE_RECURSIVELY );
wxBoxSizer* bSizer5;
bSizer5 = new wxBoxSizer( wxVERTICAL );
@ -1757,7 +1753,6 @@ NewSecurityTokenKeyfileDialogBase::~NewSecurityTokenKeyfileDialogBase()
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( wxWS_EX_VALIDATE_RECURSIVELY );
wxBoxSizer* bSizer32;
bSizer32 = new wxBoxSizer( wxVERTICAL );
@ -2357,7 +2352,6 @@ RandomPoolEnrichmentDialogBase::~RandomPoolEnrichmentDialogBase()
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( wxWS_EX_VALIDATE_RECURSIVELY );
wxBoxSizer* bSizer3;
bSizer3 = new wxBoxSizer( wxVERTICAL );

View File

@ -15,6 +15,7 @@ namespace VeraCrypt
KeyfilesDialog::KeyfilesDialog (wxWindow* parent, shared_ptr <KeyfileList> keyfiles)
: KeyfilesDialogBase (parent), Keyfiles (keyfiles)
{
SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY );
mKeyfilesPanel = new KeyfilesPanel (this, keyfiles);
PanelSizer->Add (mKeyfilesPanel, 1, wxALL | wxEXPAND);

View File

@ -20,6 +20,7 @@ namespace VeraCrypt
#endif
), Options (options)
{
SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY );
if (!title.empty())
this->SetTitle (title);
else if (options.Path && !options.Path->IsEmpty())

View File

@ -27,7 +27,7 @@ namespace VeraCrypt
RestoreValidatorBell (false)
{
#define TC_CHECK_BOX_VALIDATOR(NAME) (TC_JOIN(NAME,CheckBox))->SetValidator (wxGenericValidator (&Preferences.NAME));
SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY );
#ifdef TC_MACOSX
PreferencesNotebook->SetMinSize (wxSize (Gui->GetCharWidth (PreferencesNotebook) * 108, -1));
#endif

View File

@ -17,6 +17,7 @@ namespace VeraCrypt
SecurityTokenKeyfilesDialog::SecurityTokenKeyfilesDialog (wxWindow* parent, bool selectionMode)
: SecurityTokenKeyfilesDialogBase (parent)
{
SetExtraStyle( GetExtraStyle() | wxWS_EX_VALIDATE_RECURSIVELY );
if (selectionMode)
SetTitle (LangString["SELECT_TOKEN_KEYFILES"]);

View File

@ -4972,7 +4972,7 @@
<property name="subclass"></property>
<property name="title"></property>
<property name="tooltip"></property>
<property name="window_extra_style">wxWS_EX_VALIDATE_RECURSIVELY</property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnActivate"></event>
@ -5300,7 +5300,7 @@
<property name="subclass"></property>
<property name="title">Select a Partition or Device</property>
<property name="tooltip"></property>
<property name="window_extra_style">wxWS_EX_VALIDATE_RECURSIVELY</property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnActivate"></event>
@ -8117,7 +8117,7 @@
<property name="subclass"></property>
<property name="title">Select Keyfiles</property>
<property name="tooltip"></property>
<property name="window_extra_style">wxWS_EX_VALIDATE_RECURSIVELY</property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnActivate"></event>
@ -10851,7 +10851,7 @@
<property name="subclass"></property>
<property name="title">Enter VeraCrypt Volume Password</property>
<property name="tooltip"></property>
<property name="window_extra_style">wxWS_EX_VALIDATE_RECURSIVELY</property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnActivate"></event>
@ -12987,7 +12987,7 @@
<property name="subclass"></property>
<property name="title">Preferences</property>
<property name="tooltip"></property>
<property name="window_extra_style">wxWS_EX_VALIDATE_RECURSIVELY</property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnActivate"></event>
@ -18975,7 +18975,7 @@
<property name="subclass"></property>
<property name="title">Security Token Keyfiles</property>
<property name="tooltip"></property>
<property name="window_extra_style">wxWS_EX_VALIDATE_RECURSIVELY</property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnActivate"></event>