ofxOui - UI Components for OpenFrameworks

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

Breakpoint function component. More...

#include <ofxOuiWaveform.hpp>

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

Classes

class  EditEvent
 Event arguments when a frame is edited. More...
 

Public Types

enum  Layout { Layout::Superposed, Layout::Juxtaposed }
 Layout of the different channels. More...
 
enum  Appearance { Appearance::Lines, Appearance::FillBottom, Appearance::FillTop, Appearance::FillZero }
 Appearance of the Waveform display. More...
 

Public Member Functions

 Waveform (int x_=0, int y_=0, int width_=0, int height_=0)
 Constructor. More...
 
virtual ~Waveform ()
 Destructor. More...
 
template<typename T , typename args , class ListenerClass >
void onEditPoint (T *owner, void(ListenerClass::*listenerMethod)(args))
 Set callback function for editing events. More...
 
virtual void update ()
 OF-like update function. More...
 
void clipBounds ()
 Set the bounds to the min/max of the values. 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

float * values
 Vector of x/y values of the Waveform. More...
 
int size
 Size of the data (number of frames) More...
 
int dimension
 Dimension of the data (number of channels) More...
 
map< int, ofColor > channels_colors
 Data channels to display and Associated colors. More...
 
shared_ptr< Graphgraph
 2D Graph area More...
 
Appearance appearance = Appearance::Lines
 Appearance of the Waveform display. 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 drawLabel ()
 
virtual void drawBackground ()
 
virtual void drawFrame ()
 
virtual void drawIcon ()
 

Protected Attributes

std::function< void(Waveform::EditEvent &)> 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

Breakpoint function component.

Mouse Interaction modes: click + drag. Single clik can be used to edit existing values, double click can be used for either adding or removing nodes in the Waveform

Member Enumeration Documentation

§ Appearance

Appearance of the Waveform display.

Enumerator
Lines 

Display as lines.

FillBottom 

Display as filled surface to the bottom of the display.

FillTop 

Display as filled surface to the top of the display.

FillZero 

Display as filled surface to zero.

§ Layout

Layout of the different channels.

Enumerator
Superposed 

Appearance of the Waveform display.

Juxtaposed 

Appearance of the Waveform display.

Constructor & Destructor Documentation

§ Waveform()

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

§ ~Waveform()

ofxOui::Waveform::~Waveform ( )
virtual

Destructor.

Member Function Documentation

§ clipBounds()

void ofxOui::Waveform::clipBounds ( )

Set the bounds to the min/max of the values.

§ 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::Waveform::drawLabel ( )
protectedvirtual

Reimplemented from ofxOui::Component.

§ 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

§ onEditPoint()

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

Set callback function for editing 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::Waveform::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

§ appearance

Appearance ofxOui::Waveform::appearance = Appearance::Lines

Appearance of the Waveform display.

§ blocking_component

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

§ callback_

std::function<void(Waveform::EditEvent &)> ofxOui::Waveform::callback_
protected

§ channels_colors

map<int, ofColor> ofxOui::Waveform::channels_colors

Data channels to display and Associated colors.

§ current_background_color_

ofColor ofxOui::Component::current_background_color_
protectedinherited

§ current_frame_color_

ofColor ofxOui::Component::current_frame_color_
protectedinherited

§ dimension

int ofxOui::Waveform::dimension

Dimension of the data (number of channels)

§ 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

§ graph

shared_ptr<Graph> ofxOui::Waveform::graph

2D Graph area

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

§ shape

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

shape of the component

§ size

int ofxOui::Waveform::size

Size of the data (number of frames)

§ style

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

style of the component

§ type_

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

§ values

float* ofxOui::Waveform::values

Vector of x/y values of the Waveform.

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