X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d84afea9d1ec41ee4e2ebb3bf6b87926cf5f04d1..377a219ac700cdf055216541a150a0f25912f373:/src/generic/filedlgg.cpp diff --git a/src/generic/filedlgg.cpp b/src/generic/filedlgg.cpp index 00fe75da38..19570dec88 100644 --- a/src/generic/filedlgg.cpp +++ b/src/generic/filedlgg.cpp @@ -1109,13 +1109,13 @@ wxFileDialog::wxFileDialog(wxWindow *parent, #endif buttonsizer->Add( butNewDir, 0, wxALL, 5 ); - if (wxSystemSettings::GetScreen() >= wxSYS_SCREEN_PDA) + if (wxSystemSettings::GetScreenType() <= wxSYS_SCREEN_PDA) mainsizer->Add( buttonsizer, 0, wxALL | wxEXPAND, 0 ); else mainsizer->Add( buttonsizer, 0, wxALL | wxEXPAND, 5 ); wxBoxSizer *staticsizer = new wxBoxSizer( wxHORIZONTAL ); - if (wxSystemSettings::GetScreen() < wxSYS_SCREEN_PDA) + if (wxSystemSettings::GetScreenType() > wxSYS_SCREEN_PDA) staticsizer->Add( new wxStaticText( this, -1, _("Current directory:") ), 0, wxRIGHT, 10 ); m_static = new wxStaticText( this, -1, m_dir ); staticsizer->Add( m_static, 1 ); @@ -1131,48 +1131,48 @@ wxFileDialog::wxFileDialog(wxWindow *parent, m_list->SetNewDirControl(butNewDir); m_list->SetGoToParentControl(butDirUp); - if (wxSystemSettings::GetScreen() >= wxSYS_SCREEN_PDA) + if (wxSystemSettings::GetScreenType() <= wxSYS_SCREEN_PDA) { - // PDAs have a different screen layout - mainsizer->Add( m_list, 1, wxEXPAND | wxLEFT|wxRIGHT, 5 ); - - wxBoxSizer *choicesizer = new wxBoxSizer( wxHORIZONTAL ); - m_choice = new wxChoice( this, ID_CHOICE ); - choicesizer->Add( m_choice, 1, wxCENTER|wxALL, 5 ); - mainsizer->Add( choicesizer, 0, wxEXPAND ); - - wxBoxSizer *textsizer = new wxBoxSizer( wxHORIZONTAL ); - m_text = new wxTextCtrl( this, ID_TEXT, m_fileName, wxDefaultPosition, wxDefaultSize, wxPROCESS_ENTER ); - textsizer->Add( m_text, 1, wxCENTER | wxALL, 5 ); - mainsizer->Add( textsizer, 0, wxEXPAND ); - - m_check = new wxCheckBox( this, ID_CHECK, _("Show hidden files") ); - m_check->SetValue( s_lastShowHidden ); - textsizer->Add( m_check, 0, wxCENTER|wxALL, 5 ); - - buttonsizer = new wxBoxSizer( wxHORIZONTAL ); - buttonsizer->Add( new wxButton( this, wxID_OK, _("OK") ), 0, wxCENTER | wxALL, 5 ); - buttonsizer->Add( new wxButton( this, wxID_CANCEL, _("Cancel") ), 0, wxCENTER | wxALL, 5 ); - mainsizer->Add( buttonsizer, 0, wxALIGN_RIGHT ); + // PDAs have a different screen layout + mainsizer->Add( m_list, 1, wxEXPAND | wxLEFT|wxRIGHT, 5 ); + + wxBoxSizer *choicesizer = new wxBoxSizer( wxHORIZONTAL ); + m_choice = new wxChoice( this, ID_CHOICE ); + choicesizer->Add( m_choice, 1, wxCENTER|wxALL, 5 ); + mainsizer->Add( choicesizer, 0, wxEXPAND ); + + wxBoxSizer *textsizer = new wxBoxSizer( wxHORIZONTAL ); + m_text = new wxTextCtrl( this, ID_TEXT, m_fileName, wxDefaultPosition, wxDefaultSize, wxPROCESS_ENTER ); + textsizer->Add( m_text, 1, wxCENTER | wxALL, 5 ); + mainsizer->Add( textsizer, 0, wxEXPAND ); + + m_check = new wxCheckBox( this, ID_CHECK, _("Show hidden files") ); + m_check->SetValue( s_lastShowHidden ); + textsizer->Add( m_check, 0, wxCENTER|wxALL, 5 ); + + buttonsizer = new wxBoxSizer( wxHORIZONTAL ); + buttonsizer->Add( new wxButton( this, wxID_OK, _("OK") ), 0, wxCENTER | wxALL, 5 ); + buttonsizer->Add( new wxButton( this, wxID_CANCEL, _("Cancel") ), 0, wxCENTER | wxALL, 5 ); + mainsizer->Add( buttonsizer, 0, wxALIGN_RIGHT ); } else { - mainsizer->Add( m_list, 1, wxEXPAND | wxLEFT|wxRIGHT, 10 ); - - wxBoxSizer *textsizer = new wxBoxSizer( wxHORIZONTAL ); - m_text = new wxTextCtrl( this, ID_TEXT, m_fileName, wxDefaultPosition, wxDefaultSize, wxPROCESS_ENTER ); - textsizer->Add( m_text, 1, wxCENTER | wxLEFT|wxRIGHT|wxTOP, 10 ); - textsizer->Add( new wxButton( this, wxID_OK, _("OK") ), 0, wxCENTER | wxLEFT|wxRIGHT|wxTOP, 10 ); - mainsizer->Add( textsizer, 0, wxEXPAND ); - - wxBoxSizer *choicesizer = new wxBoxSizer( wxHORIZONTAL ); - m_choice = new wxChoice( this, ID_CHOICE ); - choicesizer->Add( m_choice, 1, wxCENTER|wxALL, 10 ); - m_check = new wxCheckBox( this, ID_CHECK, _("Show hidden files") ); - m_check->SetValue( s_lastShowHidden ); - choicesizer->Add( m_check, 0, wxCENTER|wxALL, 10 ); - choicesizer->Add( new wxButton( this, wxID_CANCEL, _("Cancel") ), 0, wxCENTER | wxALL, 10 ); - mainsizer->Add( choicesizer, 0, wxEXPAND ); + mainsizer->Add( m_list, 1, wxEXPAND | wxLEFT|wxRIGHT, 10 ); + + wxBoxSizer *textsizer = new wxBoxSizer( wxHORIZONTAL ); + m_text = new wxTextCtrl( this, ID_TEXT, m_fileName, wxDefaultPosition, wxDefaultSize, wxPROCESS_ENTER ); + textsizer->Add( m_text, 1, wxCENTER | wxLEFT|wxRIGHT|wxTOP, 10 ); + textsizer->Add( new wxButton( this, wxID_OK, _("OK") ), 0, wxCENTER | wxLEFT|wxRIGHT|wxTOP, 10 ); + mainsizer->Add( textsizer, 0, wxEXPAND ); + + wxBoxSizer *choicesizer = new wxBoxSizer( wxHORIZONTAL ); + m_choice = new wxChoice( this, ID_CHOICE ); + choicesizer->Add( m_choice, 1, wxCENTER|wxALL, 10 ); + m_check = new wxCheckBox( this, ID_CHECK, _("Show hidden files") ); + m_check->SetValue( s_lastShowHidden ); + choicesizer->Add( m_check, 0, wxCENTER|wxALL, 10 ); + choicesizer->Add( new wxButton( this, wxID_CANCEL, _("Cancel") ), 0, wxCENTER | wxALL, 10 ); + mainsizer->Add( choicesizer, 0, wxEXPAND ); } m_choice->Append( firstWildText, (void*) new wxString( firstWild ) ); @@ -1540,39 +1540,53 @@ wxString wxFileSelector( const wxChar *title, } } -wxString wxLoadFileSelector( const wxChar *what, const wxChar *ext, const wxChar *default_name, wxWindow *parent ) +static wxString GetWildcardString(const wxChar *ext) { - wxString prompt = wxString::Format(_("Load %s file"), what); - - if (*ext == wxT('.')) - ext++; + wxString wild; + if ( ext ) + { + if ( *ext == wxT('.') ) + ext++; - wxString wild = wxString::Format(_T("*.%s"), ext); + wild << _T("*.") << ext; + } + else // no extension specified + { + wild = wxFileSelectorDefaultWildcardStr; + } - return wxFileSelector(prompt, (const wxChar *) NULL, default_name, - ext, wild, 0, parent); + return wild; } -wxString wxSaveFileSelector(const wxChar *what, const wxChar *extension, const wxChar *default_name, - wxWindow *parent ) +wxString wxLoadFileSelector(const wxChar *what, + const wxChar *ext, + const wxChar *nameDef, + wxWindow *parent) { - wxChar *ext = (wxChar *)extension; - - wxString prompt = wxString::Format(_("Save %s file"), what); - - if (*ext == wxT('.')) - ext++; - - wxString wild = wxString::Format(_T("*.%s"), ext); + wxString prompt; + if ( what && *what ) + prompt = wxString::Format(_("Load %s file"), what); + else + prompt = _("Load file"); - return wxFileSelector(prompt, (const wxChar *) NULL, default_name, - ext, wild, 0, parent); + return wxFileSelector(prompt, NULL, nameDef, ext, + GetWildcardString(ext), 0, parent); } +wxString wxSaveFileSelector(const wxChar *what, + const wxChar *ext, + const wxChar *nameDef, + wxWindow *parent) +{ + wxString prompt; + if ( what && *what ) + prompt = wxString::Format(_("Save %s file"), what); + else + prompt = _("Save file"); - - - + return wxFileSelector(prompt, NULL, nameDef, ext, + GetWildcardString(ext), 0, parent); +} // A module to allow icons table cleanup