]> git.saurik.com Git - wxWidgets.git/blame - include/wx/msw/statbr95.h
use GlobalPtrLock (modified to allow not initializing it if the ptr is NULL) in wxGet...
[wxWidgets.git] / include / wx / msw / statbr95.h
CommitLineData
2bda0e17
KB
1///////////////////////////////////////////////////////////////////////////////
2// Name: msw/statbr95.h
3// Purpose: native implementation of wxStatusBar
4// Author: Vadim Zeitlin
a79fa1ed 5// Modified by:
2bda0e17
KB
6// Created: 04.04.98
7// RCS-ID: $Id$
8// Copyright: (c) 1998 Vadim Zeitlin <zeitlin@dptmaths.ens-cachan.fr>
65571936 9// Licence: wxWindows licence
2bda0e17
KB
10///////////////////////////////////////////////////////////////////////////////
11
12#ifndef _STATBR95_H
13#define _STATBR95_H
14
ed791986 15#if wxUSE_NATIVE_STATUSBAR
2bda0e17 16
ed791986 17class WXDLLEXPORT wxStatusBar95 : public wxStatusBarBase
2bda0e17 18{
2bda0e17 19public:
ed791986
VZ
20 // ctors and such
21 wxStatusBar95();
22 wxStatusBar95(wxWindow *parent,
57f4f925 23 wxWindowID id = wxID_ANY,
ed791986 24 long style = wxST_SIZEGRIP,
53b6d7a2 25 const wxString& name = wxStatusBarNameStr)
ed791986
VZ
26 {
27 (void)Create(parent, id, style, name);
28 }
29
30 bool Create(wxWindow *parent,
57f4f925 31 wxWindowID id = wxID_ANY,
ed791986 32 long style = wxST_SIZEGRIP,
53b6d7a2 33 const wxString& name = wxStatusBarNameStr);
ed791986
VZ
34
35 virtual ~wxStatusBar95();
2bda0e17 36
ed791986
VZ
37 // a status line can have several (<256) fields numbered from 0
38 virtual void SetFieldsCount(int number = 1, const int *widths = NULL);
2bda0e17 39
ed791986
VZ
40 // each field of status line has it's own text
41 virtual void SetStatusText(const wxString& text, int number = 0);
42 virtual wxString GetStatusText(int number = 0) const;
2bda0e17 43
ed791986
VZ
44 // set status line fields' widths
45 virtual void SetStatusWidths(int n, const int widths_field[]);
2bda0e17 46
c2919ab3
VZ
47 // set status line fields' styles
48 virtual void SetStatusStyles(int n, const int styles[]);
49
ed791986
VZ
50 // sets the minimal vertical size of the status bar
51 virtual void SetMinHeight(int height);
2bda0e17 52
ed791986
VZ
53 // get the position and size of the field's internal bounding rectangle
54 virtual bool GetFieldRect(int i, wxRect& rect) const;
2bda0e17 55
ed791986
VZ
56 // get the border size
57 virtual int GetBorderX() const;
58 virtual int GetBorderY() const;
59
6f02a879
VZ
60 virtual WXLRESULT MSWWindowProc(WXUINT nMsg,
61 WXWPARAM wParam,
62 WXLPARAM lParam);
2bda0e17 63protected:
ed791986
VZ
64 void CopyFieldsWidth(const int widths[]);
65 void SetFieldsWidth();
66
c0ac3149
VZ
67 // override some base class virtuals
68 virtual wxSize DoGetBestSize() const;
69 virtual void DoMoveWindow(int x, int y, int width, int height);
cbc66a27 70
ed791986 71private:
57de2373 72 DECLARE_DYNAMIC_CLASS_NO_COPY(wxStatusBar95)
2bda0e17
KB
73};
74
47d67540 75#endif // wxUSE_NATIVE_STATUSBAR
2bda0e17 76
a79fa1ed 77#endif