#ifndef _WX_RADIOBOX_H_
#define _WX_RADIOBOX_H_
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
- #pragma interface "radiobox.h"
-#endif
-
-class WXDLLEXPORT wxBitmap;
-class WXDLLEXPORT wxRadioButton;
+class WXDLLIMPEXP_FWD_CORE wxBitmap;
+class WXDLLIMPEXP_FWD_CORE wxRadioButton;
// ----------------------------------------------------------------------------
// wxRadioBox
// ----------------------------------------------------------------------------
-class WXDLLEXPORT wxRadioBox : public wxControl, public wxRadioBoxBase
+class WXDLLIMPEXP_CORE wxRadioBox : public wxControl, public wxRadioBoxBase
{
public:
wxRadioBox():m_radios(wxKEY_INTEGER,32)
style, val, name);
}
- ~wxRadioBox();
+ virtual ~wxRadioBox();
bool Create(wxWindow *parent,
wxWindowID id,
const wxValidator& val = wxDefaultValidator,
const wxString& name = wxRadioBoxNameStr);
+ // Enabling
+ virtual bool Enable(bool enable = true);
+ virtual bool Enable(unsigned int n, bool enable = true);
+ virtual bool IsItemEnabled(unsigned int WXUNUSED(n)) const
+ {
+ /* TODO */
+ return true;
+ }
+
+ // Showing
+ virtual bool Show(bool show = true);
+ virtual bool Show(unsigned int n, bool show = true);
+ virtual bool IsItemShown(unsigned int WXUNUSED(n)) const
+ {
+ /* TODO */
+ return true;
+ }
+
// implement the radiobox interface
virtual void SetSelection(int n);
virtual int GetSelection() const;
- virtual int GetCount() const;
- virtual wxString GetString(int n) const;
- virtual void SetString(int n, const wxString& label);
- virtual bool Enable(int n, bool enable = true);
- virtual void Show(int n, bool show = true);
- virtual int GetColumnCount() const;
- virtual int GetRowCount() const;
+ virtual unsigned int GetCount() const;
+ virtual wxString GetString(unsigned int n) const;
+ virtual void SetString(unsigned int n, const wxString& label);
+
+ virtual void SetLabel(const wxString& label);
+ virtual wxString GetLabel();
virtual void DoGetPosition( int *x, int *y ) const;
virtual void DoGetSize( int *width, int *height ) const;
virtual wxPoint GetClientAreaOrigin() const;
- virtual bool Show(bool show = true);
void SetFocus();
- virtual bool Enable(bool enable = true);
void SetLabelFont(const wxFont& WXUNUSED(font)) {};
void SetButtonFont(const wxFont& font) { SetFont(font); }
+ virtual void Refresh( bool eraseBackground = true,
+ const wxRect *rect = NULL );
+
void Command(wxCommandEvent& event);
int GetNumberOfRowsOrCols() const { return m_noRowsOrCols; }
void SendNotificationEvent();
- // get the number of buttons per column/row
- int GetNumVer() const;
- int GetNumHor() const;
-
- virtual void ApplyParentThemeBackground(const wxColour& bg)
- { SetBackgroundColour(bg); }
-
protected:
- // we can't compute our best size before the items are added to the control
- virtual void SetInitialBestSize(const wxSize& WXUNUSED(size)) { }
-
// get the max size of radio buttons
wxSize GetMaxButtonSize() const;
// get the total size occupied by the radio box buttons
wxSize GetTotalButtonSize(const wxSize& sizeBtn) const;
- int m_majorDim;
- int * m_radioWidth; // for bitmaps
- int * m_radioHeight;
+ int *m_radioWidth; // for bitmaps
+ int *m_radioHeight;
- int m_noItems;
- int m_noRowsOrCols;
- int m_selectedButton;
+ int m_noRowsOrCols;
+ int m_selectedButton;
virtual wxSize DoGetBestSize() const;
private:
void Init();
- wxRadioButton *GetRadioButton(int i);
+ wxRadioButton *GetRadioButton(int i) const;
wxPoint m_pos;
wxSize m_size;
wxHashTable m_radios;
DECLARE_DYNAMIC_CLASS(wxRadioBox)
- DECLARE_NO_COPY_CLASS(wxRadioBox)
+ wxDECLARE_NO_COPY_CLASS(wxRadioBox);
};
#endif