Inviwo
0.9.10.1
Inviwo documentation
|
glui::Element representing a generic button More...
#include <abstractbutton.h>
Public Member Functions | |
AbstractButton (const std::string &label, Processor &processor, Renderer &uiRenderer, const ivec2 &extent=ivec2(100, 24)) | |
Public Member Functions inherited from inviwo::glui::Element | |
virtual std::string | getClassIdentifier () const =0 |
Element (const std::string &label, Processor &processor, Renderer &uiRenderer, UIOrientation orientation=UIOrientation::Horizontal) | |
void | setVisible (bool visible=true) |
bool | isVisible () const |
void | setEnabled (bool enable=true) |
bool | isEnabled () const |
void | setLabel (const std::string &str) |
const std::string & | getLabel () const |
void | setFontSize (int size) |
int | getFontSize () const |
void | setLabelBold (bool bold) |
bool | isLabelBold () const |
void | setLabelVisible (bool visible=true) |
bool | isLabelVisible () const |
void | setScalingFactor (double factor) |
double | getScalingFactor () const |
void | setOrientation (UIOrientation orientation) |
UIOrientation | getOrientation () const |
bool | isDirty () const |
void | setWidgetExtent (const ivec2 &extent) |
sets the extent of the widget More... | |
const ivec2 & | getWidgetExtent () const |
void | setWidgetExtentScaled (const ivec2 &extent) |
sets the extent of the widget More... | |
ivec2 | getWidgetExtentScaled () const |
returns the true widget extent including scaling More... | |
const ivec2 & | getExtent () |
return extent of the element, including both widget and label, and considering scaling More... | |
void | render (const ivec2 &origin, const size2_t &canvasDim) |
render the widget and its label at the given position More... | |
void | setHoverState (bool enable) |
bool | isHovered () const |
void | setPushedState (bool pushed) |
bool | isPushed () const |
void | setChecked (bool checked) |
bool | isChecked () const |
void | setAction (const std::function< void()> &action) |
sets the callback action when the user releases the mouse button | |
void | setPickingEventAction (std::function< void(PickingEvent *e)> pickingAction) |
Protected Member Functions | |
virtual void | renderWidget (const ivec2 &origin, const size2_t &canvasDim) override=0 |
virtual ivec2 | computeLabelPos (int descent) const override |
virtual UIState | uiState () const override |
virtual vec2 | marginScale () const override |
Protected Member Functions inherited from inviwo::glui::Element | |
void | triggerAction () |
updates the UI state and triggers the callback action set by setAction(). This function is called when the user releases the mouse button. More... | |
void | setMouseMoveAction (const std::function< bool(const dvec2 &)> &action) |
set callback function for handling mouse movements based on a delta position. This callback gets called on mouse move events. More... | |
bool | moveAction (const dvec2 &delta) |
gets called on mouse move events More... | |
void | updateExtent () |
void | updateLabelPos () |
void | updateLabel () |
virtual void | updateState () |
is called before the action is triggered to update the internal UI state More... | |
virtual void | pushStateChanged () |
It is called by setPushState after the internal push state has been updated. | |
void | renderLabel (const ivec2 &origin, const size2_t &canvasDim) |
void | handlePickingEvent (PickingEvent *e) |
TextRenderer & | getCurrentTextRenderer () const |
set up text renderer for rendering the label using current settings, i.e. font size, widget scaling, and whether it should be rendered bold More... | |
Protected Attributes | |
Texture2DArray * | uiTextures_ |
std::array< int, 9 > | uiTextureMap_ |
Protected Attributes inherited from inviwo::glui::Element | |
std::function< void()> | action_ |
std::function< bool(const dvec2 &)> | moveAction_ |
is called by mouseMoved() | |
std::function< void(PickingEvent *e)> | pickingAction_ |
bool | hovered_ |
bool | pushed_ |
bool | checked_ |
bool | visible_ |
bool | enabled_ |
bool | boldLabel_ |
bool | labelVisible_ |
int | labelFontSize_ |
UIOrientation | orientation_ |
ivec2 | extent_ = ivec2(0) |
ivec2 | widgetPos_ = ivec2(0) |
ivec2 | widgetExtent_ = ivec2(0) |
ivec2 | labelPos_ = ivec2(0) |
ivec2 | labelExtent_ = ivec2(0) |
double | scalingFactor_ |
std::string | labelStr_ |
bool | labelDirty_ |
std::shared_ptr< Texture2D > | labelTexture_ |
Processor * | processor_ |
Renderer * | uiRenderer_ |
PickingMapper | pickingMapper_ |
size_t | currentPickingID_ |
Additional Inherited Members | |
Public Types inherited from inviwo::glui::Element | |
enum | UIState { Normal, Pressed, Checked } |
Static Protected Member Functions inherited from inviwo::glui::Element | |
static vec4 | adjustColor (const vec4 &color) |
glui::Element representing a generic button