From: Vadim Zeitlin Date: Sat, 15 Mar 2008 03:04:09 +0000 (+0000) Subject: don't call GetLastPosition() unnecessarily in SelectAll(), all platforms should suppo... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/e072113323f06e5c71f8d02789c17df541751eaf don't call GetLastPosition() unnecessarily in SelectAll(), all platforms should support SetSelection(-1, -1) according to the docs (but wxGTK didn't, so fix it to do) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/textentry.h b/include/wx/textentry.h index 32c6895bd5..3d4863d881 100644 --- a/include/wx/textentry.h +++ b/include/wx/textentry.h @@ -92,7 +92,7 @@ public: // --------- virtual void SetSelection(long from, long to) = 0; - virtual void SelectAll() { SetSelection(0, GetLastPosition()); } + virtual void SelectAll() { SetSelection(-1, -1); } virtual void GetSelection(long *from, long *to) const = 0; bool HasSelection() const; virtual wxString GetStringSelection() const; diff --git a/src/gtk/textentry.cpp b/src/gtk/textentry.cpp index f96aa09b50..a84c0e691e 100644 --- a/src/gtk/textentry.cpp +++ b/src/gtk/textentry.cpp @@ -187,6 +187,12 @@ long wxTextEntry::GetLastPosition() const void wxTextEntry::SetSelection(long from, long to) { + // in wx convention, (-1, -1) means the entire range but GTK+ translates -1 + // (or any negative number for that matter) into last position so we need + // to translate manually + if ( from == -1 && to == -1 ) + from = 0; + gtk_editable_select_region(GetEditable(), from, to); }