+aaaaa ICON "cards.ico"
+
#include "wx/msw/wx.rc"
CardsIcon ICON "cards.ico"
- Added wxMouseCaptureChangedEvent
- Added custom character filtering to wxTextValidator
- wxTreeCtrl now supports incremental keyboard search
+- wxHelpProvider::RemoveHelp added and called from ~wxWindowBase
+ so that erroneous help strings are no longer found as the hash
+ table fills up
wxMSW:
\section{\class{wxFindReplaceDialog}}\label{wxfindreplacedialog}
wxFindReplaceDialog is a standard modeless dialog which is used to allow the
-user to search for some text (and possible replace it with something else).
+user to search for some text (and possibly replace it with something else).
The actual searching is supposed to be done in the owner window which is the
parent of this dialog. Note that it means that unlike for the other standard
dialogs this one {\bf must} have a parent window. Also note that there is no
-way to use this dialog in a modal way, it is always, by design and
+way to use this dialog in a modal way; it is always, by design and
implementation, modeless.
-Please see the dialogs sample for example of using it.
+Please see the dialogs sample for an example of using it.
\wxheading{Include files}
Creates the dialog and shows it on screen.
The {\it parent} and {\it data} parameters must be non-{\tt NULL}.
-
\membersection{wxFindReplaceDialog::GetData}\label{wxfindreplacedialoggetdata}
\constfunc{const wxFindReplaceData*}{GetData}{\void}
#include "wx/dialog.h"
+#if wxUSE_VALIDATORS
+#include "wx/valtext.h"
+#endif
+
class WXDLLEXPORT wxTextCtrl;
WXDLLEXPORT_DATA(extern const wxChar*) wxGetTextFromUserPromptStr;
WXDLLEXPORT_DATA(extern const wxChar*) wxEmptyString;
-#define wxTextEntryDialogStyle (wxOK | wxCANCEL | wxCENTRE)
+#define wxTextEntryDialogStyle (wxOK | wxCANCEL | wxCENTRE | wxWS_EX_VALIDATE_RECURSIVELY)
// ----------------------------------------------------------------------------
// wxTextEntryDialog: a dialog with text control, [ok] and [cancel] buttons
void SetValue(const wxString& val);
wxString GetValue() const { return m_value; }
+#if wxUSE_VALIDATORS
+ void SetTextValidator( wxTextValidator& validator );
+ void SetTextValidator( long style = wxFILTER_NONE );
+ wxTextValidator* GetTextValidator() { return (wxTextValidator*)m_textctrl->GetValidator(); }
+#endif
+ // wxUSE_VALIDATORS
+
// implementation only
void OnOK(wxCommandEvent& event);
style & ~wxTextEntryDialogStyle);
topsizer->Add( m_textctrl, 1, wxEXPAND | wxLEFT|wxRIGHT, 15 );
+#if wxUSE_VALIDATORS
+ wxTextValidator validator( wxFILTER_NONE, &m_value );
+ m_textctrl->SetValidator( validator );
+#endif
+ // wxUSE_VALIDATORS
+
#if wxUSE_STATLINE
// 3) static line
topsizer->Add( new wxStaticLine( this, -1 ), 0, wxEXPAND | wxLEFT|wxRIGHT|wxTOP, 10 );
void wxTextEntryDialog::OnOK(wxCommandEvent& WXUNUSED(event) )
{
+#if wxUSE_VALIDATORS
+ if( Validate() && TransferDataFromWindow() )
+ {
+ EndModal( wxID_OK );
+ }
+#else
m_value = m_textctrl->GetValue();
EndModal(wxID_OK);
+#endif
+ // wxUSE_VALIDATORS
}
void wxTextEntryDialog::SetValue(const wxString& val)
m_textctrl->SetValue(val);
}
+#if wxUSE_VALIDATORS
+void wxTextEntryDialog::SetTextValidator( long style )
+{
+ wxTextValidator validator( style, &m_value );
+ m_textctrl->SetValidator( validator );
+}
+
+void wxTextEntryDialog::SetTextValidator( wxTextValidator& validator )
+{
+ m_textctrl->SetValidator( validator );
+}
+
+#endif
+ // wxUSE_VALIDATORS
+
#endif // wxUSE_TEXTDLG