X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/54da4255a20216b070ec044ae2b8af75e9f2681f..012409e9ef464462a096344d61119d783b77865d:/include/wx/os2/radiobox.h diff --git a/include/wx/os2/radiobox.h b/include/wx/os2/radiobox.h index 7150b569f5..e664ccf7bf 100644 --- a/include/wx/os2/radiobox.h +++ b/include/wx/os2/radiobox.h @@ -1,29 +1,23 @@ ///////////////////////////////////////////////////////////////////////////// // Name: radiobox.h // Purpose: wxRadioBox class -// Author: AUTHOR +// Author: David Webster // Modified by: -// Created: ??/??/98 +// Created: 10/12/99 // RCS-ID: $Id$ -// Copyright: (c) AUTHOR -// Licence: wxWindows licence +// Copyright: (c) David Webster +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_RADIOBOX_H_ #define _WX_RADIOBOX_H_ -#ifdef __GNUG__ -#pragma interface "radiobox.h" -#endif - -#include "wx/control.h" - WXDLLEXPORT_DATA(extern const char*) wxRadioBoxNameStr; // List box item class WXDLLEXPORT wxBitmap ; -class WXDLLEXPORT wxRadioBox: public wxControl +class WXDLLEXPORT wxRadioBox: public wxControl, public wxRadioBoxBase { DECLARE_DYNAMIC_CLASS(wxRadioBox) public: @@ -33,7 +27,9 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, int n = 0, const wxString choices[] = NULL, int majorDim = 0, long style = wxRA_HORIZONTAL, +#if wxUSE_VALIDATORS const wxValidator& val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr) +#endif { Create(parent, id, title, pos, size, n, choices, majorDim, style, val, name); } @@ -44,18 +40,28 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, int n = 0, const wxString choices[] = NULL, int majorDim = 0, long style = wxRA_HORIZONTAL, +#if wxUSE_VALIDATORS const wxValidator& val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr); +#endif + + virtual bool OS2Command(WXUINT param, WXWORD id); + virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor, + WXUINT message, WXWPARAM wParam, WXLPARAM lParam); int FindString(const wxString& s) const; void SetSelection(int N); int GetSelection() const; + virtual int GetCount() const; wxString GetString(int N) const; - void SetSize(int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO); + virtual void SetString(int n, const wxString& label); + virtual int GetColumnCount() const; + virtual int GetRowCount() const; + void GetSize(int *x, int *y) const; void GetPosition(int *x, int *y) const; - wxString GetLabel() const; - void SetLabel(const wxString& label); - void SetLabel(int item, const wxString& label) ; + + void SetLabel(int item, const wxString& label); + void SetLabel(int item, wxBitmap *bitmap); wxString GetLabel(int item) const; bool Show(bool show); void SetFocus(); @@ -73,15 +79,44 @@ public: inline int GetNumberOfRowsOrCols() const { return m_noRowsOrCols; } inline void SetNumberOfRowsOrCols(int n) { m_noRowsOrCols = n; } + // implementation only from now on + // ------------------------------- + + WXHWND *GetRadioButtons() const { return m_radioButtons; } + bool ContainsHWND(WXHWND hWnd) const; + void SendNotificationEvent(); + + // get the number of buttons per column/row + int GetNumVer() const; + int GetNumHor() const; + +#if WXWIN_COMPATIBILITY + wxRadioBox(wxWindow *parent, wxFunction func, const char *title, + int x = -1, int y = -1, int width = -1, int height = -1, + int n = 0, char **choices = NULL, + int majorDim = 0, long style = wxRA_HORIZONTAL, const char *name = wxRadioBoxNameStr); +#endif // WXWIN_COMPATIBILITY + protected: -/* TODO: implementation + void SubclassRadioButton(WXHWND hWndBtn); + WXHWND * m_radioButtons; -*/ int m_majorDim ; + int * m_radioWidth; // for bitmaps + int * m_radioHeight; + int m_noItems; int m_noRowsOrCols; int m_selectedButton; + virtual void DoSetSize(int x, int y, + int width, int height, + int sizeFlags = wxSIZE_AUTO); +private: + virtual void SetLabel(const wxString& label) + { wxWindowBase::SetLabel(label); } + wxString GetLabel() const + { return(wxWindowBase::GetLabel()); } }; #endif