This doesn't work anyhow, so make it explicit by asserting if an attempt to do
it is made. And document this.
Also add a test of SetHint() to the text sample to verify it still works.
Closes #14456.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@72010
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
wxTextEntry::SetValue(value);
}
wxTextEntry::SetValue(value);
}
+ // wxTextEntry overrides
+ virtual bool SetHint(const wxString& hint);
+
// wxWindow overrides
virtual wxVisualAttributes GetDefaultAttributes() const
{
// wxWindow overrides
virtual wxVisualAttributes GetDefaultAttributes() const
{
currently you should avoid calling methods such as WriteText() or
Replace() when using hints and the text control is empty.
currently you should avoid calling methods such as WriteText() or
Replace() when using hints and the text control is empty.
+ @remarks Hints can only be used for single line text controls,
+ native multi-line text controls don't support hints under any
+ platform and hence wxWidgets doesn't provide them neither.
+
@since 2.9.0
*/
virtual bool SetHint(const wxString& hint);
@since 2.9.0
*/
virtual bool SetHint(const wxString& hint);
m_readonly = new MyTextCtrl( this, wxID_ANY, wxT("Read only"),
wxPoint(10,90), wxSize(140,wxDefaultCoord), wxTE_READONLY );
m_readonly = new MyTextCtrl( this, wxID_ANY, wxT("Read only"),
wxPoint(10,90), wxSize(140,wxDefaultCoord), wxTE_READONLY );
- m_limited = new MyTextCtrl(this, wxID_ANY, wxT("Max 8 ch"),
+ m_limited = new MyTextCtrl(this, wxID_ANY, "",
wxPoint(10, 130), wxSize(140, wxDefaultCoord));
wxPoint(10, 130), wxSize(140, wxDefaultCoord));
+ m_limited->SetHint("Max 8 ch");
m_limited->SetMaxLength(8);
// multi line text controls
m_limited->SetMaxLength(8);
// multi line text controls
+// ----------------------------------------------------------------------------
+// Other miscellaneous stuff
+// ----------------------------------------------------------------------------
+
+bool wxTextCtrlBase::SetHint(const wxString& hint)
+{
+ wxCHECK_MSG( IsSingleLine(), false,
+ wxS("Hints can only be set for single line text controls") );
+
+ return wxTextEntry::SetHint(hint);
+}
+
// do the window-specific processing after processing the update event
void wxTextCtrlBase::DoUpdateWindowUI(wxUpdateUIEvent& event)
{
// do the window-specific processing after processing the update event
void wxTextCtrlBase::DoUpdateWindowUI(wxUpdateUIEvent& event)
{