38
+ − 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 exitMenu(void);
+ − 75
+ − 76 void tM_check_content(void);
+ − 77 void tM_refresh_live_content(void);
+ − 78 void tM_rebuild_menu_after_tComm(void);
+ − 79
+ − 80 void tM_refresh(char *text, uint8_t *textPointer, uint8_t line, const char content[6]);
+ − 81
+ − 82 void block_diluent_page(void);
+ − 83 void unblock_diluent_page(void);
+ − 84
+ − 85 #endif /* TMENU_H */