Better fix
[wxWidgets.git] / include / wx / palmos / statusbr.h
0 / 84 (  0%)
CommitLineData
1///////////////////////////////////////////////////////////////////////////////
2// Name: wx/palmos/statusbr.h
3// Purpose: Palm OS implementation of wxStatusBar
4// Author: William Osborne - minimal working wxPalmOS port
5// Modified by:
6// Created: 10/13/04
7// RCS-ID: $Id$
8// Copyright: (c) William Osborne
9// Licence: wxWindows licence
10///////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_STATUSBR_H_
13#define _WX_STATUSBR_H_
14
15#if wxUSE_NATIVE_STATUSBAR
16
17class WXDLLEXPORT wxStatusBarPalm : public wxStatusBarBase
18{
19public:
20 // ctors and such
21 wxStatusBarPalm();
22 wxStatusBarPalm(wxWindow *parent,
23 wxWindowID id = wxID_ANY,
24 long style = wxST_SIZEGRIP,
25 const wxString& name = wxEmptyString)
26 {
27 (void)Create(parent, id, style, name);
28 }
29
30 bool Create(wxWindow *parent,
31 wxWindowID id = wxID_ANY,
32 long style = wxST_SIZEGRIP,
33 const wxString& name = wxEmptyString);
34
35 virtual ~wxStatusBarPalm();
36
37 // for native status bar use native check for visibility
38 virtual bool IsShown() const;
39 virtual bool Show( bool show = true );
40
41 // a status line can have several (<256) fields numbered from 0
42 virtual void SetFieldsCount(int number = 1, const int *widths = NULL);
43
44 // each field of status line has it's own text
45 virtual void SetStatusText(const wxString& text, int number = 0);
46 virtual wxString GetStatusText(int number = 0) const;
47
48 // set status line fields' widths
49 virtual void SetStatusWidths(int n, const int widths_field[]);
50
51 // sets the minimal vertical size of the status bar
52 virtual void SetMinHeight(int height);
53
54 // get the position and size of the field's internal bounding rectangle
55 virtual bool GetFieldRect(int i, wxRect& rect) const;
56
57 // get the border size
58 virtual int GetBorderX() const;
59 virtual int GetBorderY() const;
60
61 void DrawStatusBar();
62
63protected:
64 void CopyFieldsWidth(const int widths[]);
65 void SetFieldsWidth();
66
67 // store the text in the status bar
68 wxListString **StatusTextBuffer;
69 void SetStatusBufferText(const wxString& text, int number);
70 wxString GetStatusBufferText(int number);
71 wxListString *GetOrCreateStatusBuffer(int i);
72 wxListString *GetStatusBufferStack(int i) const;
73 void DeleteStatusBuffer();
74
75 // override base class virtual
76 void DoMoveWindow(int x, int y, int width, int height);
77
78private:
79 DECLARE_DYNAMIC_CLASS_NO_COPY(wxStatusBarPalm)
80};
81
82#endif // wxUSE_NATIVE_STATUSBAR
83
84#endif