EPD4in2v2 C++ Enhanced
Loading...
Searching...
No Matches
Gui.hpp File Reference

Contains the Gui namespace, bringing interfaces to draw on a picture. More...

#include <string>
#include <cstdlib>
#include <string_view>
#include "GUI_BMPfile.h"
#include "GUI_Paint.h"
Include dependency graph for Gui.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Gui::Picture
 Handles drawing in a picture and retrieving data from it. More...
 

Namespaces

namespace  Gui
 Groups enumerations and the class Picture.
 

Enumerations

enum  Gui::DotSize : uint8_t {
  Gui::DOT_1 = 1 , Gui::DOT_2 , Gui::DOT_3 , Gui::DOT_4 ,
  Gui::DOT_5 , Gui::DOT_6 , Gui::DOT_7 , Gui::DOT_8
}
 Size of drawing point. More...
 
enum  Gui::DotStyle : uint8_t { Gui::FILL_AROUND = 1 , Gui::FILL_RIGHTUP }
 Style of drawing point. More...
 
enum  Gui::LineStyle : uint8_t { Gui::SOLID = 1 , Gui::DOTTED }
 Style of drawing line. More...
 
enum  Gui::GeometryFill : uint8_t { Gui::VOID , Gui::FULL }
 Enable/disable filling for drew figures. More...
 
enum  Gui::BmpReadMode : unsigned char { Gui::MONOCHROME , Gui::GRAY_4 , Gui::GRAY_16 }
 Color scale for reading BMPs. More...
 

Detailed Description

Contains the Gui namespace, bringing interfaces to draw on a picture.

Features:

  • Allocate memory for handling the image specifying width and height
  • Retrieve the array with the image and draw in display using the Api
  • Rotate and mirror the image
  • Set the size of points and image color scale (B/W or 4-gray)
  • Clear the entire image or just a window
  • Draw primitives (dot, line, rectangle, circle)
  • Draw characters and strings with a specific font (monospaced and variable-width)
  • Read BMPs
  • Handling cursor with last-character drew data and start point for new drawings (ONLY FOR VARIABLE-WIDTH fonts)

To Do:

  • Add character handling for monospaced fonts
  • Add a method to draw non-ASCII characters
  • Add support for allocating memory for 4-gray scale image