ofxOui - UI Components for OpenFrameworks

Classes | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
ofxOui::Button Class Reference

Button component (allows both button and toggle modes) More...

#include <ofxOuiButton.hpp>

Inheritance diagram for ofxOui::Button:
[legend]
Collaboration diagram for ofxOui::Button:
[legend]

Classes

class  ClickEvent
 Event arguments for button clicks. More...
 

Public Member Functions

 Button (int x_=0, int y_=0, int width_=0, int height_=0)
 Constructor. More...
 
virtual ~Button ()
 Destructor. More...
 
template<typename T , typename args , class ListenerClass >
void onClick (T *owner, void(ListenerClass::*listenerMethod)(args))
 Set callback function for click events. More...
 
virtual void update ()
 OF-like update function. More...
 
virtual void draw ()
 OF-like draw function. More...
 
virtual bool inside (float x_, float y_) const
 checks if a point is inside the component (depending on the shape) More...
 
Type type () const
 get the type of the component More...
 

Public Attributes

bool toggle
 specifies if the button works as button or toggle More...
 
Shape shape = ofxOui::Shape::Rectangle
 shape of the component More...
 
Style style = ofxOui::Style::Default
 style of the component More...
 
TextBox font
 textbox for the main label of the component More...
 
Icon icon
 icon box of the component More...
 
float x
 x position (left) More...
 
float y
 y position(top) More...
 
float width
 component width More...
 
float height
 component height More...
 
string labelOn = ""
 Label of the component (active) More...
 
string labelOff = ""
 Label of the component (not active) More...
 
bool disabled = false
 specifies if the component should be in "disabled" mode (no interaction) More...
 
bool active = false
 specifies if the component is active More...
 

Protected Member Functions

virtual void mousePressed (ofMouseEventArgs &e)
 
virtual void drawBackground ()
 
virtual void drawFrame ()
 
virtual void drawLabel ()
 
virtual void drawIcon ()
 

Protected Attributes

int num_frames_on_
 
std::function< void(Button::ClickEvent &)> click_event_callback_
 
Type type_ = ofxOui::Type::Label
 
bool hover_ = false
 
ofColor current_background_color_
 
ofColor current_frame_color_
 

Static Protected Attributes

static Componentblocking_component = nullptr
 

Detailed Description

Button component (allows both button and toggle modes)

Constructor & Destructor Documentation

§ Button()

ofxOui::Button::Button ( int  x_ = 0,
int  y_ = 0,
int  width_ = 0,
int  height_ = 0 
)

Constructor.

Parameters
x_x position (left)
y_y position (top)
width_component width
height_component height

§ ~Button()

ofxOui::Button::~Button ( )
virtual

Destructor.

Member Function Documentation

§ draw()

void ofxOui::Component::draw ( )
virtualinherited

OF-like draw function.

this method is subdivided in protected sub-methods that can be overloaded in inherited components

Reimplemented in ofxOui::Matrix, and ofxOui::DropDown.

§ drawBackground()

void ofxOui::Component::drawBackground ( )
protectedvirtualinherited

§ drawFrame()

void ofxOui::Component::drawFrame ( )
protectedvirtualinherited

§ drawIcon()

void ofxOui::Component::drawIcon ( )
protectedvirtualinherited

Reimplemented in ofxOui::CheckBox.

§ drawLabel()

void ofxOui::Component::drawLabel ( )
protectedvirtualinherited

§ inside()

bool ofxOui::Component::inside ( float  x_,
float  y_ 
) const
virtualinherited

checks if a point is inside the component (depending on the shape)

Returns
true if the point of coordinates (x, y) is inside the component

§ mousePressed()

void ofxOui::Button::mousePressed ( ofMouseEventArgs &  e)
protectedvirtual

Reimplemented in ofxOui::DraggableButton.

§ onClick()

template<typename T , typename args , class ListenerClass >
void ofxOui::Button::onClick ( T *  owner,
void(ListenerClass::*)(args)  listenerMethod 
)
inline

Set callback function for click events.

Parameters
ownerpointer to the owner object
listenerMethodmethod to be called on eaech event
Template Parameters
Ttype of the owner object
argsarguments of the callback function
ListenerClassclass to which the listener method belongs

§ type()

Type ofxOui::Component::type ( ) const
inlineinherited

get the type of the component

Returns
type of the component

§ update()

void ofxOui::Button::update ( )
virtual

OF-like update function.

Reimplemented from ofxOui::Component.

Member Data Documentation

§ active

bool ofxOui::Component::active = false
inherited

specifies if the component is active

§ blocking_component

ofxOui::Component * ofxOui::Component::blocking_component = nullptr
staticprotectedinherited

§ click_event_callback_

std::function<void(Button::ClickEvent&)> ofxOui::Button::click_event_callback_
protected

§ current_background_color_

ofColor ofxOui::Component::current_background_color_
protectedinherited

§ current_frame_color_

ofColor ofxOui::Component::current_frame_color_
protectedinherited

§ disabled

bool ofxOui::Component::disabled = false
inherited

specifies if the component should be in "disabled" mode (no interaction)

§ font

TextBox ofxOui::Component::font
inherited

textbox for the main label of the component

§ height

float ofxOui::Component::height
inherited

component height

§ hover_

bool ofxOui::Component::hover_ = false
protectedinherited

§ icon

Icon ofxOui::Component::icon
inherited

icon box of the component

§ labelOff

string ofxOui::Component::labelOff = ""
inherited

Label of the component (not active)

§ labelOn

string ofxOui::Component::labelOn = ""
inherited

Label of the component (active)

§ num_frames_on_

int ofxOui::Button::num_frames_on_
protected

§ shape

Shape ofxOui::Component::shape = ofxOui::Shape::Rectangle
inherited

shape of the component

§ style

Style ofxOui::Component::style = ofxOui::Style::Default
inherited

style of the component

§ toggle

bool ofxOui::Button::toggle

specifies if the button works as button or toggle

§ type_

Type ofxOui::Component::type_ = ofxOui::Type::Label
protectedinherited

§ width

float ofxOui::Component::width
inherited

component width

§ x

float ofxOui::Component::x
inherited

x position (left)

§ y

float ofxOui::Component::y
inherited

y position(top)


The documentation for this class was generated from the following files: