]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/tglbtn.cpp
speeding up rectangle drawing by using specific methods, needs 40% less time
[wxWidgets.git] / src / gtk / tglbtn.cpp
index 503382712c93c4b9e1328268a42c6b1d9e1470f2..52b95ba1fe59f2d7e69a4b0d9c86dde146d454ce 100644 (file)
@@ -7,7 +7,7 @@
 // Created:     08.02.01
 // RCS-ID:      $Id$
 // Copyright:   (c) 2000 Johnny C. Norris II
-// License:     wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 // For compilers that support precompilation, includes "wx.h".
@@ -130,9 +130,9 @@ void wxBitmapToggleButton::SetLabel(const wxBitmap& label)
 
 void wxBitmapToggleButton::OnSetBitmap()
 {
-    if (!m_bitmap.Ok()) return;
+    if (!m_bitmap.IsOk()) return;
 
-    GtkWidget* image = ((GtkBin*)m_widget)->child;
+    GtkWidget* image = gtk_bin_get_child(GTK_BIN(m_widget));
     if (image == NULL)
     {
         image = gtk_image_new();
@@ -151,7 +151,7 @@ bool wxBitmapToggleButton::Enable(bool enable /*=true*/)
     if (!wxControl::Enable(enable))
         return false;
 
-    gtk_widget_set_sensitive(GTK_BIN(m_widget)->child, enable);
+    gtk_widget_set_sensitive(gtk_bin_get_child(GTK_BIN(m_widget)), enable);
 
     if (!isEnabled && enable)
     {
@@ -164,7 +164,7 @@ bool wxBitmapToggleButton::Enable(bool enable /*=true*/)
 void wxBitmapToggleButton::DoApplyWidgetStyle(GtkRcStyle *style)
 {
     gtk_widget_modify_style(m_widget, style);
-    gtk_widget_modify_style(GTK_BIN(m_widget)->child, style);
+    gtk_widget_modify_style(gtk_bin_get_child(GTK_BIN(m_widget)), style);
 }
 
 GdkWindow *
@@ -178,7 +178,7 @@ wxSize wxBitmapToggleButton::DoGetBestSize() const
 {
     wxSize best;
 
-    if (m_bitmap.Ok())
+    if (m_bitmap.IsOk())
     {
         int border = HasFlag(wxNO_BORDER) ? 4 : 10;
         best.x = m_bitmap.GetWidth()+border;
@@ -267,7 +267,7 @@ bool wxToggleButton::GetValue() const
 {
     wxCHECK_MSG(m_widget != NULL, false, wxT("invalid toggle button"));
 
-    return GTK_TOGGLE_BUTTON(m_widget)->active;
+    return gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(m_widget)) != 0;
 }
 
 void wxToggleButton::SetLabel(const wxString& label)
@@ -285,17 +285,13 @@ void wxToggleButton::SetLabel(const wxString& label)
 
 bool wxToggleButton::Enable(bool enable /*=true*/)
 {
-    bool isEnabled = IsEnabled();
-
-    if (!wxControl::Enable(enable))
+    if (!base_type::Enable(enable))
         return false;
 
-    gtk_widget_set_sensitive(GTK_BIN(m_widget)->child, enable);
+    gtk_widget_set_sensitive(gtk_bin_get_child(GTK_BIN(m_widget)), enable);
 
-    if (!isEnabled && enable)
-    {
+    if (enable)
         GTKFixSensitivity();
-    }
 
     return true;
 }
@@ -303,7 +299,7 @@ bool wxToggleButton::Enable(bool enable /*=true*/)
 void wxToggleButton::DoApplyWidgetStyle(GtkRcStyle *style)
 {
     gtk_widget_modify_style(m_widget, style);
-    gtk_widget_modify_style(GTK_BIN(m_widget)->child, style);
+    gtk_widget_modify_style(gtk_bin_get_child(GTK_BIN(m_widget)), style);
 }
 
 GdkWindow *