C++ DevKit
C++ set of OOP library
Loading...
Searching...
No Matches
WidgetFocusIndicator Class Reference

A specific class dedicated to indicate the status of an UIControlledModel. Not an abstract class, can be implemented. More...

#include <widget_square_led.h>

Inheritance diagram for WidgetFocusIndicator:
Inheritance graph
Collaboration diagram for WidgetFocusIndicator:
Collaboration graph

Public Member Functions

 WidgetFocusIndicator (Model *actual_displayed_model, GraphicDisplayDevice *graphic_display_screen, struct_ConfigGraphicWidget graph_cfg, CanvasFormat format)
 constructor for the UICOntrolledModel focus indicator
 
virtual void get_value_of_interest ()
 A pure virtual method that results in the transfer of the displayed values of the displayed model to the widget.
 
- Public Member Functions inherited from WidgetBlinkingSquareLed
 WidgetBlinkingSquareLed (Model *actual_displayed_model, GraphicDisplayDevice *graphic_display_screen, struct_ConfigGraphicWidget graph_cfg, CanvasFormat format)
 Construct a new GraphicWidget Square Led object.
 
virtual void draw ()
 a pure virtual member that is called to effectively draw the widget.
 
- Public Member Functions inherited from WidgetSquareLed
 WidgetSquareLed (Model *actual_displayed_model, GraphicDisplayDevice *graphic_display_screen, struct_ConfigGraphicWidget graph_cfg, CanvasFormat format)
 Construct a new GraphicWidget Square Led object.
 
- Public Member Functions inherited from GraphicWidget
void update_widget_anchor (uint8_t x, uint8_t y)
 Modify the anchor of the widget on the display screen.
 
virtual void draw_border (ColorIndex color=ColorIndex::WHITE)
 draw a rectangle around the widget.
 
void show ()
 A short way to call GraphicDisplayDevice::show(&canvas, anchor x, anchor y)
 
 GraphicWidget (GraphicDisplayDevice *graphic_display_screen, struct_ConfigGraphicWidget graph_cfg, CanvasFormat canvas_format, Model *displayed_object=nullptr)
 Construct a new Graphic Widget object.
 
 GraphicWidget (GraphicDisplayDevice *graphic_display_screen, struct_ConfigTextWidget text_cfg, CanvasFormat canvas_format, Model *displayed_object=nullptr)
 Construct a new Graphic Widget object from the TextWidget Constructor.
 
 GraphicWidget (GraphicDisplayDevice *graphic_display_screen, struct_ConfigTextWidget text_cfg, CanvasFormat canvas_format, size_t frame_width, size_t frame_height, Model *displayed_object=nullptr)
 Construct a new Graphic Widget object from the TextWidget Constructor.
 
 ~GraphicWidget ()
 Destroy the Widget object.
 
struct_ConfigGraphicWidget get_graph_frame_config ()
 Get the graphic frame config object.
 
void hline (uint8_t x, uint8_t y, size_t w, ColorIndex color=ColorIndex::WHITE)
 Draw a color horizontal line, starting at frame position (x,y), on w number of pixel.
 
void vline (uint8_t x, uint8_t y, size_t h, ColorIndex color=ColorIndex::WHITE)
 Draw a color vertical line, starting at frame position (x,y), on w number of pixel.
 
void line (int x0, int y0, int x1, int y1, ColorIndex color=ColorIndex::WHITE)
 Draw a color line, starting at frame position (x0,y0), ending at frame position (x1,y1)
 
void rect (uint8_t start_x, uint8_t start_y, size_t w, size_t h, bool fill=false, ColorIndex color=ColorIndex::WHITE)
 Draw a rectangle, starting at frame position (x,y), w wide and h high.
 
