(selectionOnly ? SFF_SELECTION : 0),
(LPARAM)&eds);
- wxASSERT_MSG( ucf.GotUpdate(), _T("EM_STREAMIN didn't send EN_UPDATE?") );
+ // It's okay for EN_UPDATE to not be sent if the selection is empty and
+ // the text is empty, otherwise warn the programmer about it.
+ wxASSERT_MSG( ucf.GotUpdate() || ( !HasSelection() && value.empty() ),
+ _T("EM_STREAMIN didn't send EN_UPDATE?") );
if ( eds.dwError )
{
void wxTextCtrl::DoWriteText(const wxString& value, bool selectionOnly)
{
- if ( value.empty() )
- return;
-
wxString valueDos;
if ( m_windowStyle & wxTE_MULTILINE )
valueDos = wxTextFile::Translate(value, wxTextFileType_Dos);
if ( changeSel )
{
- DoSetSelection(position, position, false /* don't scroll caret into view */);
+ DoSetSelection(position, position+1, false /* don't scroll caret into view */);
}
// get the selection formatting