\helpref{wxEvtHandler}{wxevthandler}\\
\helpref{wxObject}{wxobject}
+\wxheading{Derived from}
+
+\helpref{wxWindow}{wxwindow}\\
+\helpref{wxEvtHandler}{wxevthandler}\\
+\helpref{wxObject}{wxobject}
+
+\wxheading{Include files}
+
+<wx/statusbr.h>
+
\wxheading{Window styles}
-There are no special styles for this window.
+\twocolwidtha{5cm}
+\begin{twocollist}\itemsep=0pt
+\twocolitem{\windowstyle{wxSB\_SIZEGRIP}}{On Windows 95, displays a gripper at right-hand side of
+the status bar.}
+\end{twocollist}
See also \helpref{window styles overview}{windowstyles}.
\wxheading{See also}
-\helpref{wxFrame}{wxframe}
+\helpref{wxFrame}{wxframe}, \helpref{Status bar sample}{samplestatbar}
\latexignore{\rtfignore{\wxheading{Members}}}
Default constructor.
-\func{}{wxStatusBar}{\param{wxWindow* }{parent}, \param{const wxWindowID }{id},\rtfsp
+\func{}{wxStatusBar}{\param{wxWindow* }{parent}, \param{wxWindowID }{id},\rtfsp
\param{const wxPoint\&}{ pos = wxDefaultPosition},\rtfsp
\param{const wxSize\&}{ size = wxDefaultSize}, \param{long}{ style = 0},\rtfsp
\param{const wxString\& }{name = ``statusBar"}}
\membersection{wxStatusBar::Create}\label{wxstatusbarcreate}
-\func{bool}{Create}{\param{wxWindow* }{parent}, \param{const wxWindowID }{id},\rtfsp
+\func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id},\rtfsp
\param{const wxPoint\&}{ pos = wxDefaultPosition},\rtfsp
\param{const wxSize\&}{ size = wxDefaultSize}, \param{long}{ style = 0},\rtfsp
\param{const wxString\& }{name = ``statusBar"}}
\membersection{wxStatusBar::GetFieldRect}\label{wxstatusbargetfieldrect}
-\constfunc{virtual bool}{GetFieldRect}{\param{const int}{ i}, \param{wxRect\&}{ rect}}
+\constfunc{virtual bool}{GetFieldRect}{\param{int}{ i}, \param{wxRect\&}{ rect}}
Returns the size and position of a fields internal bounding rectangle.
\helpref{wxRect}{wxrect}
+\perlnote{In wxPerl this function returns a {\tt Wx::Rect} if the field
+ index is valid, {\tt undef} otherwise.}
+
\membersection{wxStatusBar::GetFieldsCount}\label{wxstatusbargetfieldscount}
\constfunc{int}{GetFieldsCount}{\void}
\membersection{wxStatusBar::GetStatusText}\label{wxstatusbargetstatustext}
-\constfunc{virtual wxString}{GetStatusText}{\param{const int}{ ir = 0}}
+\constfunc{virtual wxString}{GetStatusText}{\param{int}{ ir = 0}}
Returns the string associated with a status bar field.
\helpref{wxStatusBar::SetStatusText}{wxstatusbarsetstatustext}
-\membersection{wxStatusBar::DrawField}\label{wxstatusbardrawfield}
-
-\func{virtual void}{DrawField}{\param{wxDC\& }{dc}, \param{const int }{i}}
-
-Draws a field, including shaded borders and text.
-
-\wxheading{Parameters}
-
-\docparam{dc}{The device context to draw onto.}
-
-\docparam{i}{The field to be drawn.}
-
-\wxheading{See also}
-
-\helpref{wxStatusBar::DrawFieldText}{wxstatusbardrawfieldtext}
-
-\membersection{wxStatusBar::DrawFieldText}\label{wxstatusbardrawfieldtext}
-
-\func{virtual void}{DrawFieldText}{\param{wxDC\& }{dc}, \param{const int }{i}}
-
-Draws a field's text.
-
-\wxheading{Parameters}
-
-\docparam{dc}{The device context to draw onto.}
-
-\docparam{i}{The field whose text is to be drawn.}
-
-\wxheading{See also}
-
-\helpref{wxStatusBar::DrawField}{wxstatusbardrawfield}
-
-\membersection{wxStatusBar::InitColours}\label{wxstatusbarinitcolours}
-
-\func{virtual void}{InitColours}{\void}
-
-Sets up the background colour and shading pens using suitable system colours (Windows) or tasteful shades
-of grey (other platforms).
-
-\wxheading{Remarks}
-
-This function is called when the window is created, and also
-from \helpref{wxStatusBar::OnSysColourChanged}{wxstatusbaronsyscolourchanged} on Windows.
-
-\wxheading{See also}
-
-\helpref{wxStatusBar::OnSysColourChanged}{wxstatusbaronsyscolourchanged}
-
-\membersection{wxStatusBar::OnSysColourChanged}\label{wxstatusbaronsyscolourchanged}
-
-\func{void}{OnSysColourChanged}{\param{wxSysColourChangedEvent\& }{event}}
-
-Handles a system colour change by calling \helpref{wxStatusBar::InitColours}{wxstatusbarinitcolours},
-and refreshes the window.
-
-\wxheading{Parameters}
-
-\docparam{event}{The colour change event.}
-
-\wxheading{See also}
-
-\helpref{wxStatusBar::InitColours}{wxstatusbarinitcolours}
+%% VZ: these functions are not in wxStatusBar API, these are just
+%% implementation details of wxStatusBarGeneric
+%%
+%% \membersection{wxStatusBar::DrawField}\label{wxstatusbardrawfield}
+%%
+%% \func{virtual void}{DrawField}{\param{wxDC\& }{dc}, \param{int }{i}}
+%%
+%% Draws a field, including shaded borders and text.
+%%
+%% \wxheading{Parameters}
+%%
+%% \docparam{dc}{The device context to draw onto.}
+%%
+%% \docparam{i}{The field to be drawn.}
+%%
+%% \wxheading{See also}
+%%
+%% \helpref{wxStatusBar::DrawFieldText}{wxstatusbardrawfieldtext}
+%%
+%% \membersection{wxStatusBar::DrawFieldText}\label{wxstatusbardrawfieldtext}
+%%
+%% \func{virtual void}{DrawFieldText}{\param{wxDC\& }{dc}, \param{int }{i}}
+%%
+%% Draws a field's text.
+%%
+%% \wxheading{Parameters}
+%%
+%% \docparam{dc}{The device context to draw onto.}
+%%
+%% \docparam{i}{The field whose text is to be drawn.}
+%%
+%% \wxheading{See also}
+%%
+%% \helpref{wxStatusBar::DrawField}{wxstatusbardrawfield}
+%%
+%% \membersection{wxStatusBar::InitColours}\label{wxstatusbarinitcolours}
+%%
+%% \func{virtual void}{InitColours}{\void}
+%%
+%% Sets up the background colour and shading pens using suitable system colours (Windows) or tasteful shades
+%% of grey (other platforms).
+%%
+%% \wxheading{Remarks}
+%%
+%% This function is called when the window is created, and also
+%% from \helpref{wxStatusBar::OnSysColourChanged}{wxstatusbaronsyscolourchanged} on Windows.
+%%
+%% \wxheading{See also}
+%%
+%% \helpref{wxStatusBar::OnSysColourChanged}{wxstatusbaronsyscolourchanged}
+%%
+%% \membersection{wxStatusBar::OnSysColourChanged}\label{wxstatusbaronsyscolourchanged}
+%%
+%% \func{void}{OnSysColourChanged}{\param{wxSysColourChangedEvent\& }{event}}
+%%
+%% Handles a system colour change by calling \helpref{wxStatusBar::InitColours}{wxstatusbarinitcolours},
+%% and refreshes the window.
+%%
+%% \wxheading{Parameters}
+%%
+%% \docparam{event}{The colour change event.}
+%%
+%% \wxheading{See also}
+%%
+%% \helpref{wxStatusBar::InitColours}{wxstatusbarinitcolours}
\membersection{wxStatusBar::SetFieldsCount}\label{wxstatusbarsetfieldscount}
-\func{virtual void}{SetFieldsCount}{\param{const int}{ number = 1}, \param{const int* }{widths = NULL}}
+\func{virtual void}{SetFieldsCount}{\param{int}{ number = 1}, \param{int* }{widths = NULL}}
Sets the number of fields, and optionally the field widths.
+\pythonnote{Only the first parameter is accepted. Use SetStatusWidths
+to set the widths of the fields.}
+
+\perlnote{In wxPerl this function acceps only the {\tt n} parameter.
+Use SetStatusWidths to set the field widths.}
+
\wxheading{Parameters}
\docparam{number}{The number of fields.}
in pixels. A value of -1 indicates that the field is variable width; at least one
field must be -1.}
+\membersection{wxStatusBar::SetMinHeight}\label{wxstatusbarsetminheight}
+
+\func{void}{SetMinHeight}{\param{int}{ height}}
+
+Sets the minimal possible hight for the status bar. The real height may be
+bigger than the height specified here depending on the size of the font used by
+the status bar.
+
\membersection{wxStatusBar::SetStatusText}\label{wxstatusbarsetstatustext}
-\func{virtual void}{SetStatusText}{\param{const wxString\& }{text}, \param{const int}{ i = 0}}
+\func{virtual void}{SetStatusText}{\param{const wxString\& }{text}, \param{int}{ i = 0}}
Sets the text for one field.
\membersection{wxStatusBar::SetStatusWidths}\label{wxstatusbarsetstatuswidths}
-\func{virtual void}{SetStatusWidths}{\param{const int}{ n}, \param{const int *}{widths}}
+\func{virtual void}{SetStatusWidths}{\param{int}{ n}, \param{int *}{widths}}
-Sets the widths of the fields in the status line.
+Sets the widths of the fields in the status line. There are two types of
+fields: fixed widths one and variable width fields. For the fixed width fields
+you should specify their (constant) width in pixels. For the variable width
+fields, specify a negative number which indicates how should the field expand:
+the space left for all variable width fields is divided between them according
+to the absolute value of this number. A variable width field with width of $-2$
+gets twice as much of it as a field with width $-1$ and so on.
+
+For example, to create one fixed width field of width $50$ in the right part of
+the status bar and two more fields which get $66$\% and $33$\% of the remaining
+space correspondingly, you should use an array containing $-2$, $-1$ and $100$.
\wxheading{Parameters}
-\docparam{n}{The number of fields in the status bar.}
+\docparam{n}{The number of fields in the status bar. Must be equal to the
+number passed to \helpref{SetFieldsCount}{wxstatusbarsetfieldscount} the last
+time it was called.}
-\docparam{widths}{Must contain an array of {\it n} integers, each of which is a status field width
-in pixels. A value of -1 indicates that the field is variable width; at least one
-field must be -1. You should delete this array after calling {\bf SetStatusWidths}.}
+\docparam{widths}{Contains an array of {\it n} integers, each of which is
+either an absolute status field width in pixels if positive or indicates a
+variable width field if negative}
\wxheading{Remarks}
The widths of the variable fields are calculated from the total width of all fields,
-minus the sum of widths of the non-variable fields, divided by the number of
+minus the sum of widths of the non-variable fields, divided by the number of
variable fields.
\wxheading{See also}
\helpref{wxStatusBar::SetFieldsCount}{wxstatusbarsetfieldscount}, \helpref{wxFrame::SetStatusWidths}{wxframesetstatuswidths}
+\pythonnote{Only a single parameter is required, a Python list of
+integers.}
+
+\perlnote{In wxPerl this method takes as parameters the field widths.}