Files
RP2350_MIDI_Lighter/Firmware/Display_Render_Complex.h
Chris 89c875e38f - First complete version of firmware. Currently being tested in the rehearsal room
- Added bunch of screens, fonts and images
 - Added script to read out frame buffer (function currently disabled in Firmware)
2025-10-26 20:57:58 +01:00

47 lines
3.0 KiB
C

/*
* File: Display_Render_Complex.h
* Created: Created: Saturday September 2025 09:22:17
* Author: Chris
*/
#ifndef DISPLAY_RENDER_COMPLEX_H
#define DISPLAY_RENDER_COMPLEX_H
// ============================================================================================
// Includes
#include <math.h>
#include <string.h>
#include "Display_Shapes.h"
#include "Display_Objects.h"
// ============================================================================================
// Defines
// ============================================================================================
// Datatypes
// ============================================================================================
// Function Declarations
void Display_Render_Complex_Value_Bar_Rect (Coordinates* coordinates, Object_Value_Bar_Rect* value_bar);
void Display_Render_Complex_Value_Bar_Arc (Coordinates* coordinates, Object_Value_Bar_Arc* value_bar);
void Display_Render_Complex_Graph (Coordinates* coordinates, Object_Graph* graph);
void Display_Render_Complex_Button (Coordinates* coordinates, Object_Button* button);
void Display_Render_Complex_Canvas (Coordinates* coordinates, Object_Canvas* canvas);
void Display_Render_Complex_Message_Box (Coordinates* coordinates, Object_Message_Box* message_box, int16_t width, int16_t height);
void Display_Render_Complex_Menu_Select (Coordinates* coordinates, char* menu_titles, uint32_t menu_entry_count, uint32_t title_char_length, uint32_t selected_entry, Configuration_Menu_Select* config);
void Display_Render_Complex_Menu_Icon_Row_Set (uint32_t initially_selected_item, uint32_t icon_space_width);
void Display_Render_Complex_Menu_Icon_Row (Coordinates* coordinates, Icon_Row_Item* items, uint32_t item_count, uint32_t selected_item, const Configuration_Menu_Icon_Row* config);
void Display_Render_Complex_Menu_Ring (Coordinates* coordinates, Object_Menu_Ring* ring_menu);
void Display_Render_Complex_Menu_Hierarchical (Coordinates* coordinates, Object_Menu_Hierarchical* menu_hierarchical);
void Display_Render_Complex_Select_YesNo_Set (bool value, const Configuration_Select_YesNo* config);
void Display_Render_Complex_Select_YesNo (Coordinates* coordinates, char* title, uint32_t title_length, bool value, const Configuration_Select_YesNo* config);
void Display_Render_Complex_Select_List (Coordinates* coordinates, char* list_titles, uint32_t list_entry_count, uint32_t list_char_length, uint32_t selected_entry, uint32_t initial_entry, const Configuration_Select_List* config);
void Display_Render_Complex_Select_Value (Coordinates* coordinates, char* title, uint32_t title_length, int32_t value, int32_t max, int32_t min, char* format, const Configuration_Select_Value* config);
void Display_Render_Complex_Select_RGB (Coordinates* coordinates, Object_Select_RGB* rgb_selector);
void Display_Render_Complex_Entry_Indicator (Coordinates* coordinates, uint32_t entry_count, int32_t entry_value, const Configuration_Entry_Indicator* config);
#endif // DISPLAY_RENDER_COMPLEX_H