ofxOui - UI Components for OpenFrameworks

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

Drop-down menu. More...

#include <ofxOuiDropDown.hpp>

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

Classes

class  SelectEvent
 Event arguments for menu item selection. More...
 

Public Member Functions

template<typename T , typename args , class ListenerClass >
void onSelect (T *owner, void(ListenerClass::*listenerMethod)(args))
 Set callback function for item selection events. More...
 
 DropDown (int x_=0, int y_=0, int width_=0, int height_=0)
 Constructor. More...
 
virtual ~DropDown ()
 Destructor. 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

vector< string > items
 list of items contained in the menu 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

void createSubGui ()
 
void mouseMoved (ofMouseEventArgs &e)
 
void mouseDragged (ofMouseEventArgs &e)
 
void mousePressed (ofMouseEventArgs &e)
 
void mouseReleased (ofMouseEventArgs &e)
 
virtual void drawBackground ()
 
virtual void drawFrame ()
 
virtual void drawLabel ()
 
virtual void drawIcon ()
 

Protected Attributes

bool mouse_moved_
 
bool clear_buttons_ = false
 
vector< shared_ptr< ofxOui::Button > > sub_buttons_
 
std::function< void(DropDown::SelectEvent &)> select_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

Drop-down menu.

Constructor & Destructor Documentation

§ DropDown()

ofxOui::DropDown::DropDown ( 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

§ ~DropDown()

ofxOui::DropDown::~DropDown ( )
virtual

Destructor.

Member Function Documentation

§ createSubGui()

void ofxOui::DropDown::createSubGui ( )
protected

§ draw()

void ofxOui::DropDown::draw ( )
virtual

OF-like draw function.

Reimplemented from ofxOui::Component.

§ 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

§ mouseDragged()

void ofxOui::DropDown::mouseDragged ( ofMouseEventArgs &  e)
protected

§ mouseMoved()

void ofxOui::DropDown::mouseMoved ( ofMouseEventArgs &  e)
protected

§ mousePressed()

void ofxOui::DropDown::mousePressed ( ofMouseEventArgs &  e)
protected

§ mouseReleased()

void ofxOui::DropDown::mouseReleased ( ofMouseEventArgs &  e)
protected

§ onSelect()

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

Set callback function for item selection 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::DropDown::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

§ clear_buttons_

bool ofxOui::DropDown::clear_buttons_ = false
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

§ items

vector<string> ofxOui::DropDown::items

list of items contained in the menu

§ labelOff

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

Label of the component (not active)

§ labelOn

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

Label of the component (active)

§ mouse_moved_

bool ofxOui::DropDown::mouse_moved_
protected

§ select_event_callback_

std::function<void(DropDown::SelectEvent &)> ofxOui::DropDown::select_event_callback_
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

§ sub_buttons_

vector<shared_ptr<ofxOui::Button> > ofxOui::DropDown::sub_buttons_
protected

§ 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: