]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/radiobut.h
Added raw bitmap access support to GTK 2.0.
[wxWidgets.git] / include / wx / gtk / radiobut.h
index 337264fe5afb07864a743be0040c162df875d9f7..552286e179b91e4f1a0dca57af4944b4f5e08d90 100644 (file)
@@ -1,31 +1,73 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        radiobut.h
+// Name:        wx/gtk/radiobut.h
 // Purpose:
 // Author:      Robert Roebling
-// Created:     01/02/97
-// Id:
-// Copyright:   (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence:    wxWindows licence
+// Id:          $Id$
+// Copyright:   (c) 1998 Robert Roebling
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
 #ifndef __GTKRADIOBUTTONH__
 #define __GTKRADIOBUTTONH__
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma interface
 #endif
 
-#include "wx/defs.h"
-#include "wx/object.h"
-#include "wx/list.h"
-#include "wx/control.h"
-
 //-----------------------------------------------------------------------------
-// classes
+// wxRadioButton
 //-----------------------------------------------------------------------------
 
-class wxRadioButton;
+class wxRadioButton: public wxControl
+{
+public:
+    wxRadioButton() { }
+    wxRadioButton( wxWindow *parent,
+                   wxWindowID id,
+                   const wxString& label,
+                   const wxPoint& pos = wxDefaultPosition,
+                   const wxSize& size = wxDefaultSize,
+                   long style = 0,
+                   const wxValidator& validator = wxDefaultValidator,
+                   const wxString& name = wxRadioButtonNameStr )
+    {
+        Create( parent, id, label, pos, size, style, validator, name );
+    }
+
+    bool Create( wxWindow *parent,
+                 wxWindowID id,
+                 const wxString& label,
+                 const wxPoint& pos = wxDefaultPosition,
+                 const wxSize& size = wxDefaultSize,
+                 long style = 0,
+                 const wxValidator& validator = wxDefaultValidator,
+                 const wxString& name = wxRadioButtonNameStr );
+
+    virtual void SetLabel(const wxString& label);
+    virtual void SetValue(bool val);
+    virtual bool GetValue() const;
+    virtual bool Enable( bool enable = TRUE );
+
+    static wxVisualAttributes
+    GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+    // implementation
+
+    virtual bool IsRadioButton() const { return TRUE; }
+
+    GSList *m_radioButtonGroup;
+    void DoApplyWidgetStyle(GtkRcStyle *style);
+    bool IsOwnGtkWindow( GdkWindow *window );
+    void OnInternalIdle();
+
+    bool m_blockEvent;
+
+protected:
+    virtual wxSize DoGetBestSize() const;
 
+private:
+    DECLARE_DYNAMIC_CLASS(wxRadioButton)
+};
 
 #endif // __GTKRADIOBUTTONH__