1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wx/msw/statbox.h
3 // Purpose: wxStaticBox class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_MSW_STATBOX_H_
13 #define _WX_MSW_STATBOX_H_
16 class WXDLLIMPEXP_CORE wxStaticBox
: public wxStaticBoxBase
21 wxStaticBox(wxWindow
*parent
, wxWindowID id
,
22 const wxString
& label
,
23 const wxPoint
& pos
= wxDefaultPosition
,
24 const wxSize
& size
= wxDefaultSize
,
26 const wxString
& name
= wxStaticBoxNameStr
)
28 Create(parent
, id
, label
, pos
, size
, style
, name
);
31 bool Create(wxWindow
*parent
, wxWindowID id
,
32 const wxString
& label
,
33 const wxPoint
& pos
= wxDefaultPosition
,
34 const wxSize
& size
= wxDefaultSize
,
36 const wxString
& name
= wxStaticBoxNameStr
);
38 /// Implementation only
39 virtual void GetBordersForSizer(int *borderTop
, int *borderOther
) const;
41 virtual WXDWORD
MSWGetStyle(long style
, WXDWORD
*exstyle
) const;
43 // returns true if the platform should explicitly apply a theme border
44 virtual bool CanApplyThemeBorder() const { return false; }
46 virtual wxPoint
GetClientAreaOrigin() const;
47 virtual void DoGetClientSize(int *width
, int *height
) const;
51 virtual wxSize
DoGetBestSize() const;
55 virtual WXLRESULT
MSWWindowProc(WXUINT nMsg
, WXWPARAM wParam
, WXLPARAM lParam
);
58 // return the region with all the windows inside this static box excluded
59 virtual WXHRGN
MSWGetRegionWithoutChildren();
61 // remove the parts which are painted by static box itself from the given
62 // region which is embedded in a rectangle (0, 0)-(w, h)
63 virtual void MSWGetRegionWithoutSelf(WXHRGN hrgn
, int w
, int h
);
65 // paint the given rectangle with our background brush/colour
66 virtual void PaintBackground(wxDC
& dc
, const struct tagRECT
& rc
);
67 // paint the foreground of the static box
68 virtual void PaintForeground(wxDC
& dc
, const struct tagRECT
& rc
);
70 void OnPaint(wxPaintEvent
& event
);
71 #endif // !__WXWINCE__
73 DECLARE_DYNAMIC_CLASS_NO_COPY(wxStaticBox
)
76 #endif // _WX_MSW_STATBOX_H_