// Name: src/gtk/radiobut.cpp
// Purpose:
// Author: Robert Roebling
-// Id: $Id$
// Copyright: (c) 1998 Robert Roebling
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#include "wx/radiobut.h"
+#include <gtk/gtk.h>
#include "wx/gtk/private.h"
+#include "wx/gtk/private/gtk2-compat.h"
//-----------------------------------------------------------------------------
// data
static
void gtk_radiobutton_clicked_callback( GtkToggleButton *button, wxRadioButton *rb )
{
- if (!rb->m_hasVMT) return;
-
if (g_blockEventsOnDrag) return;
if (!gtk_toggle_button_get_active(button)) return;
- wxCommandEvent event( wxEVT_COMMAND_RADIOBUTTON_SELECTED, rb->GetId());
+ wxCommandEvent event( wxEVT_RADIOBUTTON, rb->GetId());
event.SetInt( rb->GetValue() );
event.SetEventObject( rb );
rb->HandleWindowEvent( event );
void wxRadioButton::DoApplyWidgetStyle(GtkRcStyle *style)
{
- gtk_widget_modify_style(m_widget, style);
- gtk_widget_modify_style(gtk_bin_get_child(GTK_BIN(m_widget)), style);
+ GTKApplyStyle(m_widget, style);
+ GTKApplyStyle(gtk_bin_get_child(GTK_BIN(m_widget)), style);
}
GdkWindow *
wxRadioButton::GTKGetWindow(wxArrayGdkWindows& WXUNUSED(windows)) const
{
- return GTK_BUTTON(m_widget)->event_window;
+ return gtk_button_get_event_window(GTK_BUTTON(m_widget));
}
// static
wxVisualAttributes
wxRadioButton::GetClassDefaultAttributes(wxWindowVariant WXUNUSED(variant))
{
- wxVisualAttributes attr;
- // NB: we need toplevel window so that GTK+ can find the right style
- GtkWidget *wnd = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- GtkWidget* widget = gtk_radio_button_new_with_label(NULL, "");
- gtk_container_add(GTK_CONTAINER(wnd), widget);
- attr = GetDefaultAttributesFromGTKWidget(widget);
- gtk_widget_destroy(wnd);
- return attr;
+ return GetDefaultAttributesFromGTKWidget(gtk_radio_button_new_with_label(NULL, ""));
}