annotate Discovery/Src/tMenuEditCustom.c @ 835:717b460294cd Evo_2_23

Added autofocus for BF Navigation view: In case of activated autofocus feature for big font the navigation view will now be activated in case the OSTC4 is hold in horizontal position (like it is for example done if you take a bearing). The OSTC4 will return to the previous view in case the OSTC4 is no longer hold in horizontal position.
author Ideenmodellierer
date Sun, 17 Dec 2023 21:49:02 +0100
parents 2a8af51ab04d
children 8d6c35655d4d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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/tMenuEditXtra.c
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
5 /// \brief Menu Edit Xtra - Specials in Divemode like Reset Stopwatch
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 02-Mar-2015
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-2018 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 "tMenuEditCustom.h"
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
31
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
32 #include "gfx_fonts.h"
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
33 #include "simulation.h"
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
34 #include "timer.h"
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
35 #include "tMenuEdit.h"
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
36 #include "tHome.h" // for enum CUSTOMVIEWS and init_t7_compass()
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
37 #include "t3.h"
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
38 #include "t7.h"
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
39 #include "data_exchange_main.h"
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
40 #include "motion.h"
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
41 #include "tMenu.h"
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
42 #include "tMenuSystem.h"
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
43 #include <math.h>
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
44
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
45
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
46 #define CV_PER_PAGE (5u) /* number of cv selections shown at one page */
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
47 #define MAX_BACKLIGHT_BOOST (2u) /* max number of backlight levels which may be increased during focus state */
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
48
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
49 #define MAX_FOCUS_LIMITER (2u) /* max number for reducing the spot used for focus detection */
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
50
835
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
51 /* defines for autofocus of compass */
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
52 #define AF_COMPASS_ACTIVATION_ANGLE (5.0f) /* angle for pitch and roll. Compass gets activated in case the value is smaller (OSTC4 hold in horitontal position */
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
53 #define AF_COMPASS_DEBOUNCE (10u) /* debouncing value to avoid compass activation during normal movement */
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
54
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
55 static uint8_t customviewsSubpage = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
56 static uint8_t customviewsSubpageMax = 0; /* number of pages needed to display all selectable views */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
57 static const uint8_t* pcv_curchangelist;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
58 /* Private function prototypes -----------------------------------------------*/
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
59 void openEdit_Customview(void);
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
60 void openEdit_BigScreen(void);
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
61 void openEdit_MotionCtrl(void);
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
62 void openEdit_ViewPort(void);
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
63 void refresh_Customviews(void);
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
64 char customview_TXT2BYTE_helper(uint8_t customViewId);
820
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
65 char customviewBF_TXT2BYTE_helper(uint8_t customViewId);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
66 /* Announced function prototypes -----------------------------------------------*/
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
67 uint8_t OnAction_CViewTimeout (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
68 uint8_t OnAction_CViewStandard (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
69 uint8_t OnAction_CViewStandardBF(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
70 uint8_t OnAction_CViewAutofocusBF(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
71 uint8_t OnAction_CornerTimeout (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
72 uint8_t OnAction_CornerStandard(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
73 uint8_t OnAction_CViewPortCalib(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
74 uint8_t OnAction_CViewPortLayout(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
75 uint8_t OnAction_CViewPortAmbient(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
76 uint8_t OnAction_CViewPortControl(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
77 uint8_t OnAction_CViewPortSpot(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
78 /* Exported functions --------------------------------------------------------*/
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
79
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
80
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
81
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
82
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
83 void refresh_Customviews(void)
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
84 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
85 char text[32];
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
86 uint8_t textpointer = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
87
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
88 // header
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
89 text[0] = '\001';
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
90 text[1] = TXT_2BYTE;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
91 text[2] = TXT2BYTE_Customviews;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
92 text[3] = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
93 write_topline(text);
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 // custom view center return
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
96 textpointer = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
97 text[textpointer++] = TXT_2BYTE;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
98 text[textpointer++] = TXT2BYTE_CViewTimeout;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
99 textpointer += snprintf(&text[textpointer],11," %02u\016\016 %c\017",settingsGetPointer()->tX_customViewTimeout,TXT_Seconds);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
100 write_label_var( 30, 700, ME_Y_LINE1, &FontT48, text);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
101
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
102 // custom view center primary
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
103 text[0] = TXT_2BYTE;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
104 text[1] = TXT2BYTE_CViewStandard;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
105 text[2] = ' ';
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
106 text[3] = ' ';
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
107
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
108 text[4] = TXT_2BYTE;
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
109 text[5] = customview_TXT2BYTE_helper(settingsGetPointer()->tX_customViewPrimary);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
110 text[6] = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
111 write_label_var( 30, 700, ME_Y_LINE2, &FontT48, text);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
112
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
113 // custom view big font
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
114 text[0] = TXT_2BYTE;
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
115 text[1] = TXT2BYTE_ExtraDisplay;
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
116 text[2] = ' ';
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
117 text[3] = ' ';
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
118 text[4] = TXT_2BYTE;
820
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
119 text[5] = customviewBF_TXT2BYTE_helper(settingsGetPointer()->tX_customViewPrimaryBF);
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
120 text[6] = 0;
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
121 write_label_var( 30, 700, ME_Y_LINE3, &FontT48, text);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
122
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
123 /* Bigfont autofocus selector */
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
124 textpointer = 0;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
125 text[textpointer++] = TXT_2BYTE;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
126 text[textpointer++] = TXT2BYTE_ExtraDisplay;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
127 textpointer += snprintf(&text[textpointer],20," %c%c",TXT_2BYTE, TXT2BYTE_Autofocus);
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
128 write_label_var( 30, 700, ME_Y_LINE4, &FontT48, text);
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
129
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
130 tMenuEdit_refresh_field(StMCustom1_CViewAutoFocusBF);
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
131
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
132
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
133 // field corner return
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
134 textpointer = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
135 text[textpointer++] = TXT_2BYTE;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
136 text[textpointer++] = TXT2BYTE_CornerTimeout;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
137 textpointer += snprintf(&text[textpointer],11," %02u\016\016 %c\017",settingsGetPointer()->tX_userselectedLeftLowerCornerTimeout,TXT_Seconds);
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
138 write_label_var( 30, 700, ME_Y_LINE5, &FontT48, text);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
139
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
140 // field corner primary
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
141 text[0] = TXT_2BYTE;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
142 text[1] = TXT2BYTE_CornerStandard;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
143 text[2] = ' ';
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
144 text[3] = ' ';
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
145 switch(settingsGetPointer()->tX_userselectedLeftLowerCornerPrimary)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
146 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
147 /* Temperature */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
148 case LLC_Temperature:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
149 text[4] = TXT_Temperature;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
150 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
151 /* Average Depth */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
152 case LLC_AverageDepth:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
153 text[4] = TXT_AvgDepth;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
154 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
155 /* ppO2 */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
156 case LLC_ppO2:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
157 text[4] = TXT_ppO2;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
158 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
159 /* Stop Uhr */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
160 case LLC_Stopwatch:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
161 text[4] = TXT_Stopwatch;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
162 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
163 /* Ceiling */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
164 case LLC_Ceiling:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
165 text[4] = TXT_Ceiling;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
166 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
167 /* Future TTS */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
168 case LLC_FutureTTS:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
169 text[4] = TXT_FutureTTS;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
170 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
171 /* CNS */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
172 case LLC_CNS:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
173 text[4] = TXT_CNS;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
174 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
175 case LLC_GF:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
176 text[4] = TXT_ActualGradient;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
177 break;
656
3ccf13af4651 Added visualization of scrubber time:
Ideenmodellierer
parents: 640
diff changeset
178 case LLC_ScrubberTime:
3ccf13af4651 Added visualization of scrubber time:
Ideenmodellierer
parents: 640
diff changeset
179 text[4] = TXT_ScrubTime;
3ccf13af4651 Added visualization of scrubber time:
Ideenmodellierer
parents: 640
diff changeset
180 break;
3ccf13af4651 Added visualization of scrubber time:
Ideenmodellierer
parents: 640
diff changeset
181
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
182 #ifdef ENABLE_BOTTLE_SENSOR
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
183 case LCC_BottleBar:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
184 text[4] = TXT_AtemGasVorrat;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
185 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
186 #endif
662
1b995079c045 PSCR Mode
heinrichs weikamp
parents: 656
diff changeset
187
1b995079c045 PSCR Mode
heinrichs weikamp
parents: 656
diff changeset
188 #ifdef ENABLE_PSCR_MODE
1b995079c045 PSCR Mode
heinrichs weikamp
parents: 656
diff changeset
189 case LCC_SimPpo2:
1b995079c045 PSCR Mode
heinrichs weikamp
parents: 656
diff changeset
190 text[4] = TXT_SimPpo2;
1b995079c045 PSCR Mode
heinrichs weikamp
parents: 656
diff changeset
191 break;
1b995079c045 PSCR Mode
heinrichs weikamp
parents: 656
diff changeset
192 #endif
751
70e9c83ecf22 resolv merge
Ideenmodellierer
parents: 750
diff changeset
193 #ifdef ENABLE_CO2_SUPPORT
70e9c83ecf22 resolv merge
Ideenmodellierer
parents: 750
diff changeset
194 case LCC_CO2:
70e9c83ecf22 resolv merge
Ideenmodellierer
parents: 750
diff changeset
195 text[4] = TXT_CO2Sensor;
70e9c83ecf22 resolv merge
Ideenmodellierer
parents: 750
diff changeset
196 break;
70e9c83ecf22 resolv merge
Ideenmodellierer
parents: 750
diff changeset
197 #endif
737
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
198 case LLC_Compass:
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
199 text[4] = TXT_2BYTE;
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
200 text[5] = TXT2BYTE_Compass;
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
201
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
202 break;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
203 /* none */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
204 case LLC_Empty:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
205 text[4] = '-';
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
206 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
207 default:
630
b9d4baa4f6fa Warnings:
Ideenmodellierer
parents: 626
diff changeset
208 text[4] = 'X';
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
209 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
210 }
737
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
211 if (text[4] != TXT_2BYTE) {
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
212 text[5] = 0;
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
213 } else {
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
214 text[6] = 0;
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
215 }
5071d554aaa5 NEW: Add mini compass with marker declination indication
heinrichsweikamp
parents: 706
diff changeset
216
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
217 write_label_var( 30, 700, ME_Y_LINE6, &FontT48, text);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
218
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
219 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
220 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
221
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
222 void refresh_ViewPort(void)
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
223 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
224 char text[32];
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
225 uint8_t textIndex = 0;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
226 float distance = 0.0;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
227 SSettings* pSettings = settingsGetPointer();
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
228 GFX_DrawCfgScreen* pdrawScreen;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
229 point_t lowerleft = {0,0};
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
230 point_t upperright = {799,479};
575
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
231 float localLimit = 0.1;
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
232 uint8_t spotSize = (pSettings->viewPortMode >> 5) & 0x03;
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
233
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
234 text[0] = '\001';
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
235 text[1] = TXT_2BYTE;
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
236 text[2] = TXT2BYTE_MotionCtrl;
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
237 text[3] = 0;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
238 write_topline(text);
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
239
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
240 text[0] = TXT_2BYTE;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
241 text[1] = TXT2BYTE_CalibView;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
242 text[2] = 0;
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
243 write_label_var( 30, 700, ME_Y_LINE2, &FontT48, text);
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
244
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
245
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
246 textIndex = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
247 text[textIndex++] = TXT_2BYTE;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
248 text[textIndex++] = TXT2BYTE_FocusSpotSize;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
249 text[textIndex++] = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
250 write_label_var( 30, 340, ME_Y_LINE3, &FontT48, text);
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
251
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
252 textIndex = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
253 text[textIndex++] = TXT_2BYTE;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
254 switch(spotSize)
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
255 {
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
256 case 2: text[textIndex++] = TXT2BYTE_Minimum; break;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
257 case 1: text[textIndex++] = TXT2BYTE_Normal; break;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
258 default:
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
259 case 0: text[textIndex++] = TXT2BYTE_Maximum; break;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
260 }
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
261 text[textIndex++] = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
262 write_label_var( 500, 800, ME_Y_LINE3, &FontT48, text);
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
263
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
264 textIndex = 0;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
265 text[textIndex++] = TXT_2BYTE;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
266 text[textIndex++] = TXT2BYTE_IndicateFrame;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
267 text[textIndex++] = 0;
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
268 write_label_var( 30, 340, ME_Y_LINE4, &FontT48, text);
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
269 textIndex = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
270 text[textIndex++] = '\006' - ((settingsGetPointer()->viewPortMode >> 4) & 1);
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
271 text[textIndex++] = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
272 write_label_var( 500, 800, ME_Y_LINE4, &FontT48, text);
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
273 textIndex = 0;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
274 text[textIndex++] = TXT_2BYTE;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
275 text[textIndex++] = TXT2BYTE_BoostBacklight;
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
276 text[textIndex++] = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
277 write_label_var( 30, 340, ME_Y_LINE5, &FontT48, text);
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
278 textIndex = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
279 snprintf(&text[textIndex],32,"%d",(settingsGetPointer()->viewPortMode & 0x3));
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
280 write_label_var( 500, 800, ME_Y_LINE5, &FontT48, text);
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
281
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
282 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
283
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
284 /* test if we are in focus */
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
285 if((pSettings->viewPitch != 0.0) || (pSettings->viewRoll != 0.0) || (pSettings->viewYaw != 0.0))
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
286 {
625
028d8f3a9410 Switch Sector / Scroll detection to vector implementation:
Ideenmodellierer
parents: 604
diff changeset
287 distance = checkViewport(stateUsed->lifeData.compass_roll, stateUsed->lifeData.compass_pitch, stateUsed->lifeData.compass_heading, MOTION_ENABLE_ALL);
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
288
575
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
289 /* show "bar graph" indicating the distance to the center point */
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
290 textIndex = 0;
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
291 text[textIndex++] = '\001';
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
292
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
293 if(fabs(distance) < localLimit)
575
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
294 {
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
295 text[textIndex++] = '+';
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
296 }
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
297 else
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
298 {
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
299 while (localLimit < 0.6)
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
300 {
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
301 localLimit += 0.1;
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
302 text[textIndex++] = '-';
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
303 text[textIndex++] = '-';
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
304 if(fabs(distance) < localLimit)
575
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
305 {
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
306 break;
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
307 }
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
308 }
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
309 }
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
310 text[textIndex] = 0;
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
311 write_label_var( 30, 700, ME_Y_LINE1, &FontT48, text);
86c4baa6ba29 Change style of viewport calibration menu:
Ideenmodellierer
parents: 572
diff changeset
312
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
313 /* MotionCtrl */
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
314 textIndex = 0;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
315
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
316 text[textIndex++] = TXT_2BYTE;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
317 text[textIndex++] = TXT2BYTE_MotionCtrl;
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
318 text[textIndex++] = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
319 write_label_var( 30, 340, ME_Y_LINE6, &FontT48, text);
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
320 textIndex = 0;
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
321 text[textIndex++] = TXT_2BYTE;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
322 switch(settingsGetPointer()->MotionDetection)
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
323 {
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
324 case MOTION_DETECT_OFF:
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
325 text[textIndex++] = TXT2BYTE_MoCtrlNone;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
326 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
327 case MOTION_DETECT_MOVE:
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
328 text[textIndex++] = TXT2BYTE_MoCtrlPitch;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
329 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
330 case MOTION_DETECT_SECTOR:
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
331 text[textIndex++] = TXT2BYTE_MoCtrlSector;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
332 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
333 case MOTION_DETECT_SCROLL:
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
334 text[textIndex++] = TXT2BYTE_MoCtrlScroll;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
335 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
336 default:
630
b9d4baa4f6fa Warnings:
Ideenmodellierer
parents: 626
diff changeset
337 textIndex += snprintf(&text[4],4,"%u",settingsGetPointer()->MotionDetection);
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
338 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
339 }
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
340 text[textIndex] = 0;
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
341 write_label_var(500, 800, ME_Y_LINE6, &FontT48, text);
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
342
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
343
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
344 if(viewInFocus())
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
345 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
346 set_Backlight_Boost(settingsGetPointer()->viewPortMode & 0x03);
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
347 if((pSettings->viewPortMode >> 4) & 0x01)
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
348 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
349 pdrawScreen = getMenuEditScreen();
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
350 GFX_draw_box(pdrawScreen,lowerleft,upperright,0,CLUT_NiceGreen);
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
351 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
352 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
353 else
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
354 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
355 set_Backlight_Boost(0);
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
356 if((pSettings->viewPortMode >> 4) & 0x01)
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
357 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
358 pdrawScreen = getMenuEditScreen();
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
359 GFX_draw_box(pdrawScreen,lowerleft,upperright,0,CLUT_MenuTopBackground);
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
360 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
361 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
362 resetFocusState(); /* no other instance shall be impacted by the local detection */
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
363 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
364 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
365
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
366 void openEdit_Custom(uint8_t line)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
367 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
368 set_globalState_Menu_Line(line);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
369
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
370 switch(line)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
371 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
372 case 1:
706
10b7d271b9c4 Bugfix: only reset menu if a new sub menu is created:
Ideenmodellierer
parents: 700
diff changeset
373 default: openEdit_Customview();
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
374 break;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
375 case 2: openEdit_BigScreen();
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
376 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
377 case 3: openEdit_CustomviewDivemode(cv_changelist);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
378 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
379 case 4: openEdit_CustomviewDivemode(cv_changelist_BS);
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
380 break;
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
381 case 5: openEdit_ViewPort();
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
382 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
383 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
384 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
385
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
386 /* Private functions ---------------------------------------------------------*/
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
387 void openEdit_Customview(void)
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
388 {
706
10b7d271b9c4 Bugfix: only reset menu if a new sub menu is created:
Ideenmodellierer
parents: 700
diff changeset
389 resetMenuEdit(CLUT_MenuPageCustomView);
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
390 refresh_Customviews();
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
391
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
392 write_field_button(StMCustom1_CViewTimeout, 400, 700, ME_Y_LINE1, &FontT48, "");
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
393 write_field_button(StMCustom1_CViewStandard, 400, 700, ME_Y_LINE2, &FontT48, "");
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
394 write_field_button(StMCustom1_CViewStandardBF, 400, 700, ME_Y_LINE3, &FontT48, "");
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
395 write_field_on_off(StMCustom1_CViewAutoFocusBF, 650, 700, ME_Y_LINE4, &FontT48, "", settingsGetPointer()->cvAutofocus);
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
396 write_field_button(StMCustom1_CornerTimeout, 400, 700, ME_Y_LINE5, &FontT48, "");
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
397 write_field_button(StMCustom1_CornerStandard, 400, 700, ME_Y_LINE6, &FontT48, "");
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
398
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
399 setEvent(StMCustom1_CViewTimeout, (uint32_t)OnAction_CViewTimeout);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
400 setEvent(StMCustom1_CViewStandard, (uint32_t)OnAction_CViewStandard);
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
401 setEvent(StMCustom1_CViewStandardBF, (uint32_t)OnAction_CViewStandardBF);
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
402 setEvent(StMCustom1_CViewAutoFocusBF, (uint32_t)OnAction_CViewAutofocusBF);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
403 setEvent(StMCustom1_CornerTimeout, (uint32_t)OnAction_CornerTimeout);
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
404 setEvent(StMCustom1_CornerStandard, (uint32_t)OnAction_CornerStandard);
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
405 }
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
406
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
407 void openEdit_BigScreen(void)
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
408 {
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
409 uint8_t newValue = 0;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
410 SSettings *pSettings = settingsGetPointer();
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
411
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
412 newValue = pSettings->extraDisplay + 1;
739
4a6bffaa38b3 Enable start dive in Big font display:
Ideenmodellierer
parents: 737
diff changeset
413
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
414 if(newValue >= EXTRADISPLAY_END)
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
415 {
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
416 newValue = EXTRADISPLAY_none;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
417 }
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
418 pSettings->extraDisplay = newValue;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
419
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
420 exitMenuEdit_to_Menu_with_Menu_Update_do_not_write_settings_for_this_only();
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
421 }
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
422
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
423 void openEdit_MotionCtrl(void)
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
424 {
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
425 uint8_t newValue = 0;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
426 SSettings *pSettings = settingsGetPointer();
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
427
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
428 switch(pSettings->MotionDetection)
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
429 {
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
430 case MOTION_DETECT_OFF:
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
431 newValue = MOTION_DETECT_MOVE;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
432 break;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
433 case MOTION_DETECT_MOVE:
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
434 newValue = MOTION_DETECT_SECTOR;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
435 break;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
436 case MOTION_DETECT_SECTOR:
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
437 newValue = MOTION_DETECT_SCROLL;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
438 break;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
439 case MOTION_DETECT_SCROLL:
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
440 newValue = MOTION_DETECT_OFF;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
441 break;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
442 default:
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
443 newValue = MOTION_DETECT_OFF;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
444 break;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
445 }
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
446 pSettings->MotionDetection = newValue;
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
447 InitMotionDetection();
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
448
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
449 exitMenuEdit_to_Menu_with_Menu_Update_do_not_write_settings_for_this_only();
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
450 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
451
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
452
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
453
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
454 void openEdit_ViewPort(void)
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
455 {
706
10b7d271b9c4 Bugfix: only reset menu if a new sub menu is created:
Ideenmodellierer
parents: 700
diff changeset
456 resetMenuEdit(CLUT_MenuPageCustomView);
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
457 refresh_ViewPort();
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
458
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
459 write_field_button(StMCustom5_CViewPortCalib, 400, 700, ME_Y_LINE2, &FontT48, "");
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
460 write_field_button(StMCustom5_CViewPortSpotSize,400, 700, ME_Y_LINE3, &FontT48, "");
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
461 write_field_button(StMCustom5_CViewPortLayout, 400, 700, ME_Y_LINE4, &FontT48, "");
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
462 write_field_button(StMCustom5_CViewPortAmbient, 400, 700, ME_Y_LINE5, &FontT48, "");
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
463 write_field_button(StMCustom5_CViewPortControl, 400, 700, ME_Y_LINE6, &FontT48, "");
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
464
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
465 setEvent(StMCustom5_CViewPortCalib, (uint32_t)OnAction_CViewPortCalib);
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
466 setEvent(StMCustom5_CViewPortSpotSize, (uint32_t)OnAction_CViewPortSpot);
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
467 setEvent(StMCustom5_CViewPortLayout, (uint32_t)OnAction_CViewPortLayout);
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
468 setEvent(StMCustom5_CViewPortAmbient, (uint32_t)OnAction_CViewPortAmbient);
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
469 setEvent(StMCustom5_CViewPortControl, (uint32_t)OnAction_CViewPortControl);
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
470 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
471
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
472
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
473 char customview_TXT2BYTE_helper(uint8_t customViewId)
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
474 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
475 char text = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
476
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
477 switch(customViewId)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
478 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
479 case CVIEW_sensors:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
480 text = TXT2BYTE_O2monitor;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
481 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
482 case CVIEW_sensors_mV:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
483 text = TXT2BYTE_O2voltage;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
484 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
485 case CVIEW_Compass:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
486 text = TXT2BYTE_Compass;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
487 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
488 case CVIEW_Decolist:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
489 text = TXT2BYTE_Decolist;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
490 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
491 case CVIEW_Tissues:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
492 text = TXT2BYTE_Tissues;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
493 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
494 case CVIEW_Profile:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
495 text = TXT2BYTE_Profile;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
496 break;
531
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
497 case CVIEW_Gaslist:
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
498 text = TXT2BYTE_Gaslist;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
499 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
500 case CVIEW_EADTime:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
501 text = TXT2BYTE_Info;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
502 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
503 case CVIEW_SummaryOfLeftCorner:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
504 text = TXT2BYTE_Summary;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
505 break;
805
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 751
diff changeset
506 case CVIEW_Timer:
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 751
diff changeset
507 text = TXT2BYTE_Timer;
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 751
diff changeset
508 break;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
509 case CVIEW_noneOrDebug:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
510 text = TXT2BYTE_DispNoneDbg;
820
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
511 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
512 default:
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
513 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
514 }
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
515 return text;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
516 }
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
517 char customviewBF_TXT2BYTE_helper(uint8_t customViewId)
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
518 {
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
519 char text = 0;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
520
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
521 switch(customViewId)
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
522 {
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
523 case CVIEW_T3_noneOrDebug:
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
524 text = TXT2BYTE_DispNoneDbg;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
525 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
526 case CVIEW_T3_sensors:
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
527 text = TXT2BYTE_O2monitor;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
528 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
529 case CVIEW_T3_Compass:
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
530 text = TXT2BYTE_Compass;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
531 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
532 case CVIEW_T3_Decostop:
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
533 text = TXT2BYTE_Decolist;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
534 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
535 #ifdef ENABLE_T3_PROFILE_VIEW
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
536 case CVIEW_T3_Profile:
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
537 text = TXT2BYTE_Profile;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
538 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
539 #endif
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
540 case CVIEW_T3_GasList:
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
541 text = TXT2BYTE_Gaslist;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
542 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
543 case CVIEW_T3_MaxDepth:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
544 text = TXT2BYTE_MaxDepth;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
545 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
546 case CVIEW_T3_StopWatch:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
547 text = TXT2BYTE_Stopwatch;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
548 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
549 case CVIEW_T3_TTS:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
550 text = TXT2BYTE_TTS;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
551 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
552 case CVIEW_T3_ppO2andGas:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
553 text = TXT2BYTE_ppoNair;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
554 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
555 case CVIEW_T3_Navigation:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
556 text = TXT2BYTE_Navigation;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
557 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
558 case CVIEW_T3_DepthData:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
559 text = TXT2BYTE_DepthData;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
560 break;
542
6960df7ddb09 Added new t3 view showing first deco stop and tts in parallel:
Ideenmodellierer
parents: 541
diff changeset
561 case CVIEW_T3_DecoTTS:
6960df7ddb09 Added new t3 view showing first deco stop and tts in parallel:
Ideenmodellierer
parents: 541
diff changeset
562 text = TXT2BYTE_DecoTTS;
6960df7ddb09 Added new t3 view showing first deco stop and tts in parallel:
Ideenmodellierer
parents: 541
diff changeset
563 break;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
564 default:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
565 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
566 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
567 return text;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
568 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
569
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
570 uint8_t OnAction_CViewTimeout(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
571 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
572 uint8_t value;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
573 value = settingsGetPointer()->tX_customViewTimeout;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
574
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
575 if(value < 5)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
576 value = 5;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
577 else if(value < 10)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
578 value = 10;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
579 else if(value < 15)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
580 value = 15;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
581 else if(value < 20)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
582 value = 20;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
583 else if(value < 30)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
584 value = 30;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
585 else if(value < 45)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
586 value = 45;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
587 else if(value < 60)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
588 value = 60;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
589 else
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
590 value = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
591
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
592 settingsGetPointer()->tX_customViewTimeout = value;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
593 return UPDATE_DIVESETTINGS;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
594 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
595
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
596
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
597 uint8_t OnAction_CViewStandard(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
598 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
599 uint8_t newValue;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
600 switch(settingsGetPointer()->tX_customViewPrimary)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
601 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
602 case CVIEW_sensors:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
603 newValue = CVIEW_sensors_mV;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
604 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
605 case CVIEW_sensors_mV:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
606 newValue = CVIEW_Compass;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
607 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
608 case CVIEW_Compass:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
609 newValue = CVIEW_Decolist;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
610 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
611 case CVIEW_Decolist:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
612 newValue = CVIEW_Tissues;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
613 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
614 case CVIEW_Tissues:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
615 newValue = CVIEW_Profile;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
616 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
617 case CVIEW_Profile:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
618 newValue = CVIEW_Gaslist;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
619 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
620 case CVIEW_Gaslist:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
621 newValue = CVIEW_EADTime;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
622 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
623 case CVIEW_EADTime:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
624 newValue = CVIEW_SummaryOfLeftCorner;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
625 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
626 case CVIEW_SummaryOfLeftCorner:
805
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 751
diff changeset
627 newValue = CVIEW_Timer;
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 751
diff changeset
628 break;
dd7ce655db26 Adds a simple countdown timer, available as a custom view in surface and dive mode.
heinrichsweikamp
parents: 751
diff changeset
629 case CVIEW_Timer:
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
630 newValue = CVIEW_noneOrDebug;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
631 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
632 case CVIEW_noneOrDebug:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
633 default:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
634 newValue = CVIEW_sensors;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
635 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
636 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
637 settingsGetPointer()->tX_customViewPrimary = newValue;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
638 return UPDATE_DIVESETTINGS;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
639 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
640
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
641 uint8_t OnAction_CViewStandardBF(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
642 {
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
643 uint8_t index = 0;
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
644 uint8_t newValue;
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
645
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
646 /* list contains all views which may be selected => get index of current setting */
820
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
647 while((settingsGetPointer()->tX_customViewPrimaryBF != cv_changelist_BS[index]) && (cv_changelist_BS[index] != CVIEW_T3_END))
541
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
648 {
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
649 index++;
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
650 }
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
651 if((cv_changelist_BS[index] == CVIEW_T3_END) || (cv_changelist_BS[index+1] == CVIEW_T3_END)) /* invalid or last setting */
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
652 {
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
653 newValue = cv_changelist_BS[0];
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
654 }
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
655 else
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
656 {
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
657 newValue = cv_changelist_BS[index + 1];
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
658 }
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
659
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
660 settingsGetPointer()->tX_customViewPrimaryBF = newValue;
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
661 return UPDATE_DIVESETTINGS;
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
662 }
6fbf7cd391cb Added default view selection and auto return to view to t3 visualization:
Ideenmodellierer
parents: 531
diff changeset
663
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
664 uint8_t OnAction_CViewAutofocusBF(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
665 {
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
666 SSettings *pSettings = settingsGetPointer();
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
667 if(pSettings->cvAutofocus)
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
668 {
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
669 pSettings->cvAutofocus = 0;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
670 }
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
671 else
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
672 {
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
673 pSettings->cvAutofocus = 1;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
674 }
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
675 tMenuEdit_set_on_off(editId, pSettings->cvAutofocus);
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
676 return UPDATE_DIVESETTINGS;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
677 }
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
678
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
679 uint8_t OnAction_CornerTimeout(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
680 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
681 uint8_t value;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
682 value = settingsGetPointer()->tX_userselectedLeftLowerCornerTimeout;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
683
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
684 if(value < 5)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
685 value = 5;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
686 else if(value < 10)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
687 value = 10;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
688 else if(value < 15)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
689 value = 15;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
690 else if(value < 20)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
691 value = 20;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
692 else if(value < 30)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
693 value = 30;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
694 else if(value < 45)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
695 value = 45;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
696 else if(value < 60)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
697 value = 60;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
698 else
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
699 value = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
700
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
701 settingsGetPointer()->tX_userselectedLeftLowerCornerTimeout = value;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
702 return UPDATE_DIVESETTINGS;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
703 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
704
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
705
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
706 uint8_t OnAction_CornerStandard(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
707 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
708 uint8_t value;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
709 value = settingsGetPointer()->tX_userselectedLeftLowerCornerPrimary;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
710
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
711 value += 1;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
712
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
713 if(value >= LLC_END)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
714 value = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
715
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
716 settingsGetPointer()->tX_userselectedLeftLowerCornerPrimary = value;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
717 return UPDATE_DIVESETTINGS;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
718 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
719
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
720
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
721 uint8_t OnAction_Customview_Toggle(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
722 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
723
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
724 uint8_t line = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
725 SSettings *pSettings = settingsGetPointer();
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
726
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
727 switch(editId)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
728 {
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
729 case StMCustom3_CViewSelection1: line = 1;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
730 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
731 case StMCustom3_CViewSelection2: line = 2;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
732 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
733 case StMCustom3_CViewSelection3: line = 3;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
734 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
735 case StMCustom3_CViewSelection4: line = 4;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
736 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
737 case StMCustom3_CViewSelection5: line = 5;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
738 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
739
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
740 default:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
741 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
742 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
743 if(pcv_curchangelist == cv_changelist)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
744 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
745 pSettings->cv_configuration ^= 1 << (pcv_curchangelist[customviewsSubpage * 5 + line-1]);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
746 if(t7_GetEnabled_customviews() == 0)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
747 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
748 pSettings->cv_configuration ^= (1 << CVIEW_noneOrDebug);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
749 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
750 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
751 else
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
752 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
753 pSettings->cv_config_BigScreen ^= 1 << (pcv_curchangelist[customviewsSubpage * 5 + line-1]);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
754 if(t3_GetEnabled_customviews() == 0)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
755 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
756 pSettings->cv_config_BigScreen ^= (1 << CVIEW_noneOrDebug);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
757 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
758 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
759 return UPDATE_DIVESETTINGS;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
760 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
761
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
762
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
763 uint8_t OnAction_Customview_NextPage(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
764 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
765 customviewsSubpage++;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
766 if(customviewsSubpage == customviewsSubpageMax)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
767 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
768 customviewsSubpage = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
769 }
750
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
770 CustomviewDivemode_refresh();
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
771 return UPDATE_DIVESETTINGS;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
772 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
773
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
774 uint8_t OnAction_CViewPortCalib(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
775 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
776 float heading;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
777 if(settingsGetPointer()->compassInertia)
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
778 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
779 heading = (uint16_t)compass_getCompensated();
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
780 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
781 else
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
782 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
783 heading = (uint16_t)stateUsed->lifeData.compass_heading;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
784 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
785 calibrateViewport(stateUsed->lifeData.compass_roll,stateUsed->lifeData.compass_pitch,heading);
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
786
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
787 return UPDATE_DIVESETTINGS;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
788 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
789 uint8_t OnAction_CViewPortLayout(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
790 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
791 SSettings* pSettings = settingsGetPointer();
700
c28c09017210 Bugfix motioncontrol frame deactivation:
Ideenmodellierer
parents: 662
diff changeset
792 if((pSettings->viewPortMode & 0x10) != 0)
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
793 {
640
f735f1123526 Development bugfix Viewport settings:
Ideenmodellierer
parents: 630
diff changeset
794 pSettings->viewPortMode &= 0xEF; /* 1110 1111 */
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
795 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
796 else
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
797 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
798 pSettings->viewPortMode |= 0x10;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
799 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
800
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
801 return UPDATE_DIVESETTINGS;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
802 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
803 uint8_t OnAction_CViewPortAmbient(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
804 {
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
805 SSettings* pSettings = settingsGetPointer();
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
806 if(((pSettings->viewPortMode +1) & 0x03) <= MAX_BACKLIGHT_BOOST)
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
807 {
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
808 pSettings->viewPortMode++;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
809 }
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
810 else
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
811 {
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
812 pSettings->viewPortMode &= 0xFC;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
813 }
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
814
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
815 return UPDATE_DIVESETTINGS;
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
816 }
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
817
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
818 uint8_t OnAction_CViewPortControl(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
819 {
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
820 uint8_t newValue = 0;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
821 SSettings *pSettings = settingsGetPointer();
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
822
604
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
823 switch(pSettings->MotionDetection)
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
824 {
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
825 case MOTION_DETECT_OFF:
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
826 newValue = MOTION_DETECT_MOVE;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
827 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
828 case MOTION_DETECT_MOVE:
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
829 newValue = MOTION_DETECT_SECTOR;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
830 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
831 case MOTION_DETECT_SECTOR:
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
832 newValue = MOTION_DETECT_SCROLL;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
833 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
834 case MOTION_DETECT_SCROLL:
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
835 newValue = MOTION_DETECT_OFF;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
836 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
837 default:
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
838 newValue = MOTION_DETECT_OFF;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
839 break;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
840 }
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
841 pSettings->MotionDetection = newValue;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
842 return UPDATE_DIVESETTINGS;
fb5bb04ad914 Merged menu items of viewport and motion control:
Ideenmodellierer
parents: 600
diff changeset
843 }
552
531e7818b737 Added menu structure to acces viewport calibration:
Ideenmodellierer
parents: 542
diff changeset
844
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
845 uint8_t OnAction_CViewPortSpot(uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
846 {
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
847 uint8_t newValue = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
848 SSettings *pSettings = settingsGetPointer();
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
849
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
850 newValue = ((pSettings->viewPortMode >> 5) + 1) & 0x03;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
851 if(newValue > MAX_FOCUS_LIMITER)
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
852 {
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
853 newValue = 0;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
854 }
640
f735f1123526 Development bugfix Viewport settings:
Ideenmodellierer
parents: 630
diff changeset
855 pSettings->viewPortMode &= 0x9F; /* 1001 1111 */
626
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
856 pSettings->viewPortMode |= (newValue << 5);
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
857 return UPDATE_DIVESETTINGS;
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
858 }
3e1a0e267f38 Added option to select sensitivity of focus detection:
Ideenmodellierer
parents: 625
diff changeset
859
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
860 void openEdit_CustomviewDivemode(const uint8_t* pcv_changelist)
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
861 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
862
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
863 SSettings *pSettings = settingsGetPointer();
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
864 char text[MAX_PAGE_TEXTSIZE];
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
865 uint8_t textPointer = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
866 uint32_t id;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
867
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
868 uint8_t i;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
869
706
10b7d271b9c4 Bugfix: only reset menu if a new sub menu is created:
Ideenmodellierer
parents: 700
diff changeset
870 resetMenuEdit(CLUT_MenuPageCustomView);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
871 customviewsSubpageMax = (tHome_getNumberOfAvailableCVs(pcv_changelist) / CV_PER_PAGE) + 1;
531
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
872
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
873 if(pcv_curchangelist != pcv_changelist) /* new selection base? => reset page index */
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
874 {
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
875 customviewsSubpage = 0;
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
876 }
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
877 pcv_curchangelist = pcv_changelist;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
878
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
879 CustomviewDivemode_refresh(pcv_changelist);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
880
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
881 for(i=0; i<5;i++) /* fill maximum 5 items and leave last one for sub page selection */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
882 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
883 textPointer = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
884 id = pcv_changelist[customviewsSubpage * 5 + i];
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
885 if((id == CVIEW_END) || (id == CVIEW_T3_END)) /* last list item? */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
886 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
887 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
888 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
889 else
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
890 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
891 if(pcv_changelist == cv_changelist)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
892 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
893 text[textPointer++] = '\006' - CHECK_BIT_THOME(pSettings->cv_configuration,id);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
894 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
895 else
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
896 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
897 text[textPointer++] = '\006' - CHECK_BIT_THOME(pSettings->cv_config_BigScreen,id);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
898 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
899 text[textPointer++] = ' ';
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
900 textPointer += snprintf(&text[textPointer], 60, "%c%c\n\r", TXT_2BYTE, customview_TXT2BYTE_helper(id));
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
901
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
902 switch(i)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
903 {
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
904 case 0: write_field_button(StMCustom3_CViewSelection1, 30, 800, ME_Y_LINE1, &FontT48, "");
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
905 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
906 case 1: write_field_button(StMCustom3_CViewSelection2, 30, 800, ME_Y_LINE2, &FontT48, "");
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
907 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
908 case 2: write_field_button(StMCustom3_CViewSelection3, 30, 800, ME_Y_LINE3, &FontT48, "");
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
909 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
910 case 3: write_field_button(StMCustom3_CViewSelection4, 30, 800, ME_Y_LINE4, &FontT48, "");
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
911 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
912 case 4: write_field_button(StMCustom3_CViewSelection5, 30, 800, ME_Y_LINE5, &FontT48, "");
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
913 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
914 default:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
915 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
916 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
917 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
918 }
750
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
919 for(;i<5;i++) /* clear empty lines in case menu shows less than 5 entries */
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
920 {
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
921 switch(i)
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
922 {
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
923 case 0: write_label_var( 30, 800, ME_Y_LINE1, &FontT48, "");
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
924 break;
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
925 case 1: write_label_var( 30, 800, ME_Y_LINE2, &FontT48, "");
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
926 break;
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
927 case 2: write_label_var( 30, 800, ME_Y_LINE3, &FontT48, "");
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
928 break;
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
929 case 3: write_label_var( 30, 800, ME_Y_LINE4, &FontT48, "");
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
930 break;
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
931 case 4: write_label_var( 30, 800, ME_Y_LINE5, &FontT48, "");
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
932 break;
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
933 default:
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
934 break;
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
935 };
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
936 }
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
937 if(customviewsSubpageMax != 1)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
938 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
939 textPointer = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
940 text[textPointer++] = TXT_2BYTE;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
941 text[textPointer++] = TXT2BYTE_ButtonNext;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
942 text[textPointer] = 0;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
943 write_field_button(StMCustom3_CViewSelection6, 30, 800, ME_Y_LINE6, &FontT48, text);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
944 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
945
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
946 /* because of the ID handling inside of the functions, all buttons needs to be assigned before the events may be set => have the same loop twice */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
947 for(i=0; i<5;i++) /* fill maximum 5 items and leave last one for sub page selection */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
948 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
949 id = pcv_changelist[customviewsSubpage * 5 + i];
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
950 if((id == CVIEW_END) || (id == CVIEW_T3_END)) /* last list item? */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
951 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
952 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
953 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
954 else
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
955 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
956 switch(i)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
957 {
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
958 case 0: setEvent(StMCustom3_CViewSelection1, (uint32_t)OnAction_Customview_Toggle);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
959 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
960 case 1: setEvent(StMCustom3_CViewSelection2, (uint32_t)OnAction_Customview_Toggle);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
961 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
962 case 2: setEvent(StMCustom3_CViewSelection3, (uint32_t)OnAction_Customview_Toggle);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
963 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
964 case 3: setEvent(StMCustom3_CViewSelection4, (uint32_t)OnAction_Customview_Toggle);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
965 break;
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
966 case 4: setEvent(StMCustom3_CViewSelection5, (uint32_t)OnAction_Customview_Toggle);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
967 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
968
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
969 default:
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
970 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
971 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
972
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
973 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
974 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
975 if(customviewsSubpageMax != 1)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
976 {
521
e221cf762f45 Move Bigfont and motion Ctrl selection menu out of custom view submenu:
Ideenmodellierer
parents: 520
diff changeset
977 setEvent(StMCustom3_CViewSelection6,(uint32_t)OnAction_Customview_NextPage);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
978 }
750
6bd21ebe1a93 Avoid blinking in customer view selection page:
Ideenmodellierer
parents: 739
diff changeset
979
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
980 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
981 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
982
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
983 void openEdit_CustomviewDivemodeMenu(uint8_t line)
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
984 {
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
985 static uint8_t customviewsSubpage = 0;
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
986 SSettings *pSettings = settingsGetPointer();
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
987
815
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
988 customviewsSubpageMax = (tHome_getNumberOfAvailableCVs(cv_changelist) / CV_PER_PAGE) + 1;
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
989
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
990 if((line == 6) || (cv_changelist[customviewsSubpage * 5 + line-1] == CVIEW_END)) /* select next set of views */
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
991 {
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
992 customviewsSubpage++;
815
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
993 if(customviewsSubpage == customviewsSubpageMax)
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
994 {
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
995 customviewsSubpage = 0;
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
996 }
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
997 set_CustomsviewsSubpage(customviewsSubpage);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
998 /* rebuild the selection page with the next set of customer views */
815
ce8f71217f45 Bugfix CustomView selection during dive mode:
Ideenmodellierer
parents: 805
diff changeset
999 updateSpecificMenu(StMSYS);
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1000 openMenu(0);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1001 }
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1002 else
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1003 {
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1004 pSettings->cv_configuration ^= 1 << (cv_changelist[customviewsSubpage * 5 + line-1]);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1005 if(t7_GetEnabled_customviews() == 0)
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1006 {
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1007 pSettings->cv_configuration ^= (1 << CVIEW_noneOrDebug);
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1008 }
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1009 InitMotionDetection(); /* consider new view setup for view selection by motion */
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1010 exitMenuEdit_to_Menu_with_Menu_Update();
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1011 }
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1012 }
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1013
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1014 uint8_t OnAction_ExtraDisplay (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1015 {
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1016 uint8_t newValue;
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1017
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1018 newValue = settingsGetPointer()->extraDisplay + 1;
739
4a6bffaa38b3 Enable start dive in Big font display:
Ideenmodellierer
parents: 737
diff changeset
1019
520
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1020 if(newValue >= EXTRADISPLAY_END)
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1021 {
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1022 newValue = EXTRADISPLAY_none;
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1023 }
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1024 settingsGetPointer()->extraDisplay = newValue;
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1025 return UNSPECIFIC_RETURN;
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1026 }
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1027
970d8040c0e3 Moved custom view menu to new tab:
Ideenmodellierer
parents: 515
diff changeset
1028 void CustomviewDivemode_refresh()
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1029 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1030 SSettings *pSettings = settingsGetPointer();
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1031 char text[MAX_PAGE_TEXTSIZE];
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1032 uint8_t textPointer = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1033 uint32_t id;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1034
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1035 uint8_t i;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1036
531
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
1037 text[textPointer++] = '\001';
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
1038 text[textPointer++] = TXT_2BYTE;
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
1039 text[textPointer++] = TXT2BYTE_SelectCustomviews;
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
1040 text[textPointer++] = ' ';
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
1041 text[textPointer++] = '1' + customviewsSubpage;
1721b26335f1 Bugfix custom view selection dialog:
Ideenmodellierer
parents: 521
diff changeset
1042 text[textPointer++] = 0;
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1043 write_topline(text);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1044
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1045
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1046 for(i=0; i<5;i++) /* fill maximum 5 items and leave last one for sub page selection */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1047 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1048 textPointer = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1049 id = pcv_curchangelist[customviewsSubpage * 5 + i];
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1050 if((id == CVIEW_END) || (id == CVIEW_T3_END)) /* last list item? */
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1051 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1052 break;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1053 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1054 else
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1055 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1056 if(pcv_curchangelist == cv_changelist)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1057 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1058 text[textPointer++] = '\006' - CHECK_BIT_THOME(pSettings->cv_configuration,id);
820
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1059 text[textPointer++] = ' ';
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1060 textPointer += snprintf(&text[textPointer], 60, "%c%c\n\r", TXT_2BYTE, customview_TXT2BYTE_helper(id));
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1061 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1062 else
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1063 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1064 text[textPointer++] = '\006' - CHECK_BIT_THOME(pSettings->cv_config_BigScreen,id);
820
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1065 text[textPointer++] = ' ';
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1066 textPointer += snprintf(&text[textPointer], 60, "%c%c\n\r", TXT_2BYTE, customviewBF_TXT2BYTE_helper(id));
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1067 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1068
820
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1069 switch(i)
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1070 {
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1071 case 0: write_label_var( 30, 800, ME_Y_LINE1, &FontT48, text);
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1072 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1073 case 1: write_label_var( 30, 800, ME_Y_LINE2, &FontT48, text);
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1074 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1075 case 2: write_label_var( 30, 800, ME_Y_LINE3, &FontT48, text);
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1076 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1077 case 3: write_label_var( 30, 800, ME_Y_LINE4, &FontT48, text);
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1078 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1079 case 4: write_label_var( 30, 800, ME_Y_LINE5, &FontT48, text);
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1080 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1081 default:
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1082 break;
7322adb00305 Split definition of custom views:
Ideenmodellierer
parents: 815
diff changeset
1083 }
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1084 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1085 }
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1086 if(customviewsSubpageMax != 1)
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1087 {
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1088 textPointer = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1089 text[textPointer++] = TXT_2BYTE;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1090 text[textPointer++] = TXT2BYTE_ButtonNext;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1091 text[textPointer] = 0;
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1092 write_label_var( 30, 800, ME_Y_LINE6, &FontT48, text);
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1093 }
515
218ac999e96b Added missing display of button labels in refresh function:
Ideenmodellierer
parents: 506
diff changeset
1094 write_buttonTextline(TXT2BYTE_ButtonBack,TXT2BYTE_ButtonEnter,TXT2BYTE_ButtonNext);
506
998529b3e142 Added new top level menu for customization of views
Ideenmodellierer
parents:
diff changeset
1095 }
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1096
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1097 uint8_t HandleAFCompass()
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1098 {
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1099 static uint8_t debounce = 0;
835
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
1100 static uint8_t lastState = AF_VIEW_NOCHANGE;
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
1101 uint8_t detectionState = AF_VIEW_NOCHANGE;
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1102
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1103 float pitch = stateRealGetPointer()->lifeData.compass_pitch;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1104 float roll = stateRealGetPointer()->lifeData.compass_roll;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1105
835
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
1106 /* OSTC in horizontal position ?*/
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
1107 if((pitch > -AF_COMPASS_ACTIVATION_ANGLE) && (pitch < AF_COMPASS_ACTIVATION_ANGLE) && (roll > -AF_COMPASS_ACTIVATION_ANGLE) && (roll < AF_COMPASS_ACTIVATION_ANGLE))
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1108 {
835
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
1109 if(debounce < AF_COMPASS_DEBOUNCE) debounce++;
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
1110 if(debounce == AF_COMPASS_DEBOUNCE)
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1111 {
835
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
1112 detectionState = AF_VIEW_ACTIVATED;
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1113 }
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1114 }
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1115 else
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1116 {
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1117 if(debounce > 0) debounce--;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1118 if(debounce == 0)
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1119 {
835
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
1120 detectionState = AF_VIEW_DEACTIVATED;
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1121 }
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1122 }
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1123 if(detectionState) /* no state change => return 0 */
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1124 {
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1125 if((detectionState == lastState))
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1126 {
835
717b460294cd Added autofocus for BF Navigation view:
Ideenmodellierer
parents: 834
diff changeset
1127 detectionState = AF_VIEW_NOCHANGE;
834
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1128 }
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1129 else
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1130 {
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1131 lastState = detectionState;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1132 }
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1133 }
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1134 return detectionState;
2a8af51ab04d Added event based display changes for big font view:
Ideenmodellierer
parents: 820
diff changeset
1135 }