comparison Discovery/Inc/tMenu.h @ 38:5f11787b4f42

include in ostc4 repository
author heinrichsweikamp
date Sat, 28 Apr 2018 11:52:34 +0200
parents
children 5e41365ff0d8
comparison
equal deleted inserted replaced
37:ccc45c0e1ea2 38:5f11787b4f42
1 ///////////////////////////////////////////////////////////////////////////////
2 /// -*- coding: UTF-8 -*-
3 ///
4 /// \file Discovery/Inc/tMenu.h
5 /// \brief Header file of Divemode with 7 windows plus plugin
6 /// \author heinrichs weikamp gmbh
7 /// \date 30-April-2014
8 ///
9 /// $Id$
10 ///////////////////////////////////////////////////////////////////////////////
11 /// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh
12 ///
13 /// This program is free software: you can redistribute it and/or modify
14 /// it under the terms of the GNU General Public License as published by
15 /// the Free Software Foundation, either version 3 of the License, or
16 /// (at your option) any later version.
17 ///
18 /// This program is distributed in the hope that it will be useful,
19 /// but WITHOUT ANY WARRANTY; without even the implied warranty of
20 /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 /// GNU General Public License for more details.
22 ///
23 /// You should have received a copy of the GNU General Public License
24 /// along with this program. If not, see <http://www.gnu.org/licenses/>.
25 //////////////////////////////////////////////////////////////////////////////
26
27 /* Define to prevent recursive inclusion -------------------------------------*/
28 #ifndef TMENU_H
29 #define TMENU_H
30
31 /* Includes ------------------------------------------------------------------*/
32 #include <stdio.h>
33 #include <string.h>
34 #include "stm32f4xx_hal.h"
35 #include "base.h"
36 #include "gfx.h"
37 #include "gfx_colors.h"
38 #include "gfx_engine.h"
39 #include "text_multilanguage.h"
40 #include "settings.h"
41 #include "data_central.h"
42 #include "data_exchange.h"
43
44 /* Exported types ------------------------------------------------------------*/
45 enum MENU_MODE
46 {
47 MENU_SURFACE = 0,
48 MENU_DIVE_REAL = 1,
49 MENU_DIVE_SIM = 2,
50 MENU_UNDEFINED = 4
51 };
52
53 /* Exported constants --------------------------------------------------------*/
54
55 #define MAX_PAGE_TEXTSIZE 65 * 6
56
57 /* Exported variables --------------------------------------------------------*/
58
59 extern uint8_t actual_menu_content;
60
61 /* Exported functions --------------------------------------------------------*/
62
63 GFX_DrawCfgScreen * get_PointerMenuCursorScreen(void);
64 GFX_DrawCfgScreen * get_PointerMenuCursorDesignSoloScreen(void);
65
66 void nextline(char * text, uint8_t *textPointer);
67
68 void tM_init(void);
69 void openMenu(uint8_t freshWithFlipPages);
70 void openMenu_first_page_with_OC_gas_update(void);
71 void updateMenu(void);
72 void updateSpecificMenu(uint32_t id);
73 void sendActionToMenu(uint8_t sendAction);
74 void timeoutTestMenu(uint32_t seconds_since_last_button_press);
75 void exitMenu(void);
76
77 void tM_check_content(void);
78 void tM_refresh_live_content(void);
79 void tM_rebuild_menu_after_tComm(void);
80
81 void tM_refresh(char *text, uint8_t *textPointer, uint8_t line, const char content[6]);
82
83 void block_diluent_page(void);
84 void unblock_diluent_page(void);
85
86 #endif /* TMENU_H */