#include <guiButtonImage.h>
Public Member Functions | |
GUIButtonImage (gui::IGUIEnvironment *environment, gui::IGUIElement *parent, s32 id, core::rect< s32 > rectangle, ISimpleTextureSource *tsrc, bool noclip=false) | |
constructor More... | |
void | setForegroundImage (video::ITexture *image=nullptr) |
virtual void | setFromStyle (const StyleSpec &style) override |
Set element properties from a StyleSpec. More... | |
virtual void | setScaleImage (bool scaleImage=true) override |
Sets if the button should scale the button images to fit. More... | |
Public Member Functions inherited from GUIButton | |
GUIButton (gui::IGUIEnvironment *environment, gui::IGUIElement *parent, s32 id, core::rect< s32 > rectangle, ISimpleTextureSource *tsrc, bool noclip=false) | |
constructor More... | |
virtual | ~GUIButton () |
destructor More... | |
virtual bool | OnEvent (const SEvent &event) override |
called if an event happened. More... | |
virtual void | draw () override |
draws the element and its children More... | |
virtual void | setOverrideFont (gui::IGUIFont *font=0) override |
sets another skin independent font. if this is set to zero, the button uses the font of the skin. More... | |
virtual gui::IGUIFont * | getOverrideFont () const override |
Gets the override font (if any) More... | |
virtual gui::IGUIFont * | getActiveFont () const override |
Get the font which is used right now for drawing. More... | |
virtual void | setOverrideColor (video::SColor color) |
Sets another color for the button text. More... | |
virtual video::SColor | getOverrideColor (void) const |
Gets the override color. More... | |
virtual void | enableOverrideColor (bool enable) |
Sets if the button text should use the override color or the color in the gui skin. More... | |
virtual bool | isOverrideColorEnabled (void) const |
Checks if an override color is enabled. More... | |
virtual void | setImage (gui::EGUI_BUTTON_IMAGE_STATE state, video::ITexture *image=nullptr, const core::rect< s32 > &sourceRect=core::rect< s32 >(0, 0, 0, 0)) |
Sets an image which should be displayed on the button when it is in the given state. More... | |
virtual void | setImage (video::ITexture *image=nullptr) override |
Sets an image which should be displayed on the button when it is in normal state. More... | |
virtual void | setImage (video::ITexture *image, const core::rect< s32 > &pos) override |
Sets an image which should be displayed on the button when it is in normal state. More... | |
virtual void | setPressedImage (video::ITexture *image=nullptr) override |
Sets an image which should be displayed on the button when it is in pressed state. More... | |
virtual void | setPressedImage (video::ITexture *image, const core::rect< s32 > &pos) override |
Sets an image which should be displayed on the button when it is in pressed state. More... | |
virtual void | setText (const wchar_t *text) override |
Sets the text displayed by the button. More... | |
virtual void | setSpriteBank (gui::IGUISpriteBank *bank=0) override |
Sets the sprite bank used by the button. More... | |
virtual void | setSprite (gui::EGUI_BUTTON_STATE state, s32 index, video::SColor color=video::SColor(255, 255, 255, 255), bool loop=false, bool scale=false) |
Sets the animated sprite for a specific button state. More... | |
virtual s32 | getSpriteIndex (gui::EGUI_BUTTON_STATE state) const |
Get the sprite-index for the given state or -1 when no sprite is set. More... | |
virtual video::SColor | getSpriteColor (gui::EGUI_BUTTON_STATE state) const |
Get the sprite color for the given state. Color is only used when a sprite is set. More... | |
virtual bool | getSpriteLoop (gui::EGUI_BUTTON_STATE state) const |
Returns if the sprite in the given state does loop. More... | |
virtual bool | getSpriteScale (gui::EGUI_BUTTON_STATE state) const |
Returns if the sprite in the given state is scaled. More... | |
virtual void | setIsPushButton (bool isPushButton=true) override |
Sets if the button should behave like a push button. More... | |
virtual bool | isPushButton () const override |
Checks whether the button is a push button. More... | |
virtual void | setPressed (bool pressed=true) override |
Sets the pressed state of the button if this is a pushbutton. More... | |
virtual bool | isPressed () const override |
Returns if the button is currently pressed. More... | |
bool | isHovered () const |
Returns if this element (or one of its direct children) is hovered. More... | |
virtual void | setDrawBorder (bool border=true) override |
Sets if the button should use the skin to draw its border. More... | |
virtual bool | isDrawingBorder () const override |
Checks if the button face and border are being drawn. More... | |
virtual void | setUseAlphaChannel (bool useAlphaChannel=true) override |
Sets if the alpha channel should be used for drawing images on the button (default is false) More... | |
virtual bool | isAlphaChannelUsed () const override |
Checks if the alpha channel should be used for drawing images on the button. More... | |
virtual bool | isScalingImage () const override |
Checks whether the button scales the used images. More... | |
virtual bool | getClickShiftState () const |
Get if the shift key was pressed in last EGET_BUTTON_CLICKED event. More... | |
virtual bool | getClickControlState () const |
Get if the control key was pressed in last EGET_BUTTON_CLICKED event. More... | |
virtual void | serializeAttributes (io::IAttributes *out, io::SAttributeReadWriteOptions *options) const override |
Writes attributes of the element. More... | |
virtual void | deserializeAttributes (io::IAttributes *in, io::SAttributeReadWriteOptions *options) override |
Reads attributes of the element. More... | |
void | setColor (video::SColor color) |
void | setFromState () |
Set element properties from a StyleSpec corresponding to the button state. More... | |
void | setStyles (const std::array< StyleSpec, StyleSpec::NUM_STATES > &styles) |
Set the styles used for each state. More... | |
Static Public Member Functions | |
static GUIButtonImage * | addButton (gui::IGUIEnvironment *environment, const core::rect< s32 > &rectangle, ISimpleTextureSource *tsrc, IGUIElement *parent, s32 id, const wchar_t *text, const wchar_t *tooltiptext=L"") |
Do not drop returned handle. More... | |
Static Public Member Functions inherited from GUIButton | |
static GUIButton * | addButton (gui::IGUIEnvironment *environment, const core::rect< s32 > &rectangle, ISimpleTextureSource *tsrc, IGUIElement *parent, s32 id, const wchar_t *text, const wchar_t *tooltiptext=L"") |
Do not drop returned handle. More... | |
Private Attributes | |
video::ITexture * | m_foreground_image = nullptr |
gui::IGUIImage * | m_image |
Additional Inherited Members | |
Protected Member Functions inherited from GUIButton | |
void | drawSprite (gui::EGUI_BUTTON_STATE state, u32 startTime, const core::position2di ¢er) |
gui::EGUI_BUTTON_IMAGE_STATE | getImageState (bool pressed) const |
ISimpleTextureSource * | getTextureSource () |
gui::EGUI_BUTTON_IMAGE_STATE | getImageState (bool pressed, const ButtonImage *images) const |
GUIButtonImage::GUIButtonImage | ( | gui::IGUIEnvironment * | environment, |
gui::IGUIElement * | parent, | ||
s32 | id, | ||
core::rect< s32 > | rectangle, | ||
ISimpleTextureSource * | tsrc, | ||
bool | noclip = false |
||
) |
constructor
References GUIButton::isScalingImage(), and m_image.
Referenced by addButton().
|
static |
Do not drop returned handle.
References GUIButtonImage(), and GUIButton::setText().
Referenced by GUIFormSpecMenu::parseImageButton().
void GUIButtonImage::setForegroundImage | ( | video::ITexture * | image = nullptr | ) |
References m_foreground_image, and m_image.
Referenced by setFromStyle().
|
overridevirtual |
Set element properties from a StyleSpec.
Reimplemented from GUIButton.
References StyleSpec::FGIMG, StyleSpec::getTexture(), GUIButton::getTextureSource(), guiScalingImageButton(), StyleSpec::isNotDefault(), setForegroundImage(), GUIButton::setFromStyle(), and setScaleImage().
|
overridevirtual |
Sets if the button should scale the button images to fit.
Sets if the images should be scaled to fit the button.
Reimplemented from GUIButton.
References m_image, and GUIButton::setScaleImage().
Referenced by GUIFormSpecMenu::parseImageButton(), and setFromStyle().
|
private |
Referenced by setForegroundImage().
|
private |
Referenced by GUIButtonImage(), setForegroundImage(), and setScaleImage().