Mercurial > public > ostc4
annotate Discovery/Src/tMenuCustom.c @ 1037:2af07aa38531 GasConsumption
Merge with external development branches:
Some features have been prepared for integration: Profiles, DMA UART on Firmware part, Bluetooth discovery and messges logging for development phase. All these new function are deactivated by compile switch and may be activated using the configuration.h for testing purpose.
| author | Ideenmodellierer |
|---|---|
| date | Mon, 15 Sep 2025 21:12:44 +0200 |
| parents | 85f7e19c6688 |
| children |
| rev | line source |
|---|---|
|
506
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
1 /////////////////////////////////////////////////////////////////////////////// |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
2 /// -*- coding: UTF-8 -*- |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
3 /// |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
4 /// \file Discovery/Src/tMenuCustom.c |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
5 /// \brief Menu Custom - Provide access to custom view options |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
6 /// \author heinrichs weikamp gmbh |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
7 /// \date 25-Aug-2020 |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
8 /// |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
9 /// \details |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
10 /// |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
11 /// $Id$ |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
12 /////////////////////////////////////////////////////////////////////////////// |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
13 /// \par Copyright (c) 2014-2020 Heinrichs Weikamp gmbh |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
14 /// |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
15 /// This program is free software: you can redistribute it and/or modify |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
16 /// it under the terms of the GNU General Public License as published by |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
17 /// the Free Software Foundation, either version 3 of the License, or |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
18 /// (at your option) any later version. |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
19 /// |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
20 /// This program is distributed in the hope that it will be useful, |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
21 /// but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
22 /// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
23 /// GNU General Public License for more details. |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
24 /// |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
25 /// You should have received a copy of the GNU General Public License |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
26 /// along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
27 ////////////////////////////////////////////////////////////////////////////// |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
28 |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
29 /* Includes ------------------------------------------------------------------*/ |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
30 #include <stdio.h> |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
31 #include <string.h> |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
32 #include "tMenu.h" |
|
521
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
33 #include "tHome.h" |
|
506
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
34 #include "tStructure.h" |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
35 #include "tMenuCustom.h" |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
36 #include "text_multilanguage.h" |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
37 #include "data_central.h" |
|
521
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
38 #include "motion.h" |
|
552
531e7818b737
Added menu structure to acces viewport calibration:
Ideenmodellierer
parents:
521
diff
changeset
|
39 #include "gfx_fonts.h" |
|
531e7818b737
Added menu structure to acces viewport calibration:
Ideenmodellierer
parents:
521
diff
changeset
|
40 #include "tInfo.h" |
|
531e7818b737
Added menu structure to acces viewport calibration:
Ideenmodellierer
parents:
521
diff
changeset
|
41 #include "motion.h" |
| 999 | 42 #include "ostc.h" |
|
506
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
43 |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
44 |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
45 /* Exported functions --------------------------------------------------------*/ |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
46 |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
47 uint32_t tMCustom_refresh(uint8_t line, char *text, uint16_t *tab, char *subtext) |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
48 { |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
49 uint8_t textPointer; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
50 |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
51 textPointer = 0; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
52 *tab = 550; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
53 *subtext = 0; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
54 |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
55 if((line == 0) || (line == 1)) |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
56 { |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
57 text[textPointer++] = TXT_2BYTE; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
58 text[textPointer++] = TXT2BYTE_Customviews; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
59 } |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
60 text[textPointer++] = '\n'; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
61 text[textPointer++] = '\r'; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
62 text[textPointer] = 0; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
63 |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
64 if((line == 0) || (line == 2)) |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
65 { |
|
521
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
66 text[textPointer++] = TXT_2BYTE; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
67 text[textPointer++] = TXT2BYTE_ExtraDisplay; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
68 text[textPointer++] = ' '; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
69 text[textPointer++] = ' '; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
70 text[textPointer++] = TXT_2BYTE; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
71 |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
72 switch(settingsGetPointer()->extraDisplay) |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
73 { |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
74 /* BigFont */ |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
75 case EXTRADISPLAY_BIGFONT: |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
76 text[textPointer++] = TXT2BYTE_ExtraBigFont; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
77 break; |
| 739 | 78 /* Start screen */ |
| 79 case EXTRADISPLAY_BFACTIVE: | |
| 80 text[textPointer++] = TXT2BYTE_ExtraActive; | |
|
521
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
81 break; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
82 /* none */ |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
83 case EXTRADISPLAY_none: |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
84 text[textPointer++] = TXT2BYTE_ExtraNone; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
85 break; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
86 |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
87 default: |
| 630 | 88 snprintf(&text[textPointer++],4,"%u",settingsGetPointer()->extraDisplay); |
|
521
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
89 break; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
90 } |
|
506
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
91 } |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
92 strcpy(&text[textPointer],"\n\r"); |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
93 textPointer += 2; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
94 |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
95 if((line == 0) || (line == 3)) |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
96 { |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
97 text[textPointer++] = TXT_2BYTE; |
|
521
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
98 text[textPointer++] = TXT2BYTE_SelectCustomviews; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
99 } |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
100 strcpy(&text[textPointer],"\n\r"); |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
101 textPointer += 2; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
102 |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
103 if((line == 0) || (line == 4)) |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
104 { |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
105 text[textPointer++] = TXT_2BYTE; |
|
506
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
106 text[textPointer++] = TXT2BYTE_SelectBigFont; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
107 } |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
108 strcpy(&text[textPointer],"\n\r"); |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
109 textPointer += 2; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
110 |
|
521
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
111 #ifdef ENABLE_MOTION_CONTROL |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
112 if((line == 0) || (line == 5)) |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
113 { |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
114 /* MotionCtrl */ |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
115 text[textPointer++] = TXT_2BYTE; |
|
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
116 text[textPointer++] = TXT2BYTE_MotionCtrl; |
|
552
531e7818b737
Added menu structure to acces viewport calibration:
Ideenmodellierer
parents:
521
diff
changeset
|
117 } |
|
531e7818b737
Added menu structure to acces viewport calibration:
Ideenmodellierer
parents:
521
diff
changeset
|
118 |
|
531e7818b737
Added menu structure to acces viewport calibration:
Ideenmodellierer
parents:
521
diff
changeset
|
119 strcpy(&text[textPointer],"\n\r"); |
|
531e7818b737
Added menu structure to acces viewport calibration:
Ideenmodellierer
parents:
521
diff
changeset
|
120 textPointer += 2; |
|
521
e221cf762f45
Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents:
506
diff
changeset
|
121 #endif |
| 951 | 122 |
|
1005
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
123 if((line == 0) || (line == 5)) |
| 951 | 124 { |
|
1005
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
125 text[textPointer++] = TXT_2BYTE; |
|
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
126 text[textPointer++] = TXT2BYTE_FLIPDISPLAY; |
|
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
127 text[textPointer++] = '\t'; |
|
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
128 if(settingsGetPointer()->FlipDisplay) |
|
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
129 text[textPointer++] = '\005'; |
|
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
130 else |
|
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
131 text[textPointer++] = '\006'; |
|
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
132 text[textPointer] = 0; |
|
85f7e19c6688
Switch menu position of Buzzer and flipdisplay option:
Ideenmodellierer
parents:
999
diff
changeset
|
133 |
| 951 | 134 } |
| 135 | |
| 136 strcpy(&text[textPointer],"\n\r"); | |
| 137 textPointer += 2; | |
| 138 | |
|
506
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
139 return StMCustom; |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
140 } |
|
998529b3e142
Added new top level menu for customization of views
Ideenmodellierer
parents:
diff
changeset
|
141 |
