+ bool processed = false;
+ if (event.CmdDown())
+ {
+ long pos = wxRichTextCtrl::FindNextWordPosition(-1);
+ if (pos != -1 && (pos < m_caretPosition))
+ {
+ GetBuffer().DeleteRangeWithUndo(wxRichTextRange(pos+1, m_caretPosition), this);
+ processed = true;
+ }
+ }
+
+ if (!processed)
+ GetBuffer().DeleteRangeWithUndo(wxRichTextRange(m_caretPosition, m_caretPosition), this);