X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/64b54de8ddd9687b0a7b25b881d7b4e3ab77d261..1857c88d2624f37590be3b13c33f5cf9449e7a3b:/samples/widgets/textctrl.cpp diff --git a/samples/widgets/textctrl.cpp b/samples/widgets/textctrl.cpp index 16751dc7de..e744691027 100644 --- a/samples/widgets/textctrl.cpp +++ b/samples/widgets/textctrl.cpp @@ -29,6 +29,7 @@ #include "wx/log.h" #include "wx/timer.h" + #include "wx/bitmap.h" #include "wx/button.h" #include "wx/checkbox.h" #include "wx/radiobox.h" @@ -199,6 +200,8 @@ protected: m_selFrom, m_selTo; + wxString m_range10_20; + private: // any class wishing to process wxWindows events must use this macro DECLARE_EVENT_TABLE() @@ -322,7 +325,7 @@ TextWidgetsPage::TextWidgetsPage(wxNotebook *notebook, wxImageList *imaglist) #endif // __WXMSW__ wxButton *btn = new wxButton(this, TextPage_Reset, _T("&Reset")); - sizerLeft->Add(5, 5, 0, wxGROW | wxALL, 5); // spacer + sizerLeft->Add(2, 2, 0, wxGROW | wxALL, 1); // spacer sizerLeft->Add(btn, 0, wxALIGN_CENTRE_HORIZONTAL | wxALL, 15); // middle pane @@ -330,19 +333,19 @@ TextWidgetsPage::TextWidgetsPage(wxNotebook *notebook, wxImageList *imaglist) wxSizer *sizerMiddleUp = new wxStaticBoxSizer(box2, wxVERTICAL); btn = new wxButton(this, TextPage_Set, _T("&Set text value")); - sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 5); + sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 1); btn = new wxButton(this, TextPage_Add, _T("&Append text")); - sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 5); + sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 1); btn = new wxButton(this, TextPage_Insert, _T("&Insert text")); - sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 5); + sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 1); btn = new wxButton(this, TextPage_Load, _T("&Load file")); - sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 5); + sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 1); btn = new wxButton(this, TextPage_Clear, _T("&Clear")); - sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 5); + sizerMiddleUp->Add(btn, 0, wxALL | wxGROW, 1); wxStaticBox *box4 = new wxStaticBox(this, -1, _T("&Info:")); wxSizer *sizerMiddleDown = new wxStaticBoxSizer(box4, wxVERTICAL); @@ -422,7 +425,7 @@ TextWidgetsPage::TextWidgetsPage(wxNotebook *notebook, wxImageList *imaglist) m_sizerText = new wxStaticBoxSizer(box3, wxHORIZONTAL); Reset(); CreateText(); - m_sizerText->SetMinSize(250, 0); + m_sizerText->SetMinSize(150, 0); // the 3 panes panes compose the upper part of the window wxSizer *sizerTop = new wxBoxSizer(wxHORIZONTAL); @@ -542,7 +545,7 @@ void TextWidgetsPage::CreateText() { valueOld = m_text->GetValue(); - m_sizerText->Remove(m_text); + m_sizerText->Detach( m_text ); delete m_text; } else @@ -554,8 +557,10 @@ void TextWidgetsPage::CreateText() valueOld, wxDefaultPosition, wxDefaultSize, flags); + + // cast to int needed to silence gcc warning about different enums m_sizerText->Add(m_text, 1, wxALL | - (flags & wxTE_MULTILINE ? wxGROW + (flags & wxTE_MULTILINE ? (int)wxGROW : wxALIGN_TOP), 5); m_sizerText->Layout(); } @@ -603,7 +608,7 @@ void TextWidgetsPage::OnIdle(wxIdleEvent& WXUNUSED(event)) if ( m_textLineLast ) { m_textLineLast->SetValue( - wxString::Format(_T("%ld"), m_text->GetNumberOfLines())); + wxString::Format(_T("%d"), m_text->GetNumberOfLines()) ); } if ( m_textSelFrom && m_textSelTo ) @@ -629,7 +634,12 @@ void TextWidgetsPage::OnIdle(wxIdleEvent& WXUNUSED(event)) if ( m_textRange ) { - m_textRange->SetValue(m_text->GetRange(10, 20)); + wxString range = m_text->GetRange(10, 20); + if ( range != m_range10_20 ) + { + m_range10_20 = range; + m_textRange->SetValue(range); + } } } @@ -698,8 +708,9 @@ void TextWidgetsPage::OnButtonLoad(wxCommandEvent& WXUNUSED(event)) else { long elapsed = sw.Time(); - wxLogMessage(_T("Loaded file '%s' in %u.%us"), - filename.c_str(), elapsed / 1000, elapsed % 1000); + wxLogMessage(_T("Loaded file '%s' in %lu.%us"), + filename.c_str(), elapsed / 1000, + (unsigned int) elapsed % 1000); } } } @@ -731,7 +742,7 @@ void TextWidgetsPage::OnUpdateUIResetButton(wxUpdateUIEvent& event) (m_chkWrapLines->GetValue() != DEFAULTS.wraplines) ); } -void TextWidgetsPage::OnText(wxCommandEvent& event) +void TextWidgetsPage::OnText(wxCommandEvent& WXUNUSED(event)) { // small hack to suppress the very first message: by then the logging is // not yet redirected and so initial setting of the text value results in @@ -751,7 +762,7 @@ void TextWidgetsPage::OnTextEnter(wxCommandEvent& event) wxLogMessage(_T("Text entered: '%s'"), event.GetString().c_str()); } -void TextWidgetsPage::OnCheckOrRadioBox(wxCommandEvent& event) +void TextWidgetsPage::OnCheckOrRadioBox(wxCommandEvent& WXUNUSED(event)) { CreateText(); }