GTK+ callbacks must have C linkage (patch 1157384)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32974 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2005-03-21 23:42:26 +00:00
parent 7d4813a0c1
commit 865bb3251e
70 changed files with 692 additions and 78 deletions

View File

@@ -67,7 +67,8 @@ struct wxlistbox_idle_struct
gint m_tag;
};
extern "C" gint wxlistbox_idle_callback( gpointer gdata )
extern "C" {
static gint wxlistbox_idle_callback( gpointer gdata )
{
wxlistbox_idle_struct* data = (wxlistbox_idle_struct*) gdata;
gdk_threads_enter();
@@ -88,11 +89,13 @@ extern "C" gint wxlistbox_idle_callback( gpointer gdata )
return TRUE;
}
}
//-----------------------------------------------------------------------------
// "focus_in_event"
//-----------------------------------------------------------------------------
extern "C" {
static gint gtk_listitem_focus_in_callback( GtkWidget *widget,
GdkEvent *WXUNUSED(event),
wxWindow *win )
@@ -120,11 +123,13 @@ static gint gtk_listitem_focus_in_callback( GtkWidget *widget,
return FALSE;
}
}
//-----------------------------------------------------------------------------
// "focus_out_event"
//-----------------------------------------------------------------------------
extern "C" {
static gint gtk_listitem_focus_out_callback( GtkWidget *widget, GdkEventFocus *gdk_event, wxWindowGTK *win )
{
if (g_isIdle)
@@ -150,6 +155,7 @@ static gint gtk_listitem_focus_out_callback( GtkWidget *widget, GdkEventFocus *g
return FALSE;
}
}
//-----------------------------------------------------------------------------
// "button_release_event"
@@ -161,6 +167,7 @@ static gint gtk_listitem_focus_out_callback( GtkWidget *widget, GdkEventFocus *g
this can lead to race conditions so that we emit the dclick event
after the GDK_BUTTON_RELEASE event after the GDK_2BUTTON_PRESS event */
extern "C" {
static gint
gtk_listbox_button_release_callback( GtkWidget * WXUNUSED(widget),
GdkEventButton * WXUNUSED(gdk_event),
@@ -200,11 +207,13 @@ gtk_listbox_button_release_callback( GtkWidget * WXUNUSED(widget),
return FALSE;
}
}
//-----------------------------------------------------------------------------
// "button_press_event"
//-----------------------------------------------------------------------------
extern "C" {
static gint
gtk_listbox_button_press_callback( GtkWidget *widget,
GdkEventButton *gdk_event,
@@ -254,11 +263,13 @@ gtk_listbox_button_press_callback( GtkWidget *widget,
return FALSE;
}
}
//-----------------------------------------------------------------------------
// "key_press_event"
//-----------------------------------------------------------------------------
extern "C" {
static gint
gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxListBox *listbox )
{
@@ -349,23 +360,12 @@ gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxLis
return FALSE;
}
}
//-----------------------------------------------------------------------------
// "select" and "deselect"
//-----------------------------------------------------------------------------
static void gtk_listitem_select_cb( GtkWidget *widget, wxListBox *listbox, bool is_selection );
static void gtk_listitem_select_callback( GtkWidget *widget, wxListBox *listbox )
{
gtk_listitem_select_cb( widget, listbox, TRUE );
}
static void gtk_listitem_deselect_callback( GtkWidget *widget, wxListBox *listbox )
{
gtk_listitem_select_cb( widget, listbox, FALSE );
}
static void gtk_listitem_select_cb( GtkWidget *widget,
wxListBox *listbox,
bool is_selection )
@@ -416,10 +416,25 @@ static void gtk_listitem_select_cb( GtkWidget *widget,
listbox->GetEventHandler()->ProcessEvent( event );
}
extern "C" {
static void gtk_listitem_select_callback( GtkWidget *widget, wxListBox *listbox )
{
gtk_listitem_select_cb( widget, listbox, TRUE );
}
}
extern "C" {
static void gtk_listitem_deselect_callback( GtkWidget *widget, wxListBox *listbox )
{
gtk_listitem_select_cb( widget, listbox, FALSE );
}
}
//-----------------------------------------------------------------------------
// wxListBox
//-----------------------------------------------------------------------------
extern "C" {
static gint
gtk_listbox_realized_callback( GtkWidget *m_widget, wxListBox *win )
{
@@ -432,6 +447,7 @@ gtk_listbox_realized_callback( GtkWidget *m_widget, wxListBox *win )
return false;
}
}
//-----------------------------------------------------------------------------
// wxListBox