1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193
|
/////////////////////////////////////////////////////////////////////////////
// Name: wx/os2/radiobox.h
// Purpose: wxRadioBox class
// Author: David Webster
// Modified by:
// Created: 10/12/99
// Copyright: (c) David Webster
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_RADIOBOX_H_
#define _WX_RADIOBOX_H_
// List box item
class WXDLLIMPEXP_FWD_CORE wxBitmap ;
class WXDLLIMPEXP_CORE wxRadioBox: public wxControl, public wxRadioBoxBase
{
public:
wxRadioBox();
inline wxRadioBox( wxWindow* pParent
,wxWindowID vId
,const wxString& rsTitle
,const wxPoint& rPos = wxDefaultPosition
,const wxSize& rSize = wxDefaultSize
,int nNum = 0
,const wxString asChoices[] = NULL
,int nMajorDim = 0
,long lStyle = wxRA_SPECIFY_COLS
,const wxValidator& rVal = wxDefaultValidator
,const wxString& rsName = wxRadioBoxNameStr
)
{
Create( pParent
,vId
,rsTitle
,rPos
,rSize
,nNum
,asChoices
,nMajorDim
,lStyle
,rVal
,rsName
);
}
inline wxRadioBox( wxWindow* pParent
,wxWindowID vId
,const wxString& rsTitle
,const wxPoint& rPos
,const wxSize& rSize
,const wxArrayString& asChoices
,int nMajorDim = 0
,long lStyle = wxRA_SPECIFY_COLS
,const wxValidator& rVal = wxDefaultValidator
,const wxString& rsName = wxRadioBoxNameStr
)
{
Create( pParent
,vId
,rsTitle
,rPos
,rSize
,asChoices
,nMajorDim
,lStyle
,rVal
,rsName
);
}
virtual ~wxRadioBox();
bool Create( wxWindow* pParent
,wxWindowID vId
,const wxString& rsTitle
,const wxPoint& rPos = wxDefaultPosition
,const wxSize& rSize = wxDefaultSize
,int nNum = 0
,const wxString asChoices[] = NULL
,int nMajorDim = 0
,long lStyle = wxRA_SPECIFY_COLS
,const wxValidator& rVal = wxDefaultValidator
,const wxString& rsName = wxRadioBoxNameStr
);
bool Create( wxWindow* pParent
,wxWindowID vId
,const wxString& rsTitle
,const wxPoint& rPos
,const wxSize& rSize
,const wxArrayString& asChoices
,int nMajorDim = 0
,long lStyle = wxRA_SPECIFY_COLS
,const wxValidator& rVal = wxDefaultValidator
,const wxString& rsName = wxRadioBoxNameStr
);
// Enabling
virtual bool Enable(bool bEnable = true);
virtual bool Enable(unsigned int nItem, bool bEnable = true);
virtual bool IsItemEnabled(unsigned int WXUNUSED(n)) const
{
/* TODO */
return true;
}
// Showing
virtual bool Show(bool bShow = true);
virtual bool Show(unsigned int nItem, bool bShow = true);
virtual bool IsItemShown(unsigned int WXUNUSED(n)) const
{
/* TODO */
return true;
}
void Command(wxCommandEvent& rEvent);
bool ContainsHWND(WXHWND hWnd) const;
virtual WXHBRUSH OnCtlColor( WXHDC hDC
,WXHWND hWnd
,WXUINT uCtlColor
,WXUINT uMessage
,WXWPARAM wParam
,WXLPARAM lParam
);
virtual bool OS2Command( WXUINT uParam
,WXWORD wId
);
void SendNotificationEvent(void);
MRESULT WindowProc( WXUINT uMsg
,WXWPARAM wParam
,WXLPARAM lParam
);
virtual unsigned int GetCount() const;
inline WXHWND* GetRadioButtons(void) const { return m_ahRadioButtons; }
int GetSelection(void) const;
void GetSize(int* pnX, int* pnY) const;
inline int GetSizeFlags(void) const { return m_nSizeFlags; }
virtual wxString GetString(unsigned int nIndex) const;
virtual wxString GetStringSelection(void) const;
inline void SetButtonFont(const wxFont& rFont) { SetFont(rFont); }
void SetFocus(void);
virtual bool SetFont(const wxFont& rFont);
inline void SetLabelFont(const wxFont& WXUNUSED(font)) {}
virtual void SetSelection(int nIndex);
virtual void SetString(unsigned int nNum, const wxString& rsLabel);
virtual bool SetStringSelection(const wxString& rsStr);
virtual void SetLabel(const wxString& rsLabel)
{ wxControl::SetLabel(rsLabel); }
virtual wxString GetLabel() const
{ return wxControl::GetLabel(); }
void SetLabel( int nItem, const wxString& rsLabel );
void SetLabel( int item, wxBitmap* pBitmap );
wxString GetLabel(int nItem) const;
protected:
virtual wxBorder GetDefaultBorder() const { return wxBORDER_NONE; }
virtual wxSize DoGetBestSize(void) const;
virtual void DoSetSize( int nX
,int nY
,int nWidth
,int nHeight
,int nSizeFlags = wxSIZE_AUTO
);
wxSize GetMaxButtonSize(void) const;
wxSize GetTotalButtonSize(const wxSize& rSizeBtn) const;
void SubclassRadioButton(WXHWND hWndBtn);
WXHWND* m_ahRadioButtons;
int* m_pnRadioWidth; // for bitmaps
int* m_pnRadioHeight;
int m_nSelectedButton;
int m_nSizeFlags;
private:
unsigned int m_nNoItems;
DECLARE_DYNAMIC_CLASS(wxRadioBox)
}; // end of wxRadioBox
#endif // _WX_RADIOBOX_H_
|