]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/listbox.cpp
Fix wxCursor(wxImage&) ctor for image widths not a multiple of 8, and finding second...
[wxWidgets.git] / src / gtk / listbox.cpp
index 81f2e1247146f0359b4649179689fd9588ce1635..73edbd78f8a0652659c679730ce31a2ece601762 100644 (file)
@@ -33,7 +33,6 @@
 #endif
 
 #include <gtk/gtk.h>
-#include <gdk/gdkkeysyms.h>
 
 //-----------------------------------------------------------------------------
 // data
@@ -104,7 +103,7 @@ gtk_listbox_row_activated_callback(GtkTreeView        * WXUNUSED(treeview),
         event.SetInt(-1);
     }
 
-    listbox->GetEventHandler()->ProcessEvent( event );
+    listbox->HandleWindowEvent( event );
 }
 }
 
@@ -135,7 +134,7 @@ gtk_listitem_changed_callback(GtkTreeSelection * WXUNUSED(selection),
             event.SetExtraLong( 0 );
             event.SetInt( -1 );
 
-            listbox->GetEventHandler()->ProcessEvent( event );
+            listbox->HandleWindowEvent( event );
 
             return;
         }
@@ -145,7 +144,7 @@ gtk_listitem_changed_callback(GtkTreeSelection * WXUNUSED(selection),
             event.SetExtraLong( 1 );
             event.SetInt( selections[0] );
 
-            listbox->GetEventHandler()->ProcessEvent( event );
+            listbox->HandleWindowEvent( event );
         }
     }
     else
@@ -157,7 +156,7 @@ gtk_listitem_changed_callback(GtkTreeSelection * WXUNUSED(selection),
             event.SetExtraLong( 0 );
             event.SetInt( -1 );
 
-            listbox->GetEventHandler()->ProcessEvent( event );
+            listbox->HandleWindowEvent( event );
 
             return;
         }
@@ -178,7 +177,7 @@ gtk_listitem_changed_callback(GtkTreeSelection * WXUNUSED(selection),
             else if ( listbox->HasClientUntypedData() )
                 event.SetClientData( gtk_tree_entry_get_userdata(entry) );
 
-            listbox->GetEventHandler()->ProcessEvent( event );
+            listbox->HandleWindowEvent( event );
 
             g_object_unref (entry);
         }
@@ -206,7 +205,6 @@ static void gtk_tree_entry_destroy_cb(GtkTreeEntry* entry,
 //-----------------------------------------------------------------------------
 // Sorting callback (standard CmpNoCase return value)
 //-----------------------------------------------------------------------------
-#include <iostream>
 
 extern "C" {
 static gint gtk_listbox_sort_callback(GtkTreeModel * WXUNUSED(model),
@@ -448,7 +446,7 @@ wxListBox::~wxListBox()
 int wxListBox::DoInsertItems(const wxArrayStringsAdapter& items,
                              unsigned int pos,
                              void **clientData,
-                             wxClientDataType WXUNUSED(type))
+                             wxClientDataType type)
 {
     wxCHECK_MSG( m_treeview != NULL, wxNOT_FOUND, wxT("invalid listbox") );
 
@@ -473,15 +471,15 @@ int wxListBox::DoInsertItems(const wxArrayStringsAdapter& items,
                 (GtkTreeEntryDestroy)gtk_tree_entry_destroy_cb,
                             this);
 
-        if (clientData)
-            gtk_tree_entry_set_userdata(entry, clientData[i]);
-
         GtkTreeIter itercur;
         gtk_list_store_insert_before(m_liststore, &itercur, pIter);
 
         GtkSetItem(itercur, entry);
 
         g_object_unref (entry);
+
+        if (clientData)
+            AssignNewItemClientData(GtkGetIndexFor(itercur), clientData, i, type);
     }
 
     return pos + numItems - 1;