X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ff3e84ffdc91ee8a52b3ab646e48d44d62de80e1..f1d6804f7c1a398dd0616ccf15cb0f96ea07f5e0:/src/generic/filedlgg.cpp diff --git a/src/generic/filedlgg.cpp b/src/generic/filedlgg.cpp index e92a4ca990..e1c5770f7d 100644 --- a/src/generic/filedlgg.cpp +++ b/src/generic/filedlgg.cpp @@ -24,21 +24,24 @@ #endif #ifndef WX_PRECOMP + #ifdef __WXMSW__ + #include "wx/msw/wrapwin.h" + #endif #include "wx/hash.h" #include "wx/intl.h" #include "wx/settings.h" #include "wx/log.h" #include "wx/msgdlg.h" #include "wx/bmpbuttn.h" + #include "wx/checkbox.h" + #include "wx/choice.h" + #include "wx/stattext.h" + #include "wx/textctrl.h" + #include "wx/sizer.h" + #include "wx/filedlg.h" // wxFD_OPEN, wxFD_SAVE... #endif -#include "wx/checkbox.h" -#include "wx/textctrl.h" -#include "wx/choice.h" -#include "wx/checkbox.h" -#include "wx/stattext.h" #include "wx/longlong.h" -#include "wx/sizer.h" #include "wx/tokenzr.h" #include "wx/config.h" #include "wx/imaglist.h" @@ -46,7 +49,6 @@ #include "wx/artprov.h" #include "wx/filefn.h" #include "wx/file.h" // for wxS_IXXX constants only -#include "wx/filedlg.h" // wxFD_OPEN, wxFD_SAVE... #include "wx/generic/filedlgg.h" #include "wx/generic/dirctrlg.h" // for wxFileIconsTable @@ -68,7 +70,6 @@ #endif #ifdef __WINDOWS__ - #include "wx/msw/wrapwin.h" #include "wx/msw/mslu.h" #endif @@ -356,7 +357,7 @@ wxString wxFileData::GetHint() const else if (IsDrive()) s += _(""); else // plain file - s += wxString::Format(_("%ld bytes"), + s += wxString::Format(wxPLURAL("%ld byte", "%ld bytes", m_size), wxLongLong(m_size).ToString().c_str()); s += wxT(' '); @@ -734,7 +735,7 @@ void wxFileCtrl::GoToParentDir() { if (!IsTopMostDir(m_dirName)) { - size_t len = m_dirName.Len(); + size_t len = m_dirName.length(); if (wxEndsWithPathSeparator(m_dirName)) m_dirName.Remove( len-1, 1 ); wxString fname( wxFileNameFromPath(m_dirName) ); @@ -822,8 +823,8 @@ void wxFileCtrl::OnListEndLabelEdit( wxListEvent &event ) wxASSERT( fd ); if ((event.GetLabel().empty()) || - (event.GetLabel() == _(".")) || - (event.GetLabel() == _("..")) || + (event.GetLabel() == wxT(".")) || + (event.GetLabel() == wxT("..")) || (event.GetLabel().First( wxFILE_SEP_PATH ) != wxNOT_FOUND)) { wxMessageDialog dialog(this, _("Illegal directory name."), _("Error"), wxOK | wxICON_ERROR ); @@ -1028,7 +1029,7 @@ bool wxGenericFileDialog::Create( wxWindow *parent, m_dir = wxFILE_SEP_PATH; } - size_t len = m_dir.Len(); + size_t len = m_dir.length(); if ((len > 1) && (wxEndsWithPathSeparator(m_dir))) m_dir.Remove( len-1, 1 ); @@ -1115,48 +1116,50 @@ bool wxGenericFileDialog::Create( wxWindow *parent, wxDefaultPosition, wxSize(540,200), style2); + m_text = new wxTextCtrl(this, ID_TEXT, m_fileName, + wxDefaultPosition, wxDefaultSize, + wxTE_PROCESS_ENTER); + m_choice = new wxChoice(this, ID_CHOICE); + if (is_pda) { // PDAs have a different screen layout - mainsizer->Add( m_list, 1, wxEXPAND | wxLEFT|wxRIGHT, 5 ); + mainsizer->Add(m_list, wxSizerFlags(1).Expand().HorzBorder()); - wxBoxSizer *textsizer = new wxBoxSizer( wxHORIZONTAL ); - m_text = new wxTextCtrl( this, ID_TEXT, m_fileName, wxDefaultPosition, wxDefaultSize, wxTE_PROCESS_ENTER ); - textsizer->Add( m_text, 1, wxCENTER | wxALL, 5 ); - mainsizer->Add( textsizer, 0, wxEXPAND ); + wxBoxSizer *textsizer = new wxBoxSizer(wxHORIZONTAL); + textsizer->Add(m_text, wxSizerFlags(1).Centre().Border()); + mainsizer->Add(textsizer, wxSizerFlags().Expand()); m_check = NULL; - m_choice = new wxChoice( this, ID_CHOICE ); - textsizer->Add( m_choice, 1, wxCENTER|wxALL, 5 ); + textsizer->Add(m_choice, wxSizerFlags(1).Centre().Border()); - wxSizer *bsizer = CreateButtonSizer( wxOK|wxCANCEL , false, 5 ); - if(bsizer->GetChildren().GetCount() > 0 ) - { - mainsizer->Add( bsizer, 0, wxEXPAND | wxALL, 5 ); - } - else - { - delete bsizer; - } + wxSizer *bsizer = CreateButtonSizer(wxOK | wxCANCEL); + if ( bsizer ) + mainsizer->Add(bsizer, wxSizerFlags().Expand().Border()); } - else + else // !is_pda { - 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, wxTE_PROCESS_ENTER ); - textsizer->Add( m_text, 1, wxCENTER | wxLEFT|wxRIGHT|wxTOP, 10 ); - textsizer->Add( new wxButton( this, wxID_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( ms_lastShowHidden ); - choicesizer->Add( m_check, 0, wxCENTER|wxALL, 10 ); - choicesizer->Add( new wxButton( this, wxID_CANCEL ), 0, wxCENTER | wxALL, 10 ); - mainsizer->Add( choicesizer, 0, wxEXPAND ); + mainsizer->Add(m_list, wxSizerFlags(1).Expand().DoubleHorzBorder()); + + wxBoxSizer *textsizer = new wxBoxSizer(wxHORIZONTAL); + textsizer->Add(m_text, wxSizerFlags(1).Centre(). + DoubleBorder(wxLEFT | wxRIGHT | wxTOP)); + textsizer->Add(new wxButton(this, wxID_OK), wxSizerFlags().Centre(). + DoubleBorder(wxLEFT | wxRIGHT | wxTOP)); + mainsizer->Add(textsizer, wxSizerFlags().Expand()); + + wxSizerFlags flagsCentre; + flagsCentre.Centre().DoubleBorder(); + + wxBoxSizer *choicesizer = new wxBoxSizer(wxHORIZONTAL); + choicesizer->Add(m_choice, wxSizerFlags(flagsCentre).Proportion(1)); + + m_check = new wxCheckBox(this, ID_CHECK, _("Show &hidden files")); + m_check->SetValue(ms_lastShowHidden); + + choicesizer->Add(m_check, flagsCentre); + choicesizer->Add(new wxButton(this, wxID_CANCEL), flagsCentre); + mainsizer->Add(choicesizer, wxSizerFlags().Expand()); } SetWildcard(wildCard); @@ -1628,10 +1631,10 @@ void wxGenericFileDialog::UpdateControls() #endif // defined(__DOS__) || defined(__WINDOWS__) || defined(__OS2__) } -#ifdef USE_GENERIC_FILEDIALOG +#ifdef wxUSE_GENERIC_FILEDIALOG IMPLEMENT_DYNAMIC_CLASS(wxFileDialog, wxGenericFileDialog) -#endif // USE_GENERIC_FILEDIALOG +#endif // wxUSE_GENERIC_FILEDIALOG #endif // wxUSE_FILEDLG