X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/dc26eeb36a7415bd73d3e442c79b7acc0aeed6eb..c2a738e372126950e5c70f72a3e8876f1ac89bf5:/include/wx/msw/radiobox.h?ds=sidebyside diff --git a/include/wx/msw/radiobox.h b/include/wx/msw/radiobox.h index 60f29cb922..01db4da7d8 100644 --- a/include/wx/msw/radiobox.h +++ b/include/wx/msw/radiobox.h @@ -14,13 +14,13 @@ #include "wx/statbox.h" -class WXDLLEXPORT wxSubwindows; +class WXDLLIMPEXP_FWD_CORE wxSubwindows; // ---------------------------------------------------------------------------- // wxRadioBox // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxRadioBox : public wxStaticBox, public wxRadioBoxBase +class WXDLLIMPEXP_CORE wxRadioBox : public wxStaticBox, public wxRadioBoxBase { public: wxRadioBox() { Init(); } @@ -32,7 +32,7 @@ public: const wxSize& size = wxDefaultSize, int n = 0, const wxString choices[] = NULL, int majorDim = 0, - long style = wxRA_HORIZONTAL, + long style = wxRA_SPECIFY_COLS, const wxValidator& val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr) { @@ -49,7 +49,7 @@ public: const wxSize& size, const wxArrayString& choices, int majorDim = 0, - long style = wxRA_HORIZONTAL, + long style = wxRA_SPECIFY_COLS, const wxValidator& val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr) { @@ -68,7 +68,7 @@ public: const wxSize& size = wxDefaultSize, int n = 0, const wxString choices[] = NULL, int majorDim = 0, - long style = wxRA_HORIZONTAL, + long style = wxRA_SPECIFY_COLS, const wxValidator& val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr); bool Create(wxWindow *parent, @@ -78,7 +78,7 @@ public: const wxSize& size, const wxArrayString& choices, int majorDim = 0, - long style = wxRA_HORIZONTAL, + long style = wxRA_SPECIFY_COLS, const wxValidator& val = wxDefaultValidator, const wxString& name = wxRadioBoxNameStr); @@ -92,6 +92,7 @@ public: virtual bool Show(unsigned int n, bool show = true); virtual bool IsItemEnabled(unsigned int n) const; virtual bool IsItemShown(unsigned int n) const; + virtual int GetItemFromPoint(const wxPoint& pt) const; // override some base class methods virtual bool Show(bool show = true); @@ -102,15 +103,26 @@ public: #if wxUSE_TOOLTIPS virtual bool HasToolTips() const; #endif // wxUSE_TOOLTIPS +#if wxUSE_HELP + // override virtual function with a platform-independent implementation + virtual wxString GetHelpTextAtPoint(const wxPoint & pt, wxHelpEvent::Origin origin) const + { + return wxRadioBoxBase::DoGetHelpTextAtPoint( this, pt, origin ); + } +#endif // wxUSE_HELP + + virtual bool Reparent(wxWindowBase *newParent); // we inherit a version always returning false from wxStaticBox, override // it to behave normally virtual bool AcceptsFocus() const { return wxControl::AcceptsFocus(); } + // returns true if the platform should explicitly apply a theme border + virtual bool CanApplyThemeBorder() const { return false; } + void SetLabelFont(const wxFont& WXUNUSED(font)) {} void SetButtonFont(const wxFont& font) { SetFont(font); } - // implementation only from now on // ------------------------------- @@ -123,9 +135,6 @@ protected: // common part of all ctors void Init(); - // we can't compute our best size before the items are added to the control - virtual void SetInitialBestSize(const wxSize& WXUNUSED(size)) { } - // subclass one radio button void SubclassRadioButton(WXHWND hWndBtn); @@ -138,22 +147,13 @@ protected: virtual void DoSetSize(int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO); + virtual void DoMoveWindow(int x, int y, int width, int height); virtual wxSize DoGetBestSize() const; #if wxUSE_TOOLTIPS virtual void DoSetItemToolTip(unsigned int n, wxToolTip * tooltip); #endif - virtual int GetItemFromPoint(const wxPoint& pt) const; - -#if wxUSE_HELP - // override virtual function with a platform-independent implementation - virtual wxString GetHelpTextAtPoint(const wxPoint & pt, wxHelpEvent::Origin origin) const - { - return wxRadioBoxBase::DoGetHelpTextAtPoint( this, pt, origin ); - } -#endif // wxUSE_HELP - #ifndef __WXWINCE__ virtual WXHRGN MSWGetRegionWithoutChildren(); #endif // __WXWINCE__ @@ -162,6 +162,10 @@ protected: // the buttons we contain wxSubwindows *m_radioButtons; + // and the special dummy button used only as a tab group boundary + WXHWND m_dummyHwnd; + wxWindowIDRef m_dummyId; + // array of widths and heights of the buttons, may be wxDefaultCoord if the // corresponding quantity should be computed int *m_radioWidth; @@ -172,7 +176,7 @@ protected: private: DECLARE_DYNAMIC_CLASS(wxRadioBox) - DECLARE_NO_COPY_CLASS(wxRadioBox) + wxDECLARE_NO_COPY_CLASS(wxRadioBox); }; #endif