]> git.saurik.com Git - wxWidgets.git/commitdiff
don't call GetLastPosition() unnecessarily in SelectAll(), all platforms should suppo...
authorVadim Zeitlin <vadim@wxwidgets.org>
Sat, 15 Mar 2008 03:04:09 +0000 (03:04 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sat, 15 Mar 2008 03:04:09 +0000 (03:04 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@52535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/textentry.h
src/gtk/textentry.cpp

index 32c6895bd5198a9a44ad0777a2a3e48337c7354d..3d4863d881c4b87ddcb7644e3e84a0933b7ebfdb 100644 (file)
@@ -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;
index f96aa09b508e7138784bf92b28e9e749e7c853c6..a84c0e691ef83f0a79c3387009a321aca03774e9 100644 (file)
@@ -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);
 }