UI_Lib  a1366e08a59cc549a65fa26081e6409aa12f26d5
This is a user interface library for graphical LCDs. It offers many different controls and indicators that can be nested depending on the element types.
Loading...
Searching...
No Matches
EnumIndicator< T > Class Template Reference

Class for an enum indicator that is only showing a enumeration variable value. More...

#include <EnumIndicator.h>

Inheritance diagram for EnumIndicator< T >:
UIElement EnumControl< T >

Public Member Functions

 EnumIndicator (T *valuePointer, const char **enumNames, uint8_t numEnumValues, uint16_t locX=0, uint16_t locY=0)
 Constructor of the EnumIndicator.
 
virtual void Draw (bool redraw) override
 Method used for drawing of the EnumIndicator.
 
virtual void RecalculateDimensions () override
 Recalculate the Height and Width of the UIElement.
 
- Public Member Functions inherited from UIElement
 UIElement (UIElementType type)
 Constructor of the UIElement.
 
 UIElement (uint16_t locX, uint16_t locY, UIElementType type)
 Constructor of the UIElement.
 
virtual bool KeyInput (Keys_t key)
 Process the given key.
 
virtual bool TouchInput (uint16_t x, uint16_t y, TouchTypes touchType)
 Process a touch input at the given point (x, y)
 
virtual void RecalculateLayout ()
 Recalculate the UIElement layout (containers update the X- and Y-Location of all their items, all other items can do other layout update stuff)
 
bool HitTest (uint16_t x, uint16_t y)
 Check if the given point (x, y) is inside this UIElement.
 

Protected Attributes

const char ** _enumNames
 Pointer to an array of char pointers containing the display names for all enumeration values.
 
uint8_t _numEnumValues
 Number of enumeration values.
 
T * _valuePointer
 Pointer to the enumeration variable that is shown by this indicator.
 
_lastValueDraw
 Last drawn enum value.
 
- Protected Attributes inherited from UIElement
bool _lastDrawnVisible
 The Visible value that was last drawn.
 

Additional Inherited Members

- Public Attributes inherited from UIElement
UIElementType Type
 Element type (control, indicator, container)
 
uint16_t LocX
 X Location of the upper left corner of the UIElement.
 
uint16_t LocY
 Y Location of the upper left corner of the UIElement.
 
uint16_t Width
 Drawing width of the UIElement.
 
uint16_t Height
 Drawing height of the UIElement.
 
bool Visible
 The UIElement is only drawn if the visibility is set to true.
 
bool IsInEditMode
 Is the UIElement in edit mode?
 
UIElementParent
 Parent UIElement that this UIElement belongs to.
 
UIElementActiveChild
 Child element that is currently active (receiving all key inputs).
 

Detailed Description

template<class T>
class EnumIndicator< T >

Class for an enum indicator that is only showing a enumeration variable value.

Template Parameters
TType of enumeration handled by this indicator

Constructor & Destructor Documentation

◆ EnumIndicator()

template<class T>
EnumIndicator< T >::EnumIndicator ( T * valuePointer,
const char ** enumNames,
uint8_t numEnumValues,
uint16_t locX = 0,
uint16_t locY = 0 )

Constructor of the EnumIndicator.

Parameters
valuePointerPointer to the enumeration variable that is shown by this indicator.
enumNamesPointer to an array of char pointers containing the display names for all enumeration values. The number of elements in this array must be at least the number of enum values.
numEnumValuesNumber of enumeration values. This number must match the real number of enum values in T.
locXX Location of the upper left corner of the EnumIndicator
locYY Location of the upper left corner of the EnumIndicator

Member Function Documentation

◆ Draw()

template<class T>
void EnumIndicator< T >::Draw ( bool redraw)
overridevirtual

Method used for drawing of the EnumIndicator.

Implements UIElement.

Reimplemented in EnumControl< T >.

◆ RecalculateDimensions()

template<class T>
void EnumIndicator< T >::RecalculateDimensions ( )
overridevirtual

Recalculate the Height and Width of the UIElement.

Implements UIElement.

Member Data Documentation

◆ _enumNames

template<class T>
const char** EnumIndicator< T >::_enumNames
protected

Pointer to an array of char pointers containing the display names for all enumeration values.

The number of elements in this array must be at least the number of enum values.

◆ _lastValueDraw

template<class T>
T EnumIndicator< T >::_lastValueDraw
protected

Last drawn enum value.

Only if the _valueDraw differs from this value, the indicator is redrawn.

◆ _numEnumValues

template<class T>
uint8_t EnumIndicator< T >::_numEnumValues
protected

Number of enumeration values.

This number is set by the constructor of the indicator and must match the real number of enum values in T.


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