]> git.saurik.com Git - wxWidgets.git/blame_incremental - include/wx/generic/statusbr.h
Remove wxDialog::OnSysColourChanged() documentation.
[wxWidgets.git] / include / wx / generic / statusbr.h
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: wx/generic/statusbr.h
3// Purpose: wxStatusBarGeneric class
4// Author: Julian Smart
5// Modified by: VZ at 05.02.00 to derive from wxStatusBarBase
6// Created: 01/02/97
7// RCS-ID: $Id$
8// Copyright: (c) Julian Smart
9// Licence: wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_GENERIC_STATUSBR_H_
13#define _WX_GENERIC_STATUSBR_H_
14
15#include "wx/defs.h"
16
17#if wxUSE_STATUSBAR
18
19#include "wx/pen.h"
20#include "wx/arrstr.h"
21
22
23// ----------------------------------------------------------------------------
24// wxStatusBarGeneric
25// ----------------------------------------------------------------------------
26
27class WXDLLIMPEXP_CORE wxStatusBarGeneric : public wxStatusBarBase
28{
29public:
30 wxStatusBarGeneric() { Init(); }
31 wxStatusBarGeneric(wxWindow *parent,
32 wxWindowID winid = wxID_ANY,
33 long style = wxSTB_DEFAULT_STYLE,
34 const wxString& name = wxStatusBarNameStr)
35 {
36 Init();
37
38 Create(parent, winid, style, name);
39 }
40
41 virtual ~wxStatusBarGeneric();
42
43 bool Create(wxWindow *parent, wxWindowID winid = wxID_ANY,
44 long style = wxSTB_DEFAULT_STYLE,
45 const wxString& name = wxStatusBarNameStr);
46
47 // implement base class methods
48 virtual void SetStatusWidths(int n, const int widths_field[]);
49 virtual bool GetFieldRect(int i, wxRect& rect) const;
50 virtual void SetMinHeight(int height);
51
52 virtual int GetBorderX() const { return m_borderX; }
53 virtual int GetBorderY() const { return m_borderY; }
54
55
56 // implementation only (not part of wxStatusBar public API):
57
58 int GetFieldFromPoint(const wxPoint& point) const;
59
60protected:
61 virtual void DoUpdateStatusText(int number);
62
63 // event handlers
64 void OnPaint(wxPaintEvent& event);
65 void OnSize(wxSizeEvent& event);
66
67 void OnLeftDown(wxMouseEvent& event);
68 void OnRightDown(wxMouseEvent& event);
69
70 // Responds to colour changes
71 void OnSysColourChanged(wxSysColourChangedEvent& event);
72
73protected:
74
75 virtual void DrawFieldText(wxDC& dc, const wxRect& rc, int i, int textHeight);
76 virtual void DrawField(wxDC& dc, int i, int textHeight);
77
78 void SetBorderX(int x);
79 void SetBorderY(int y);
80
81 virtual void InitColours();
82
83 // true if the status bar shows the size grip: for this it must have
84 // wxSTB_SIZEGRIP style and the window it is attached to must be resizable
85 // and not maximized
86 bool ShowsSizeGrip() const;
87
88 // returns the position and the size of the size grip
89 wxRect GetSizeGripRect() const;
90
91 // common part of all ctors
92 void Init();
93
94 // the last known height of the client rect
95 int m_lastClientHeight;
96
97 // the absolute widths of the status bar panes in pixels
98 wxArrayInt m_widthsAbs;
99
100 int m_borderX;
101 int m_borderY;
102
103 wxPen m_mediumShadowPen;
104 wxPen m_hilightPen;
105
106 virtual wxSize DoGetBestSize() const;
107
108private:
109 DECLARE_EVENT_TABLE()
110 DECLARE_DYNAMIC_CLASS_NO_COPY(wxStatusBarGeneric)
111};
112
113#endif // wxUSE_STATUSBAR
114
115#endif
116 // _WX_GENERIC_STATUSBR_H_