X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d84afea9d1ec41ee4e2ebb3bf6b87926cf5f04d1..7d6a4d96961eac84d05db8bb24c64d39003f6e54:/src/generic/fdrepdlg.cpp diff --git a/src/generic/fdrepdlg.cpp b/src/generic/fdrepdlg.cpp index d613e1e4c9..27289d6e37 100644 --- a/src/generic/fdrepdlg.cpp +++ b/src/generic/fdrepdlg.cpp @@ -1,22 +1,18 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: src/generic/fdrepgg.cpp +// Name: src/generic/fdrepdlg.cpp // Purpose: Find/Replace dialogs // Author: Markus Greither and Vadim Zeitlin // Modified by: // Created: 05/25/01 -// RCS-ID: -// Copyright: (c) wxWindows team -// Licence: wxWindows license +// RCS-ID: $Id$ +// Copyright: (c) wxWidgets team +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// // ============================================================================ // declarations // ============================================================================ -#ifdef __GNUG__ - #pragma implementation "genericfdrepdlg.h" -#endif - // ---------------------------------------------------------------------------- // headers // ---------------------------------------------------------------------------- @@ -41,6 +37,7 @@ #include "wx/radiobox.h" #include "wx/stattext.h" #include "wx/textctrl.h" + #include "wx/settings.h" #endif #include "wx/fdrepdlg.h" @@ -49,12 +46,6 @@ // constants // ---------------------------------------------------------------------------- -enum -{ - wxID_REPLACE = 5890, - wxID_REPLACE_ALL -}; - // ============================================================================ // implementation // ============================================================================ @@ -96,17 +87,22 @@ bool wxGenericFindReplaceDialog::Create(wxWindow *parent, const wxString& title, int style) { - if ( !wxDialog::Create(parent, -1, title, + parent = GetParentForModalDialog(parent, style); + + if ( !wxDialog::Create(parent, wxID_ANY, title, wxDefaultPosition, wxDefaultSize, - wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | style) ) + wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER + | style) ) { - return FALSE; + return false; } SetData(data); - wxCHECK_MSG( m_FindReplaceData, FALSE, - _T("can't create dialog without data") ); + wxCHECK_MSG( m_FindReplaceData, false, + wxT("can't create dialog without data") ); + + bool isPda = (wxSystemSettings::GetScreenType() <= wxSYS_SCREEN_PDA); wxBoxSizer *leftsizer = new wxBoxSizer( wxVERTICAL ); @@ -114,27 +110,27 @@ bool wxGenericFindReplaceDialog::Create(wxWindow *parent, wxFlexGridSizer *sizer2Col = new wxFlexGridSizer(3); sizer2Col->AddGrowableCol(2); - sizer2Col->Add(new wxStaticText(this, -1, _("Search for:"), - wxDefaultPosition, wxSize(80, -1)), + sizer2Col->Add(new wxStaticText(this, wxID_ANY, _("Search for:"), + wxDefaultPosition, wxSize(80, wxDefaultCoord)), 0, wxALIGN_CENTRE_VERTICAL | wxALIGN_RIGHT); sizer2Col->Add(10, 0); - m_textFind = new wxTextCtrl(this, -1, m_FindReplaceData->GetFindString()); + m_textFind = new wxTextCtrl(this, wxID_ANY, m_FindReplaceData->GetFindString()); sizer2Col->Add(m_textFind, 1, wxALIGN_CENTRE_VERTICAL | wxEXPAND); if ( style & wxFR_REPLACEDIALOG ) { - sizer2Col->Add(new wxStaticText(this, -1, _("Replace with:"), - wxDefaultPosition, wxSize(80, -1)), + sizer2Col->Add(new wxStaticText(this, wxID_ANY, _("Replace with:"), + wxDefaultPosition, wxSize(80, wxDefaultCoord)), 0, wxALIGN_CENTRE_VERTICAL | wxALIGN_RIGHT | wxTOP, 5); - sizer2Col->Add(10, 0); + sizer2Col->Add(isPda ? 2 : 10, 0); - m_textRepl = new wxTextCtrl(this, -1, + m_textRepl = new wxTextCtrl(this, wxID_ANY, m_FindReplaceData->GetReplaceString()); sizer2Col->Add(m_textRepl, 1, wxALIGN_CENTRE_VERTICAL | wxEXPAND | wxTOP, 5); @@ -142,32 +138,42 @@ bool wxGenericFindReplaceDialog::Create(wxWindow *parent, leftsizer->Add(sizer2Col, 0, wxEXPAND | wxALL, 5); - wxBoxSizer *optsizer = new wxBoxSizer( wxHORIZONTAL ); + wxBoxSizer *optsizer = new wxBoxSizer( isPda ? wxVERTICAL : wxHORIZONTAL ); wxBoxSizer *chksizer = new wxBoxSizer( wxVERTICAL); - m_chkWord = new wxCheckBox(this, -1, _("Whole word")); + m_chkWord = new wxCheckBox(this, wxID_ANY, _("Whole word")); chksizer->Add(m_chkWord, 0, wxALL, 3); - m_chkCase = new wxCheckBox(this, -1, _("Match case")); + m_chkCase = new wxCheckBox(this, wxID_ANY, _("Match case")); chksizer->Add(m_chkCase, 0, wxALL, 3); optsizer->Add(chksizer, 0, wxALL, 10); static const wxString searchDirections[] = {_("Up"), _("Down")}; - m_radioDir = new wxRadioBox(this, -1, _("Search direction"), + int majorDimension = 0; + int rbStyle ; + if (isPda) + rbStyle = wxRA_SPECIFY_ROWS; + else + rbStyle = wxRA_SPECIFY_COLS; + + m_radioDir = new wxRadioBox(this, wxID_ANY, _("Search direction"), wxDefaultPosition, wxDefaultSize, - WXSIZEOF(searchDirections), searchDirections); + WXSIZEOF(searchDirections), searchDirections, + majorDimension, rbStyle); - optsizer->Add(m_radioDir, 0, wxALL, 10); + optsizer->Add(m_radioDir, 0, wxALL, isPda ? 5 : 10); leftsizer->Add(optsizer); wxBoxSizer *bttnsizer = new wxBoxSizer(wxVERTICAL); - bttnsizer->Add(new wxButton(this, wxID_FIND, _("&Find")), 0, wxALL, 3); + wxButton* btn = new wxButton(this, wxID_FIND); + btn->SetDefault(); + bttnsizer->Add(btn, 0, wxALL, 3); - bttnsizer->Add(new wxButton(this, wxID_CANCEL, _("&Cancel")), 0, wxALL, 3); + bttnsizer->Add(new wxButton(this, wxID_CANCEL), 0, wxALL, 3); if ( style & wxFR_REPLACEDIALOG ) { @@ -180,29 +186,29 @@ bool wxGenericFindReplaceDialog::Create(wxWindow *parent, wxBoxSizer *topsizer = new wxBoxSizer( wxHORIZONTAL ); - topsizer->Add(leftsizer, 1, wxALL, 5); - topsizer->Add(bttnsizer, 0, wxALL, 5); + topsizer->Add(leftsizer, 1, wxALL, isPda ? 0 : 5); + topsizer->Add(bttnsizer, 0, wxALL, isPda ? 0 : 5); int flags = m_FindReplaceData->GetFlags(); if ( flags & wxFR_MATCHCASE ) - m_chkCase->SetValue(TRUE); + m_chkCase->SetValue(true); if ( flags & wxFR_WHOLEWORD ) - m_chkWord->SetValue(TRUE); + m_chkWord->SetValue(true); m_radioDir->SetSelection( flags & wxFR_DOWN ); if ( style & wxFR_NOMATCHCASE ) - m_chkCase->Enable(FALSE); + m_chkCase->Enable(false); if ( style & wxFR_NOWHOLEWORD ) - m_chkWord->Enable(FALSE); + m_chkWord->Enable(false); if ( style & wxFR_NOUPDOWN) - m_radioDir->Enable(FALSE); + m_radioDir->Enable(false); - SetAutoLayout( TRUE ); + SetAutoLayout( true ); SetSizer( topsizer ); topsizer->SetSizeHints( this ); @@ -212,7 +218,7 @@ bool wxGenericFindReplaceDialog::Create(wxWindow *parent, m_textFind->SetFocus(); - return TRUE; + return true; } // ---------------------------------------------------------------------------- @@ -270,7 +276,7 @@ void wxGenericFindReplaceDialog::OnCancel(wxCommandEvent& WXUNUSED(event)) { SendEvent(wxEVT_COMMAND_FIND_CLOSE); - Show(FALSE); + Show(false); } void wxGenericFindReplaceDialog::OnUpdateFindUI(wxUpdateUIEvent &event) @@ -285,4 +291,3 @@ void wxGenericFindReplaceDialog::OnCloseWindow(wxCloseEvent &) } #endif // wxUSE_FINDREPLDLG -