view Discovery/Src/tMenuEditXtra.c @ 415:e0907c7d8038
Improment_NVM
merged default into Improvment_NVM
author
Ideenmodellierer
date
Tue, 14 Jan 2020 21:52:15 +0100 (2020-01-14)
parents
77de014928d6
children
12f8745c8a94
line source
///////////////////////////////////////////////////////////////////////////////+ −
/// -*- coding: UTF-8 -*-+ −
///+ −
/// \file Discovery/Src/tMenuEditXtra.c+ −
/// \brief Menu Edit Xtra - Specials in Divemode like Reset Stopwatch+ −
/// \author heinrichs weikamp gmbh+ −
/// \date 02-Mar-2015+ −
///+ −
/// \details+ −
///+ −
/// $Id$+ −
///////////////////////////////////////////////////////////////////////////////+ −
/// \par Copyright (c) 2014-2018 Heinrichs Weikamp gmbh+ −
///+ −
/// This program is free software: you can redistribute it and/or modify+ −
/// it under the terms of the GNU General Public License as published by+ −
/// the Free Software Foundation, either version 3 of the License, or+ −
/// (at your option) any later version.+ −
///+ −
/// This program is distributed in the hope that it will be useful,+ −
/// but WITHOUT ANY WARRANTY; without even the implied warranty of+ −
/// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the+ −
/// GNU General Public License for more details.+ −
///+ −
/// You should have received a copy of the GNU General Public License+ −
/// along with this program. If not, see <http://www.gnu.org/licenses/>.+ −
//////////////////////////////////////////////////////////////////////////////+ −
+ −
/* Includes ------------------------------------------------------------------*/+ −
#include "tMenuEditXtra.h"+ −
+ −
#include "gfx_fonts.h"+ −
#include "simulation.h"+ −
#include "timer.h"+ −
#include "tMenuEdit.h"+ −
#include "data_exchange_main.h"+ −
+ −
+ −
/* Private function prototypes -----------------------------------------------*/+ −
void openEdit_CompassHeading(void);+ −
void openEdit_ResetStopwatch(void);+ −
void openEdit_SimFollowDecostops(void);+ −
void openEdit_SetManualMarker(void);+ −
void openEdit_SetEndDive(void);+ −
+ −
/* Announced function prototypes -----------------------------------------------*/+ −
uint8_t OnAction_CompassHeading (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action);+ −
+ −
/* Exported functions --------------------------------------------------------*/+ −
+ −
void openEdit_Xtra(uint8_t line)+ −
{+ −
set_globalState_Menu_Line(line);+ −
resetMenuEdit(CLUT_MenuPageXtra);+ −
+ −
switch(line)+ −
{+ −
case 1:+ −
default:+ −
openEdit_ResetStopwatch();+ −
break;+ −
case 2:+ −
openEdit_CompassHeading();+ −
break;+ −
case 3:+ −
openEdit_SetManualMarker();+ −
break;+ −
case 4:+ −
if(is_stateUsedSetToSim())+ −
{+ −
openEdit_SimFollowDecostops();+ −
}+ −
else+ −
{+ −
openEdit_SetEndDive();+ −
}+ −
break;+ −
}+ −
}+ −
+ −
/* Private functions ---------------------------------------------------------*/+ −
void openEdit_ResetStopwatch(void)+ −
{+ −
timer_Stopwatch_Restart();+ −
exitMenuEdit_to_Home();+ −
}+ −
+ −
void openEdit_SetManualMarker(void)+ −
{+ −
stateUsedWrite->events.manualMarker = 1;+ −
exitMenuEdit_to_Home();+ −
}+ −
+ −
void openEdit_SetEndDive(void)+ −
{+ −
dataOutGetPointer()->setEndDive = 1;+ −
exitMenuEdit_to_Home();+ −
}+ −
+ −
void openEdit_SimFollowDecostops(void)+ −
{+ −
simulation_set_heed_decostops(!simulation_get_heed_decostops());+ −
exitMenuEdit_to_Menu_with_Menu_Update();+ −
}+ −
+ −
void refresh_CompassHeading(void)+ −
{+ −
uint16_t heading;+ −
char text[32];+ −
+ −
text[0] = '\001';+ −
text[1] = TXT_2BYTE;+ −
text[2] = TXT2BYTE_CompassHeading;+ −
text[3] = 0;+ −
write_topline(text);+ −
+ −
heading = (uint16_t)stateUsed->lifeData.compass_heading;+ −
snprintf(text,32,"\001%03i`",heading);+ −
write_label_var( 0, 800, ME_Y_LINE1, &FontT54, text);+ −
+ −
tMenuEdit_refresh_field(StMXTRA_CompassHeading);+ −
}+ −
+ −
void openEdit_CompassHeading(void)+ −
{+ −
+ −
write_field_button(StMXTRA_CompassHeading,20, 800, ME_Y_LINE4, &FontT48, "Set");+ −
+ −
setEvent(StMXTRA_CompassHeading, (uint32_t)OnAction_CompassHeading);+ −
// startEdit();+ −
}+ −
+ −
+ −
uint8_t OnAction_CompassHeading (uint32_t editId, uint8_t blockNumber, uint8_t digitNumber, uint8_t digitContent, uint8_t action)+ −
{+ −
stateUsedWrite->diveSettings.compassHeading = (uint16_t)stateUsed->lifeData.compass_heading;+ −
exitMenuEdit_to_Home_with_Menu_Update();+ −
return EXIT_TO_HOME;+ −
}+ −