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

A widget that show a square (it can be a rectangle) on the display. More...

#include <widget_square_led.h>

Inheritance diagram for WidgetBlinkingSquareLed:
Inheritance graph
Collaboration diagram for WidgetBlinkingSquareLed:
Collaboration graph

Public Member Functions

 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.
 

Protected Attributes

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.
 

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.
 
virtual void get_value_of_interest ()=0
 A pure virtual method that results in the transfer of the displayed values of the displayed model to the widget.
 

Detailed Description

A widget that show a square (it can be a rectangle) on the display.

Constructor & Destructor Documentation

◆ WidgetBlinkingSquareLed()

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

Construct a new GraphicWidget Square Led object.

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:
Here is the caller graph for this function:

Member Function Documentation

◆ draw()

void WidgetBlinkingSquareLed::draw ( )
virtual

a pure virtual member that is called to effectively draw the widget.

Note
USAGE: This member function can be called by the draw_refresh_all_attached_widgets() method of the Model. Refer to the following diagram.

Reimplemented from WidgetSquareLed.

Here is the call graph for this function:

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