]> git.saurik.com Git - wxWidgets.git/commitdiff
generate wxEVT_COMMAND_LIST_END_LABEL_EDIT event even if label didn't change
authorVadim Zeitlin <vadim@wxwidgets.org>
Mon, 9 Jul 2007 14:58:44 +0000 (14:58 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Mon, 9 Jul 2007 14:58:44 +0000 (14:58 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47265 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/changes.txt
src/generic/listctrl.cpp

index 6d003a01715c4238de70f3f95f1cc9561da6cb0c..02fdd43994d94e1f0370d3b5d3b4ca9a5bc3ae08 100644 (file)
@@ -204,6 +204,7 @@ wxGTK:
 - Speed up wxBitmap::Rescale()
 - Add right button event for wxToolbar's tools (Tim Kosse)
 - Don't unconditionally add wxCAPTION style to wxMiniFrame
+- Generate wxEVT_COMMAND_LIST_END_LABEL_EDIT event even if label didn't change
 
 
 2.8.4
index 627f683f443c9500c4ce1838c6702da19a223800..c0fe60314fb797d12c42396968c8909407eae4f1 100644 (file)
@@ -2160,16 +2160,17 @@ bool wxListTextCtrlWrapper::AcceptChanges()
 {
     const wxString value = m_text->GetValue();
 
-    if ( value == m_startValue )
-        // nothing changed, always accept
-        return true;
-
+    // notice that we should always call OnRenameAccept() to generate the "end
+    // label editing" event, even if the user hasn't really changed anything
     if ( !m_owner->OnRenameAccept(m_itemEdited, value) )
+    {
         // vetoed by the user
         return false;
+    }
 
-    // accepted, do rename the item
-    m_owner->SetItemText(m_itemEdited, value);
+    // accepted, do rename the item (unless nothing changed)
+    if ( value != m_startValue )
+        m_owner->SetItemText(m_itemEdited, value);
 
     return true;
 }