]> git.saurik.com Git - wxWidgets.git/blob - include/wx/palmos/statusbr.h
better file data support
[wxWidgets.git] / include / wx / palmos / statusbr.h
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
17 class WXDLLEXPORT wxStatusBarPalm : public wxStatusBarBase
18 {
19 public:
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
63 protected:
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
78 private:
79 DECLARE_DYNAMIC_CLASS_NO_COPY(wxStatusBarPalm)
80 };
81
82 #endif // wxUSE_NATIVE_STATUSBAR
83
84 #endif