From 470562a9afb0f34eed778c6fb18d09cfce6a1c75 Mon Sep 17 00:00:00 2001 From: Robert Roebling Date: Thu, 26 Oct 2000 08:20:11 +0000 Subject: [PATCH] Always eat in wxListBox so that no unselection/selection can be done wihtout wxGTK sending any event. Also prevent wxGTK from sending unselect events when a wxListBox with selected items in multiple mode gets destroyed. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_2_BRANCH@8644 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/gtk/listbox.cpp | 6 ++++-- src/gtk1/listbox.cpp | 6 ++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/gtk/listbox.cpp b/src/gtk/listbox.cpp index 783a4396c2..672e6c0b9a 100644 --- a/src/gtk/listbox.cpp +++ b/src/gtk/listbox.cpp @@ -222,9 +222,9 @@ gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxLis ret = listbox->GetEventHandler()->ProcessEvent( new_event ); } - if ((gdk_event->keyval == GDK_Return) && listbox->HasFlag(wxLB_SINGLE) && (!ret)) + if ((gdk_event->keyval == GDK_Return) && (!ret)) { - // eat return in single mode + // eat return in all modes ret = TRUE; } @@ -409,6 +409,8 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id, wxListBox::~wxListBox() { + m_hasVMT = FALSE; + Clear(); } diff --git a/src/gtk1/listbox.cpp b/src/gtk1/listbox.cpp index 783a4396c2..672e6c0b9a 100644 --- a/src/gtk1/listbox.cpp +++ b/src/gtk1/listbox.cpp @@ -222,9 +222,9 @@ gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxLis ret = listbox->GetEventHandler()->ProcessEvent( new_event ); } - if ((gdk_event->keyval == GDK_Return) && listbox->HasFlag(wxLB_SINGLE) && (!ret)) + if ((gdk_event->keyval == GDK_Return) && (!ret)) { - // eat return in single mode + // eat return in all modes ret = TRUE; } @@ -409,6 +409,8 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id, wxListBox::~wxListBox() { + m_hasVMT = FALSE; + Clear(); }