if (listbox->IsSelected(sel))
{
GtkTreeEntry* entry = listbox->GtkGetEntry(sel);
-
+
if (entry)
{
event.SetInt(sel);
event.SetClientObject( (wxClientData*) gtk_tree_entry_get_userdata(entry) );
else if ( listbox->HasClientUntypedData() )
event.SetClientData( gtk_tree_entry_get_userdata(entry) );
-
+
g_object_unref (entry);
}
else
gtk_listitem_changed_callback( GtkTreeSelection* selection, wxListBox *listbox )
{
if (g_blockEventsOnDrag) return;
-
+
if (listbox->m_blockEvent) return;
-
+
wxCommandEvent event(wxEVT_COMMAND_LISTBOX_SELECTED, listbox->GetId() );
event.SetEventObject( listbox );
{
wxArrayInt selections;
listbox->GetSelections( selections );
-
+
if (selections.GetCount() == 0)
{
// indicate that this is a deselection
event.SetExtraLong( 0 );
event.SetInt( -1 );
-
+
listbox->GetEventHandler()->ProcessEvent( event );
-
+
return;
}
else
// indicate that this is a selection
event.SetExtraLong( 1 );
event.SetInt( selections[0] );
-
+
listbox->GetEventHandler()->ProcessEvent( event );
}
}
// indicate that this is a deselection
event.SetExtraLong( 0 );
event.SetInt( -1 );
-
+
listbox->GetEventHandler()->ProcessEvent( event );
-
+
return;
}
else
const wxString &name )
{
m_needParent = true;
- m_acceptsFocus = true;
m_blockEvent = false;
if (!PreCreation( parent, pos, size ) ||
GtkTreeSelection* selection = gtk_tree_view_get_selection( m_treeview );
-
+
g_signal_connect_after (selection, "changed",
G_CALLBACK (gtk_listitem_changed_callback), this);