Fixed wxTextCtrl::SetMaxLength for rich edit controls

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28565 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2004-07-31 15:43:20 +00:00
parent 835ab90ded
commit 4a82116e2e
3 changed files with 18 additions and 1 deletions

View File

@@ -257,6 +257,7 @@ wxMSW:
- support for alpha channel in toolbar bitmaps (Jurgen Doornik) - support for alpha channel in toolbar bitmaps (Jurgen Doornik)
- wxFileDialog can now be moved and centered (Randall Fox) - wxFileDialog can now be moved and centered (Randall Fox)
- restored (and improved) possibility to use wx with MFC broken in 2.5.2 - restored (and improved) possibility to use wx with MFC broken in 2.5.2
- fixed wxTextCtrl::SetMaxLength for rich edit controls
wxUniv/X11: wxUniv/X11:
@@ -265,6 +266,7 @@ wxUniv/X11:
wxWinCE: wxWinCE:
- added automatized but customizable handling of native SmartPhone menus - added automatized but customizable handling of native SmartPhone menus
- fixed wxRadioBox and wxStaticBox
wxHTML: wxHTML:

View File

@@ -1116,7 +1116,7 @@ already is filled up to the maximal length, a
(giving it the possibility to show an explanatory message, for example) and the (giving it the possibility to show an explanatory message, for example) and the
extra input is discarded. extra input is discarded.
Note that this function may only be used with single line text controls. Note that under GTK+, this function may only be used with single line text controls.
\wxheading{Compatibility} \wxheading{Compatibility}

View File

@@ -1532,6 +1532,11 @@ wxString wxTextCtrl::GetLineText(long lineNo) const
void wxTextCtrl::SetMaxLength(unsigned long len) void wxTextCtrl::SetMaxLength(unsigned long len)
{ {
#if wxUSE_RICHEDIT
if (IsRich())
::SendMessage(GetHwnd(), EM_EXLIMITTEXT, 0, (LPARAM) (DWORD) len);
else
#endif
::SendMessage(GetHwnd(), EM_LIMITTEXT, len, 0); ::SendMessage(GetHwnd(), EM_LIMITTEXT, len, 0);
} }
@@ -1551,6 +1556,11 @@ void wxTextCtrl::Redo()
{ {
if (CanRedo()) if (CanRedo())
{ {
#if wxUSE_RICHEDIT
if (GetRichVersion() > 1)
::SendMessage(GetHwnd(), EM_REDO, 0, 0);
else
#endif
// Same as Undo, since Undo undoes the undo, i.e. a redo. // Same as Undo, since Undo undoes the undo, i.e. a redo.
::SendMessage(GetHwnd(), EM_UNDO, 0, 0); ::SendMessage(GetHwnd(), EM_UNDO, 0, 0);
} }
@@ -1563,6 +1573,11 @@ bool wxTextCtrl::CanUndo() const
bool wxTextCtrl::CanRedo() const bool wxTextCtrl::CanRedo() const
{ {
#if wxUSE_RICHEDIT
if (GetRichVersion() > 1)
return ::SendMessage(GetHwnd(), EM_CANREDO, 0, 0) != 0;
else
#endif
return ::SendMessage(GetHwnd(), EM_CANUNDO, 0, 0) != 0; return ::SendMessage(GetHwnd(), EM_CANUNDO, 0, 0) != 0;
} }