# :stopdoc:
# This file is automatically generated by the WXRuby3 documentation
# generator. Do not alter this file.
# :startdoc:
module Wx
# A bitmap button is a control that contains a bitmap.
#
# Notice that since wxWidgets 2.9.1 bitmap display is supported by the base {Wx::Button} class itself and the only tiny advantage of using this class is that it allows specifying the bitmap in its constructor, unlike {Wx::Button}. Please see the base class documentation for more information about images support in {Wx::Button}.
# ### Styles
#
# This class supports the following styles:
#
# - {Wx::BU_LEFT}: Left-justifies the bitmap label.
#
# - {Wx::BU_TOP}: Aligns the bitmap label to the top of the button.
#
# - {Wx::BU_RIGHT}: Right-justifies the bitmap label.
#
# - {Wx::BU_BOTTOM}: Aligns the bitmap label to the bottom of the button.
#
# Note that the {Wx::BU_EXACTFIT} style supported by {Wx::Button} is not used by this class as bitmap buttons don't have any minimal standard size by default.
# ### Events emitted by this class
#
# The following event-handler methods redirect the events to member method or handler blocks for {Wx::CommandEvent} events.
# Event handler methods for events emitted by this class:
#
# - {Wx::EvtHandler#evt_button}(id, meth = nil, &block): Process a {Wx::EVT_BUTTON} event, when the button is clicked.
#
# Category: {Wx::Controls}
Appearance: WXMSW Appearance
# | WXGTK Appearance
# | WXOSX Appearance
# |
# @see Wx::Button
#
#
# @wxrb_require USE_BMPBUTTON
class BitmapButton < Button
# @overload initialize()
# Default ctor.
# @return [Wx::BitmapButton]
# @overload initialize(parent, id, bitmap, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0, validator=Wx::DEFAULT_VALIDATOR, name=Wx::BUTTON_NAME_STR)
# Constructor, creating and showing a button.
#
#
# @see Wx::BitmapButton#create
# @see Wx::Validator
# @param parent [Wx::Window] Parent window. Must not be NULL.
# @param id [Integer] Button identifier. The value {Wx::StandardID::ID_ANY} indicates a default value.
# @param bitmap [Wx::BitmapBundle,Wx::Bitmap,Wx::Icon,Wx::Image] Bitmap to be displayed.
# @param pos [Array(Integer, Integer), Wx::Point] Button position. If {Wx::DEFAULT_POSITION} is specified then a default position is chosen.
# @param size [Array(Integer, Integer), Wx::Size] Button size. If {Wx::DEFAULT_SIZE} is specified then the button is sized appropriately for the bitmap.
# @param style [Integer] Window style. See {Wx::BitmapButton}.
# @param validator [Wx::Validator] Window validator.
# @param name [String] Window name.
# @return [Wx::BitmapButton]
def initialize(*args) end
# Button creation function for two-step creation.
#
# For more details, see {Wx::BitmapButton#initialize}.
# @param parent [Wx::Window]
# @param id [Integer]
# @param bitmap [Wx::BitmapBundle,Wx::Bitmap,Wx::Icon,Wx::Image]
# @param pos [Array(Integer, Integer), Wx::Point]
# @param size [Array(Integer, Integer), Wx::Size]
# @param style [Integer]
# @param validator [Wx::Validator]
# @param name [String]
# @return [Boolean]
def create(parent, id, bitmap, pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0, validator=Wx::DEFAULT_VALIDATOR, name=Wx::BUTTON_NAME_STR) end
# Creation function for two-step creation of "Close" button.
#
# It is usually not necessary to use this function directly as {Wx::BitmapButton.new_close_button} is more convenient, but, if required, it can be called on a default-constructed {Wx::BitmapButton} object to achieve the same effect.
# @param parent [Wx::Window] The button parent window, must be non-NULL.
# @param winid [Integer] The identifier for the new button.
# @param name [String] The name for the new button.
# @return [Boolean]
def create_close_button(parent, winid, name=(())) end
# Helper function creating a standard-looking "Close" button.
#
# To get the best results, platform-specific code may need to be used to create a small, title bar-like "Close" button. This function is provided to avoid the need to test for the current platform and creates the button with as native look as possible.
#
# The new button.
# @param parent [Wx::Window] The button parent window, must be non-NULL.
# @param winid [Integer] The identifier for the new button.
# @param name [String] The name for the new button (available since wxWidgets 3.1.5)
# @return [Wx::BitmapButton]
def self.new_close_button(parent, winid, name=(())) end
end # BitmapButton
end