Public Member Functions | List of all members
PHN_NumberBox Class Reference

The numberbox widget can be scrolled by the user to change between integer values. More...

#include <PHNNumberBox.h>

Inheritance diagram for PHN_NumberBox:
PHN_Widget PHN_TextContainer PHN_WidgetContainer

Public Member Functions

 PHN_NumberBox ()
void setRange (int minValue, int maxValue)
 Sets the minimum and maximum range of the value.
int minValue () const
 Gets the range minimum value.
int maxValue () const
 Gets the range maximum value.
void addValue (int increment)
 Increments or decrements the value.
void setValue (int value)
 Sets the current value.
int value ()
 Gets the current value.
bool isValueChanged () const
 Gets whether the value was changed.
void setWrapAround (bool wrapAround)
 Sets whether the value wraps around.
char wrapAroundIncrement () const
 Gets last wrap-around increment performed. More...
virtual void setTextRaw (const char *text, int textLen)
 Sets the new text to display using a buffer and length.
virtual const char * text ()
 Gets the text displayed.
virtual void draw (void)
 Draw function routine, where widgets must perform drawing.
virtual void update (void)
 Update function routine, where widget logic must be performed.
- Public Member Functions inherited from PHN_Widget
 PHN_Widget ()
 Constructor for a new widget, initializing all fields to the default values.
virtual ~PHN_Widget ()
 Destructor for a widget, clearing any child widgets and freeing memory.
const int getX (void)
 Gets the x-coordinate of the widget.
const int getY (void)
 Gets the y-coordinate of the widget.
const int getWidth (void)
 Gets the width of the widget.
const int getHeight (void)
 Gets the height of the widget.
void setBounds (int x, int y, int width, int height)
 Sets the new bounds (x, y, width, height) of the widget.
void setSize (int width, int height)
 Sets the size (width, height) of the widget.
virtual void setColor (int colorId, color_t color)
 Sets a style color for this widget. More...
const color_t color (int colorId)
 Gets a style color set for this widget. More...
bool isTouched ()
 Gets whether the widget is touched down by the user.
bool isTouchEnter ()
 Gets whether the user's touch input entered the widget.
bool isTouchLeave ()
 Gets whether the user's touch input left the widget.
bool isTouchChange ()
 Gets whether the user clicked, entered or left the widget.
bool isClicked ()
 Gets whether the user clicked (pressed and released) the widget.
void setVisible (bool visible)
 Sets whether the widget is displayed and updated.
bool isVisible (void)
 Gets whether the widget is displayed and updated.
bool isDrawn (void)
 Gets whether the widget has been drawn.
void setDrawingEnabled (bool drawing)
 Sets whether the widget is drawn and undrawn.
bool isDrawingEnabled (void)
 Gets whether the widget is drawn and undrawn.
void invalidate (void)
 Invalidated the widget, causing it to be re-drawn at a later time.
bool isInvalidated (void)
 Checks whether the widget is invalidated and needs to be redrawn.
void draw_validate ()
 Draws the widget if invalidated, clearing the invalidated state.
virtual void undraw (void)
 Clear draw function routine, where widgets perform un-drawing (to background)
- Public Member Functions inherited from PHN_WidgetContainer
 PHN_WidgetContainer (void)
 Constructor for a new widget container.
void updateWidgets (bool update, bool draw, bool forceRedraw)
 Updates all the widgets contained. More...
void addWidget (PHN_Widget &widget)
 Adds a single widget. More...
void removeWidget (PHN_Widget &widget)
 Removes a single widget. More...
void clearWidgets ()
 Removes all contained widgets. More...
PHN_Widgetwidget (int index)
 Gets the widget stored at an index.
const int widgetCount ()
 Gets how many widgets are stored.
- Public Member Functions inherited from PHN_TextContainer
void setText (String textString)
 Sets the new text to display using an Arduino type String.
void setText (int valueText)
 Sets the new text to display using an integer value.
void setText (long valueText)
 Sets the new text to display using a long value.
void setText (double valueText)
 Sets the new text to display using a float value.
void setText (const char *text)
 Sets the new text to display using a null-terminated String.
void clearText ()
 Clears all the text, setting it to an Empty String.
virtual int textLength ()
 Gets the length of the text displayed.

Additional Inherited Members

- Protected Member Functions inherited from PHN_WidgetContainer
void clearSilent ()
 Removes all child widgets from this container without handling proper redrawing. More...
void setWidgetCapacity (int capacity)
 Resizes the internal array of widgets to a new capacity. More...
- Protected Attributes inherited from PHN_Widget
PHN_Palette colors
 A palette of colors set for the widget.
unsigned char visible
 Draw state flags of the widget (0=invisible, 0x1=visible, 0x2=drawn, 0x4=draw_disabled)
bool invalidated
 Invalidated state of the widget.
int x
int y
int width
int height
- Protected Attributes inherited from PHN_WidgetContainer
bool deleteAddedWidgets
 Sets whether added widgets are deleted (were added with new)

Detailed Description

The numberbox widget can be scrolled by the user to change between integer values.

The widget displays a rectangular box in which the current value or user-specified text is displayed. To the right of the box are two buttons allowing the user to increment or decrement the current value by 1.

To display text selection instead of a number, the implementer can override the current text after the value changes.

When using the widget, make sure to specify the bounds and value range.

Member Function Documentation

char PHN_NumberBox::wrapAroundIncrement ( ) const

Gets last wrap-around increment performed.

Gets the last wrap-around increment performed

When wrap-around is enabled, this value can be used to track the event of wrapping around.

This function returns: +1 When the value is incremented and wrapped past the maximum -1 When the value is decremented and wrapped past the minimum 0 When no wrap-around events occurred

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