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>
774
6169309d6eb9
more menu items for the compass menu: Delete bearing, and reset to land based bearing. I have also re-enabled the real time bearing display in the menu - makes it easier to set the correct bearing. (mikeller)
heinrichsweikamp
diff
changeset
+ − 34 #include <stdbool.h>
6169309d6eb9
more menu items for the compass menu: Delete bearing, and reset to land based bearing. I have also re-enabled the real time bearing display in the menu - makes it easier to set the correct bearing. (mikeller)
heinrichsweikamp
diff
changeset
+ − 35
38
+ − 36 #include "stm32f4xx_hal.h"
+ − 37 #include "base.h"
+ − 38 #include "gfx.h"
+ − 39 #include "gfx_colors.h"
+ − 40 #include "gfx_engine.h"
+ − 41 #include "text_multilanguage.h"
+ − 42 #include "settings.h"
+ − 43 #include "data_central.h"
+ − 44 #include "data_exchange.h"
+ − 45
+ − 46 /* Exported types ------------------------------------------------------------*/
+ − 47 enum MENU_MODE
+ − 48 {
+ − 49 MENU_SURFACE = 0,
+ − 50 MENU_DIVE_REAL = 1,
+ − 51 MENU_DIVE_SIM = 2,
+ − 52 MENU_UNDEFINED = 4
+ − 53 };
+ − 54
+ − 55 /* Exported constants --------------------------------------------------------*/
+ − 56
+ − 57 #define MAX_PAGE_TEXTSIZE 65 * 6
+ − 58
+ − 59 /* Exported variables --------------------------------------------------------*/
+ − 60
+ − 61 extern uint8_t actual_menu_content;
+ − 62
+ − 63 /* Exported functions --------------------------------------------------------*/
+ − 64
+ − 65 GFX_DrawCfgScreen * get_PointerMenuCursorScreen(void);
+ − 66 GFX_DrawCfgScreen * get_PointerMenuCursorDesignSoloScreen(void);
+ − 67
+ − 68 void nextline(char * text, uint8_t *textPointer);
+ − 69
+ − 70 void tM_init(void);
+ − 71 void openMenu(uint8_t freshWithFlipPages);
+ − 72 void openMenu_first_page_with_OC_gas_update(void);
+ − 73 void updateMenu(void);
+ − 74 void updateSpecificMenu(uint32_t id);
+ − 75 void sendActionToMenu(uint8_t sendAction);
+ − 76 void exitMenu(void);
+ − 77
+ − 78 void tM_check_content(void);
+ − 79 void tM_refresh_live_content(void);
+ − 80 void tM_rebuild_menu_after_tComm(void);
+ − 81
+ − 82 void tM_refresh(char *text, uint8_t *textPointer, uint8_t line, const char content[6]);
379
+ − 83 void tM_build_page(uint32_t id, char *text, uint16_t tab, char *subtext);
38
+ − 84
+ − 85 void block_diluent_page(void);
+ − 86 void unblock_diluent_page(void);
+ − 87
647
+ − 88 void selectPage(uint32_t selection);
+ − 89
774
6169309d6eb9
more menu items for the compass menu: Delete bearing, and reset to land based bearing. I have also re-enabled the real time bearing display in the menu - makes it easier to set the correct bearing. (mikeller)
heinrichsweikamp
diff
changeset
+ − 90 char *makeGrey(bool isGrey);
38
+ − 91 #endif /* TMENU_H */