# :stopdoc: # This file is automatically generated by the WXRuby3 documentation # generator. Do not alter this file. # :startdoc: module Wx # STB_SIZEGRIP = 16 # STB_SHOW_TIPS = 32 # STB_ELLIPSIZE_START = 64 # STB_ELLIPSIZE_MIDDLE = 128 # STB_ELLIPSIZE_END = 256 # STB_DEFAULT_STYLE = 65840 # SB_NORMAL = 0 # SB_FLAT = 1 # SB_RAISED = 2 # SB_SUNKEN = 3 # A status bar is a narrow window that can be placed along the bottom of a frame to give small amounts of status information. # # It can contain one or more fields, one or more of which can be variable length according to the size of the window. # {Wx::StatusBar} also maintains an independent stack of status texts for each field (see {Wx::StatusBar#push_status_text} and {Wx::StatusBar#pop_status_text}). # Note that in {Wx::StatusBar} context, the terms pane and field are synonyms. # ### Styles # # This class supports the following styles: # # - {Wx::STB_SIZEGRIP}: Displays a gripper at the right-hand side of the status bar which can be used to resize the parent window. # # - {Wx::STB_SHOW_TIPS}: Displays tooltips for those panes whose status text has been ellipsized/truncated because the status text doesn't fit the pane width. Note that this style has effect only on WXGTK (with GTK+ >= 2.12) currently. # # - {Wx::STB_ELLIPSIZE_START}: Replace the beginning of the status texts with an ellipsis when the status text widths exceed the status bar pane's widths (uses {Wx::Control.ellipsize}). # # - {Wx::STB_ELLIPSIZE_MIDDLE}: Replace the middle of the status texts with an ellipsis when the status text widths exceed the status bar pane's widths (uses {Wx::Control.ellipsize}). # # - {Wx::STB_ELLIPSIZE_END}: Replace the end of the status texts with an ellipsis when the status text widths exceed the status bar pane's widths (uses {Wx::Control.ellipsize}). # # - {Wx::STB_DEFAULT_STYLE}: The default style: includes wxSTB_SIZEGRIP|wxSTB_SHOW_TIPS|wxSTB_ELLIPSIZE_END|wxFULL_REPAINT_ON_RESIZE. # #
# Remark: #

It is possible to create controls and other windows on the status bar. Position these windows from an OnSize() event handler. #

#
# #
# Remark: #

Notice that only the first 127 characters of a string will be shown in status bar fields under Windows if a proper manifest indicating that the program uses version 6 of common controls library is not used. This is a limitation of the native control on these platforms. #

