annotate Discovery/Inc/gfx_engine.h @ 540:ffd01ead2c80

Bugfix return from submenu in t3 view: In case of beeing in a sub menu (e.g. set bearing) in t3 view and pressing back button, visualization changed to t7 view without reset of the menu state => OSTC assumes still beeing in a sub menu while user sees main screen. Solution: evaluate menu state and take action according to it.
author Ideenmodellierer
date Sat, 10 Oct 2020 18:30:13 +0200 (2020-10-10)
parents e141b571a03d
children 1c95f811967c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
1 ///////////////////////////////////////////////////////////////////////////////
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
2 /// -*- coding: UTF-8 -*-
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
3 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
4 /// \file Discovery/Inc/gfx_engine.h
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
5 /// \brief DATA INPUT POSITION structure definition
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
6 /// \author heinrichs weikamp gmbh
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
7 /// \date 07-April-2014
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
8 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
9 /// $Id$
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
10 ///////////////////////////////////////////////////////////////////////////////
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
11 /// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
12 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
13 /// This program is free software: you can redistribute it and/or modify
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
14 /// it under the terms of the GNU General Public License as published by
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
15 /// the Free Software Foundation, either version 3 of the License, or
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
16 /// (at your option) any later version.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
17 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
18 /// This program is distributed in the hope that it will be useful,
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
19 /// but WITHOUT ANY WARRANTY; without even the implied warranty of
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
20 /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
21 /// GNU General Public License for more details.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
22 ///
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
23 /// You should have received a copy of the GNU General Public License
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
24 /// along with this program. If not, see <http://www.gnu.org/licenses/>.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
25 //////////////////////////////////////////////////////////////////////////////
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
26
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
27 /* Define to prevent recursive inclusion -------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
28 #ifndef GFX_ENGINE_H
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
29 #define GFX_ENGINE_H
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
30
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
31 /* Includes ------------------------------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
32 #include "stm32f4xx_hal.h"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
33 #include "gfx.h"
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
34
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
35 /* Exported types ------------------------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
36
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
37 /**
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
38 * @brief DATA INPUT POSITION structure definition
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
39 */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
40
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
41 typedef struct
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
42 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
43 uint32_t FBStartAdress; /*!< Configures the color frame buffer address */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
44 uint16_t ImageWidth; /*!< Configures the color frame buffer line length.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
45 This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0x1FFF. */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
46 uint16_t ImageHeight; /*!< Specifies the number of line in frame buffer.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
47 This parameter must be a number between Min_Data = 0x000 and Max_Data = 0x7FF. */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
48 uint8_t LayerIndex;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
49 } GFX_DrawCfgScreen;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
50
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
51
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
52 typedef struct
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
53 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
54 uint16_t WindowX0; /*!< Configures the Window vertical Start Position.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
55 This parameter must be a number between Min_Data = 0x000 and Max_Data = 0xFFF. */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
56 uint16_t WindowX1; /*!< Configures the Window vertical Stop Position.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
57 This parameter must be a number between Min_Data = 0x000 and Max_Data = 0xFFF. */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
58 uint16_t WindowY0; /*!< Configures the Window Horizontal Start Position.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
59 This parameter must be a number between Min_Data = 0x000 and Max_Data = 0xFFF. */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
60 uint16_t WindowY1; /*!< Configures the Window Horizontal Stop Position.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
61 This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
62
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
63 uint16_t WindowTab; /*!< Configures the Window Horizontal Absolute Tab Position.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
64 This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
65
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
66 uint16_t WindowNumberOfTextLines; /*!< Configures the Number of Text Lines.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
67 This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
68
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
69 uint16_t WindowLineSpacing; /*!< Configures the Number of Text Lines.
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
70 This parameter must be a number between Min_Data = 0x0000 and Max_Data = 0xFFFF. */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
71 GFX_DrawCfgScreen *Image;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
72 } GFX_DrawCfgWindow;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
73
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
74 typedef struct
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
75 {
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
76 int left;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
77 int right;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
78 int top;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
79 int bottom;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
80 } SWindowGimpStyle;
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
81
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
82 /* Exported variables --------------------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
83
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
84 /**
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
85 * \001 center
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
86 * \002 right
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
87 * \003 doubleSize
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
88 * \004 NOP
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
89 * \005 checkbox checked
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
90 * \006 checkbox unchecked
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
91 * \007 invert \a
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
92 * \010 use color \b
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
93 * \011 tab \t
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
94 * \012 line feed \n
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
95 * \014 top align \f
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
96 * \015 carriage return \r
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
97 * \016 O:o O.o style
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
98 * \017 back to O font
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
99 * \020 color 0
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
100 * ...
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
101 * \027 color 8
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
102 * \026 color 11
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
103 * \033 UNUSED \c ESC
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
104 * \034 monospaced space large size mode
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
105 * \035 standard space size mode
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
106 * \040 space == begin of text
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
107 * ...
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
108 * \x7F = \177 del = space with size of next char
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
109 * \x7F\x7F = \177\177 del del = space with size of next byte
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
110 * \x80 begin of TXT_Substring with Language support
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
111 */
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
112
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
113 /* Exported functions --------------------------------------------------------*/
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
114
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
115 void GFX_init(uint32_t * pDestinationOut);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
116
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
117 void GFX_helper_font_memory_list(const tFont *Font);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
118
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
119 void GFX_start_VSYNC_IRQ(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
120 void GFX_change_LTDC(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
121
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
122 void GFX_SetFrameTop(uint32_t pDestination);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
123 void GFX_SetFrameBottom(uint32_t pDestination, uint32_t x0, uint32_t y0, uint32_t width, uint32_t height);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
124 void GFX_SetFramesTopBottom(uint32_t pTop, uint32_t pBottom, uint32_t heightBottom);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
125
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
126 void GFX_SetWindowLayer0(uint32_t pDestination, int16_t XleftGimpStyle, int16_t XrightGimpStyle, int16_t YtopGimpStyle, int16_t YbottomGimpStyle);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
127 void change_CLUT_entry(uint8_t entryToChange, uint8_t entryUsedForChange);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
128
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
129 uint16_t GFX_return_offset(const tFont *Font, char *pText, uint8_t position);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
130
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
131 void GFX_VGA_transform(uint32_t pSource, uint32_t pDestination);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
132
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
133 HAL_StatusTypeDef GFX_SetBackgroundColor(uint32_t LayerIdx, uint8_t red, uint8_t green, uint8_t blue);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
134
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
135 void GFX_LTDC_LayerTESTInit(uint16_t LayerIndex, uint32_t FB_Address);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
136
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
137 void GFX_fill_buffer(uint32_t pDestination, uint8_t alpha, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
138
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
139 void GFX_clear_window_immediately(GFX_DrawCfgWindow* hgfx);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
140
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
141 //void GFX_draw_circle_with_MEMORY(uint8_t use_memory, GFX_DrawCfgScreen *hgfx, point_t center, uint8_t radius, int8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
142 void GFX_draw_circle(GFX_DrawCfgScreen *hgfx, point_t center, uint8_t radius, int8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
143 void GFX_draw_colorline(GFX_DrawCfgScreen *hgfx, point_t start, point_t stop, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
144 void GFX_draw_thick_line(uint8_t thickness, GFX_DrawCfgScreen *hgfx, point_t start, point_t stop, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
145 void GFX_draw_line(GFX_DrawCfgScreen *hgfx, point_t start, point_t stop, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
146 void GFX_draw_box2(GFX_DrawCfgScreen *hgfx, point_t start, point_t stop, uint8_t color, uint8_t roundCorners);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
147 void GFX_draw_box(GFX_DrawCfgScreen *hgfx, point_t LeftLow, point_t WidthHeight, uint8_t Style, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
148 void GFX_draw_header(GFX_DrawCfgScreen *hgfx, uint8_t colorId);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
149 void GFX_clean_line(GFX_DrawCfgWindow* hgfx, uint32_t line_number);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
150 void GFX_clean_area(GFX_DrawCfgScreen *tMscreen, uint16_t XleftGimpStyle, uint16_t XrightGimpStyle, uint16_t YtopGimpStyle, uint16_t YBottomGimpStyle);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
151
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
152 uint32_t GFX_write_string(const tFont *Font, GFX_DrawCfgWindow* hgfx, const char *pText, uint32_t line_number);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
153 uint32_t GFX_write_string_color(const tFont *Font, GFX_DrawCfgWindow* hgfx, const char *pText, uint32_t line_number, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
154 uint32_t GFX_write_label(const tFont *Font, GFX_DrawCfgWindow* hgfx, const char *pText, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
155 void Gfx_write_label_var(GFX_DrawCfgScreen *screenInput, uint16_t XleftGimpStyle, uint16_t XrightGimpStyle, uint16_t YtopGimpStyle, const tFont *Font, const uint8_t color, const char *text);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
156 void GFX_LTDC_Init(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
157 void GFX_VGA_LTDC_Init(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
158 void GFX_LTDC_LayerDefaultInit(uint16_t LayerIndex, uint32_t FB_Address);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
159 void GFX_VGA_LTDC_LayerDefaultInit(uint16_t LayerIndex, uint32_t FB_Address);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
160 void GFX_LTDC_LayerMenuBackgroundInit(uint32_t FB_Address);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
161 //void GFX_ResetLayer(uint32_t LayerIdx);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
162
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
163 //void GFX_fill_full_image_ARGB8888_alternating_lines(GFX_DrawCfgWindow* hgfx, uint32_t color1, uint32_t color2);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
164 //void GFX_fill_window_ARGB8888(GFX_DrawCfgWindow* hgfx, uint32_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
165
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
166 //void GFX_copy_full_image_ARGB8888_to_RGB888(GFX_DrawCfgWindow* hgfx, uint32_t FBdestination);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
167
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
168 void GFX_graph_print(GFX_DrawCfgScreen *hgfx, const SWindowGimpStyle *window, int16_t drawVeilUntil, uint8_t Xdivide, uint16_t dataMin, uint16_t dataMax, uint16_t *data, uint16_t datalength, uint8_t color, uint8_t *colour_data);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
169 void GFX_draw_Grid(GFX_DrawCfgScreen *hgfx, SWindowGimpStyle window, int vlines, float vdeltaline, int hlines, float hdeltalines, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
170
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
171 uint32_t getFrame(uint8_t callerId);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
172 uint32_t getFrameByNumber(uint8_t ZeroToMaxFrames);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
173 uint8_t releaseFrame(uint8_t callerId, uint32_t frameStartAddress);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
174 void GFX_forceReleaseFramesWithId(uint8_t callerId);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
175 void releaseAllFramesExcept(uint8_t callerId, uint32_t frameStartAddress);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
176 void housekeepingFrame(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
177 uint16_t blockedFramesCount(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
178 uint8_t getFrameCount(uint8_t frameId);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
179
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
180 void write_content_simple(GFX_DrawCfgScreen *tMscreen, uint16_t XleftGimpStyle, uint16_t XrightGimpStyle, uint16_t YtopGimpStyle, const tFont *Font, const char *text, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
181 void gfx_write_topline_simple(GFX_DrawCfgScreen *tMscreen, const char *text, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
182 void gfx_write_page_number(GFX_DrawCfgScreen *tMscreen, uint8_t page, uint8_t total, uint8_t color);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
183
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
184 void GFX_draw_image_monochrome(GFX_DrawCfgScreen *hgfx, SWindowGimpStyle window, const tImage *image, uint8_t color);
314
e141b571a03d Reinitialize logos after flip of display
ideenmodellierer
parents: 297
diff changeset
185 void GFX_build_logo_frame(void);
e141b571a03d Reinitialize logos after flip of display
ideenmodellierer
parents: 297
diff changeset
186 void GFX_build_hw_background_frame(void);
e141b571a03d Reinitialize logos after flip of display
ideenmodellierer
parents: 297
diff changeset
187
38
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
188 void GFX_logoAutoOff(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
189 uint8_t GFX_logoStatus(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
190 void GFX_hwBackgroundOn(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
191 void GFX_hwBackgroundOff(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
192
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
193 uint8_t gfx_number_to_string(uint8_t max_digits, _Bool fill, char *pText, uint32_t number);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
194
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
195 uint8_t GFX_is_colorschemeDiveStandard(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
196 void GFX_use_colorscheme(uint8_t colorscheme);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
197
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
198 void GFX_screenshot(void);
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
199
5f11787b4f42 include in ostc4 repository
heinrichsweikamp
parents:
diff changeset
200 #endif // GFX_ENGINE_H