void circle (int radius, int x_center, int y_center, bool fill=false, ColorIndex color=ColorIndex::WHITE)
 draw a cercle of size radius, centered at (x_center, y_center) https://fr.wikipedia.org/wiki/Algorithme_de_trac%C3%A9_d%27arc_de_cercle_de_Bresenham https://en.wikipedia.org/wiki/Midpoint_circle_algorithm procédure tracerCercle (entier rayon, entier x_centre, entier y_centre) déclarer entier x, y, m ; x ← 0 ; y ← rayon ; // on se place en haut du cercle m ← 5 - 4*rayon ; // initialisation Tant que x <= y // tant qu'on est dans le second octant tracerPixel( x+x_centre, y+y_centre ) ; tracerPixel( y+x_centre, x+y_centre ) ; tracerPixel( -x+x_centre, y+y_centre ) ; tracerPixel( -y+x_centre, x+y_centre ) ; tracerPixel( x+x_centre, -y+y_centre ) ; tracerPixel( y+x_centre, -x+y_centre ) ; tracerPixel( -x+x_centre, -y+y_centre ) ; tracerPixel( -y+x_centre, -x+y_centre ) ; si m > 0 alors //choix du point F y ← y - 1 ; m ← m - 8*y ; fin si ; x ← x + 1 ; m ← m + 8*x + 4 ; fin tant que ; fin de procédure ;
 
- Public Member Functions inherited from Widget
 Widget (Model *actual_displayed_model, DisplayDevice *graphic_display_device=nullptr)
 contructor for generic widget
 
void add_widget (Widget *_sub_widget)
 add sub_widget to the current widget
 
void set_display_device (DisplayDevice *_new_display_device)
 Set the display screen object.
 
- Public Member Functions inherited from Blinker
void set_blink_us (uint32_t blink_period=1000000)
 Set the blink period in microseconds.
 
bool has_blinking_changed ()
 return the status of the flag blink_phase_changed
 
void clear_blinking_phase_change ()
 set blink_phase_changed = False
 
virtual void compute_blinking_phase ()
 compute if the system clock divided by the blink_period is odd or even and if this has changed since the last cycle.
 

Additional Inherited Members

- Public Attributes inherited from GraphicWidget
Canvascanvas
 the associated canvas in which the widget writes text and draws graphics
 
ColorIndex fg_color
 the foregroung color of the graphic frame //TODO voir si fg_color n'est pas mieux dans canvas
 
ColorIndex bg_color
 the background color of the graphic frame //TODO voir si bg_color n'est pas mieux dans canvas
 
uint8_t widget_anchor_x
 location in x of the widget within the hosting framebuffer
 
uint8_t widget_anchor_y
 location in y of the widget within the hosting framebuffer
 
- Protected Member Functions inherited from GraphicWidget
void clear_widget ()
 fill the graphic pixel buffer with 0x00.
 
- Protected Attributes inherited from WidgetBlinkingSquareLed
LEDStatus led_status
 the operating status of the LED (blinking, ON, OFF)
 
- Protected Attributes inherited from WidgetSquareLed
bool led_is_on
 the status of the led, on or off
 
- Protected Attributes inherited from GraphicWidget
bool widget_with_border {false}
 if true, the widget is surrounded by a one-pixel border
 
size_t widget_width {128}
 As a widget can be surrounded by a border, the actual widget width is not the associated framebuffer width.
 
size_t widget_height {8}
 As a widget can be surrounded by a border, the actual widget height is not the associated framebuffer height.
 
uint8_t widget_start_x
 this is the actual horizontal start of the widget drawing area, taken into account the presence of border.
 
uint8_t widget_start_y
 this is the actual vertical start of the widget drawing area, taken into account the presence of border.
 
uint8_t widget_border_width
 this is the border size of the widget. 0 if no border, 1 if border
 
- Protected Attributes inherited from Widget
DisplayDevicedisplay_device {nullptr}
 the display device where the attached to the frame buffer
 
Modelactual_displayed_model {nullptr}
 a pointer to the Model actually displayed by the widget
 
std::vector< Widget * > widgets
 A widget can be composed by several widgets.
 

Detailed Description

A specific class dedicated to indicate the status of an UIControlledModel. Not an abstract class, can be implemented.

Constructor & Destructor Documentation

◆ WidgetFocusIndicator()

WidgetFocusIndicator::WidgetFocusIndicator ( Model * actual_displayed_model,
GraphicDisplayDevice * graphic_display_screen,
struct_ConfigGraphicWidget graph_cfg,
CanvasFormat format )

constructor for the UICOntrolledModel focus indicator

Parameters
actual_displayed_modelthe actual displayed model
graphic_display_screenThe display device on which the widget is drawn.
graph_cfgthe configuration data structure of the graphic framebuffer
formatthe associated canvas format
Here is the call graph for this function:

Member Function Documentation

◆ get_value_of_interest()

void WidgetFocusIndicator::get_value_of_interest ( )
virtual

A pure virtual method that results in the transfer of the displayed values of the displayed model to the widget.

Implements GraphicWidget.


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