#
# # Category: Miscellaneous Windows # @see Wx::StatusBarPane # @see Wx::Frame # @see Status Bar Sample # # # @wxrb_require USE_STATUSBAR class StatusBar < Control # @overload initialize() # Default ctor. # @return [Wx::StatusBar] # @overload initialize(parent, id=Wx::StandardID::ID_ANY, style=Wx::STB_DEFAULT_STYLE, name=Wx::STATUS_BAR_NAME_STR) # Constructor, creating the window. # # # @see Wx::StatusBar#create # @param parent [Wx::Window] The window parent, usually a frame. # @param id [Integer] The window identifier. It may take a value of -1 to indicate a default value. # @param style [Integer] The window style. See {Wx::StatusBar}. # @param name [String] The name of the window. This parameter is used to associate a name with the item, allowing the application user to set Motif resource values for individual windows. # @return [Wx::StatusBar] def initialize(*args) end # Creates the window, for two-step construction. # # See {Wx::StatusBar#initialize} for details. # @param parent [Wx::Window] # @param id [Integer] # @param style [Integer] # @param name [String] # @return [Boolean] def create(parent, id=Wx::StandardID::ID_ANY, style=Wx::STB_DEFAULT_STYLE, name=Wx::STATUS_BAR_NAME_STR) end # Returns the size and position of a field's internal bounding rectangle. # # true if the field index is valid, false otherwise. # @see Wx::Rect # @param i [Integer] The field in question. # @return [Array(Boolean,Wx::Rect)] def get_field_rect(i) end alias_method :field_rect, :get_field_rect # Returns the number of fields in the status bar. # @return [Integer] def get_fields_count; end alias_method :fields_count, :get_fields_count # Returns the {Wx::StatusBarPane} representing the n-th field. # @param n [Integer] # @return [Wx::StatusBarPane] def get_field(n) end alias_method :field, :get_field # Returns the horizontal and vertical borders used when rendering the field text inside the field area. # # Note that the rect returned by {Wx::StatusBar#get_field_rect} already accounts for the presence of horizontal and vertical border returned by this function. # @return [Wx::Size] def get_borders; end alias_method :borders, :get_borders # Returns the string associated with a status bar field. # # The status field string if the field is valid, otherwise the empty string. # @see Wx::StatusBar#set_status_text # @param i [Integer] The number of the status field to retrieve, starting from zero. # @return [String] def get_status_text(i=0) end alias_method :status_text, :get_status_text # Returns the width of the n-th field. # # See {Wx::StatusBarPane#get_width} for more info. # @param n [Integer] # @return [Integer] def get_status_width(n) end alias_method :status_width, :get_status_width # Returns the style of the n-th field. # # See {Wx::StatusBarPane#get_style} for more info. # @param n [Integer] # @return [Integer] def get_status_style(n) end alias_method :status_style, :get_status_style # Restores the text to the value it had before the last call to {Wx::StatusBar#push_status_text}. # # Notice that if {Wx::StatusBar#set_status_text} had been called in the meanwhile, {Wx::StatusBar#pop_status_text} will not change the text, i.e. it does not override explicit changes to status text but only restores the saved text if it hadn't been changed since. # @see Wx::StatusBar#push_status_text # @param field [Integer] # @return [void] def pop_status_text(field=0) end # Saves the current field text in a per-field stack, and sets the field text to the string passed as argument. # # # @see Wx::StatusBar#pop_status_text # @param string [String] # @param field [Integer] # @return [void] def push_status_text(string, field=0) end # Sets the number of fields, and optionally the field widths. # @param number [Integer] The number of fields. If this is greater than the previous number, then new fields with empty strings will be added to the status bar. # @param widths [Array] An array of n integers interpreted in the same way as in {Wx::StatusBar#set_status_widths}. # @return [void] def set_fields_count(number=1, widths=nil) end alias_method :fields_count=, :set_fields_count # Sets the minimal possible height 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. # @param height [Integer] # @return [void] def set_min_height(height) end alias_method :min_height=, :set_min_height # Sets the styles of the fields in the status line which can make fields appear flat or raised instead of the standard sunken 3D border. # @param styles [Array] Contains an array of n integers with the styles for each field. There are four possible styles: # # - {Wx::SB_NORMAL} (default): The field appears with the default native border. # - {Wx::SB_FLAT}: No border is painted around the field so that it appears flat. # - {Wx::SB_RAISED}: A raised 3D border is painted around the field. # - {Wx::SB_SUNKEN}: A sunken 3D border is painted around the field (this style is new since wxWidgets 2.9.5). # @return [void] def set_status_styles(styles) end # Sets the status text for the i-th field. # # The given text will replace the current text. The display of the status bar is updated immediately, so there is no need to call {Wx::Window#update} after calling this function. # Note that if {Wx::StatusBar#push_status_text} had been called before the new text will also replace the last saved value to make sure that the next call to {Wx::StatusBar#pop_status_text} doesn't restore the old value, which was overwritten by the call to this function. # @see Wx::StatusBar#get_status_text # @see Wx::Frame#set_status_text # @param text [String] The text to be set. Use an empty string ("") to clear the field. # @param i [Integer] The field to set, starting from zero. # @return [void] def set_status_text(text, i=0) end alias_method :status_text=, :set_status_text # Sets the widths of the fields in the status line. # # There are two types of fields: fixed widths 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 the field should 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 100 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. # #
# Remark: #

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 variable fields. #

#
# @see Wx::StatusBar#set_fields_count # @see Wx::Frame#set_status_widths # @param widths_field [Array] Contains an array of n integers, each of which is either an absolute status field width in pixels if positive or indicates a variable width field if negative. The special value NULL means that all fields should get the same width. # @return [void] def set_status_widths(widths_field) end end # StatusBar # A status bar pane data container used by {Wx::StatusBar}. # # Category: Data Structures # @see Wx::StatusBar # # # # @note This class is untracked and should not be derived from nor instances extended! # @wxrb_require USE_STATUSBAR class StatusBarPane < ::Object # Constructs the pane with the given style and width. # @param style [Integer] # @param width [Integer] # @return [Wx::StatusBarPane] def initialize(style=Wx::SB_NORMAL, width=0) end # Returns the pane width; it maybe negative, indicating a variable-width field. # @return [Integer] def get_width; end alias_method :width, :get_width # Returns the pane style. # @return [Integer] def get_style; end alias_method :style, :get_style # Returns the text currently shown in this pane. # @return [String] def get_text; end alias_method :text, :get_text end # StatusBarPane end