1///////////////////////////////////////////////////////////////////////////// 2// Name: wx/msw/statbox.h 3// Purpose: wxStaticBox class 4// Author: Julian Smart 5// Modified by: 6// Created: 01/02/97 7// RCS-ID: $Id: statbox.h 37393 2006-02-08 21:47:09Z VZ $ 8// Copyright: (c) Julian Smart 9// Licence: wxWindows licence 10///////////////////////////////////////////////////////////////////////////// 11 12#ifndef _WX_MSW_STATBOX_H_ 13#define _WX_MSW_STATBOX_H_ 14 15// Group box 16class WXDLLEXPORT wxStaticBox : public wxStaticBoxBase 17{ 18public: 19 wxStaticBox() { } 20 21 wxStaticBox(wxWindow *parent, wxWindowID id, 22 const wxString& label, 23 const wxPoint& pos = wxDefaultPosition, 24 const wxSize& size = wxDefaultSize, 25 long style = 0, 26 const wxString& name = wxStaticBoxNameStr) 27 { 28 Create(parent, id, label, pos, size, style, name); 29 } 30 31 bool Create(wxWindow *parent, wxWindowID id, 32 const wxString& label, 33 const wxPoint& pos = wxDefaultPosition, 34 const wxSize& size = wxDefaultSize, 35 long style = 0, 36 const wxString& name = wxStaticBoxNameStr); 37 38 /// Implementation only 39 virtual void GetBordersForSizer(int *borderTop, int *borderOther) const; 40 41 virtual WXDWORD MSWGetStyle(long style, WXDWORD *exstyle) const; 42 43protected: 44 virtual wxSize DoGetBestSize() const; 45 46 // choose the default border for this window 47 virtual wxBorder GetDefaultBorder() const; 48 49#ifndef __WXWINCE__ 50public: 51 virtual WXLRESULT MSWWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam); 52 53protected: 54 // return the region with all the windows inside this static box excluded 55 virtual WXHRGN MSWGetRegionWithoutChildren(); 56 57 // remove the parts which are painted by static box itself from the given 58 // region which is embedded in a rectangle (0, 0)-(w, h) 59 virtual void MSWGetRegionWithoutSelf(WXHRGN hrgn, int w, int h); 60 61 // paint the given rectangle with our background brush/colour 62 virtual void PaintBackground(wxDC& dc, const struct tagRECT& rc); 63 // paint the foreground of the static box 64 virtual void PaintForeground(wxDC& dc, const struct tagRECT& rc); 65 66 void OnPaint(wxPaintEvent& event); 67#endif // !__WXWINCE__ 68 69 DECLARE_DYNAMIC_CLASS_NO_COPY(wxStaticBox) 70}; 71 72#endif // _WX_MSW_STATBOX_H_ 73 74