X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/70dc287a3997b65d954bfbd5861f72696bd3dd27..8183307507e8f19ddafa8c6e656dfa383e472678:/include/wx/msw/control.h diff --git a/include/wx/msw/control.h b/include/wx/msw/control.h index cba93a1609..2549f9b989 100644 --- a/include/wx/msw/control.h +++ b/include/wx/msw/control.h @@ -12,7 +12,7 @@ #ifndef _WX_CONTROL_H_ #define _WX_CONTROL_H_ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface "control.h" #endif @@ -21,15 +21,13 @@ // General item class class WXDLLEXPORT wxControl : public wxControlBase { - DECLARE_ABSTRACT_CLASS(wxControl) - public: - wxControl(); - wxControl(wxWindow *parent, wxWindowID id, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize, long style = 0, - const wxValidator& validator = wxDefaultValidator, - const wxString& name = wxControlNameStr) + wxControl(); + wxControl(wxWindow *parent, wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, long style = 0, + const wxValidator& validator = wxDefaultValidator, + const wxString& name = wxControlNameStr) { Create(parent, id, pos, size, style, validator, name); } @@ -60,28 +58,18 @@ public: virtual bool MSWOnDraw(WXDRAWITEMSTRUCT *WXUNUSED(item)) { return FALSE; }; virtual bool MSWOnMeasure(WXMEASUREITEMSTRUCT *WXUNUSED(item)) { return FALSE; }; - wxArrayLong GetSubcontrols() { return m_subControls; } + const wxArrayLong& GetSubcontrols() const { return m_subControls; } void OnEraseBackground(wxEraseEvent& event); virtual WXHBRUSH OnCtlColor(WXHDC pDC, WXHWND pWnd, WXUINT nCtlColor, WXUINT message, WXWPARAM wParam, WXLPARAM lParam); -#if WXWIN_COMPATIBILITY - virtual void SetButtonColour(const wxColour& WXUNUSED(col)) { } - wxColour* GetButtonColour() const { return NULL; } - - virtual void SetLabelFont(const wxFont& font); - virtual void SetButtonFont(const wxFont& font); - wxFont& GetLabelFont() const; - wxFont& GetButtonFont() const; -#endif // WXWIN_COMPATIBILITY - protected: - // for controls like radiobuttons which are really composite this array - // holds the ids (not HWNDs!) of the sub controls - wxArrayLong m_subControls; + // choose the default border for this window + virtual wxBorder GetDefaultBorder() const; + // return default best size (doesn't really make any sense, override this) virtual wxSize DoGetBestSize() const; // create the control of the given Windows class: this is typically called @@ -117,17 +105,14 @@ protected: // default style for the control include WS_TABSTOP if it AcceptsFocus() virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const; + // for controls like radiobuttons which are really composite this array + // holds the ids (not HWNDs!) of the sub controls + wxArrayLong m_subControls; + private: + DECLARE_DYNAMIC_CLASS_NO_COPY(wxControl) DECLARE_EVENT_TABLE() }; - -#if WXWIN_COMPATIBILITY - inline wxFont& wxControl::GetLabelFont() const { return (wxFont &)GetFont(); } - inline wxFont& wxControl::GetButtonFont() const { return (wxFont &)GetFont(); } - inline void wxControl::SetLabelFont(const wxFont& font) { SetFont(font); } - inline void wxControl::SetButtonFont(const wxFont& font) { SetFont(font); } -#endif // WXWIN_COMPATIBILITY - #endif // _WX_CONTROL_H_