static void MenuButtonHandler(unsigned char MsgOptions) { tMessage Msg; switch (MsgOptions) { case MENU_BUTTON_OPTION_EXIT: IdleUpdateHandler(); break; case MENU_BUTTON_OPTION_TOGGLE_BLUETOOTH: if (BluetoothState() != Initializing) SendMessage(&Msg, RadioOn() ? TurnRadioOffMsg : TurnRadioOnMsg, MSG_OPT_NONE); break; case MENU_BUTTON_OPTION_DISPLAY_SECONDS: ToggleProperty(PROP_TIME_SECOND); MenuModeHandler(0); break; case MENU_BUTTON_OPTION_TOGGLE_LINK_ALARM: ToggleProperty(PROP_DISABLE_LINK_ALARM); MenuModeHandler(0); break; case MENU_BUTTON_OPTION_INVERT_DISPLAY: ToggleProperty(PROP_INVERT_DISPLAY); MenuModeHandler(0); break; case MENU_BUTTON_OPTION_MENU1: break; case MENU_BUTTON_OPTION_TOGGLE_RST_NMI_PIN: ToggleProperty(PROP_RSTNMI); ConfigResetPin(GetProperty(PROP_RSTNMI)); MenuModeHandler(0); break; case MENU_BUTTON_OPTION_TOGGLE_SERIAL_SBW_GND: ToggleSerialGndSbw(); MenuModeHandler(0); break; case MENU_BUTTON_OPTION_TOGGLE_ENABLE_CHARGING: ToggleCharging(); MenuModeHandler(0); break; case MENU_BUTTON_OPTION_ENTER_BOOTLOADER_MODE: EnterBootloader(); break; default: break; } }
static void HandleSecInvert(unsigned char Val) { if (Val == MSG_OPT_HIDE_SECOND && GetProperty(PROP_TIME_SECOND) || (Val == MSG_OPT_SHOW_SECOND && !GetProperty(PROP_TIME_SECOND))) { ToggleProperty(PROP_TIME_SECOND); UpdateClock(); } else if (Val == MSG_OPT_NORMAL_DISPLAY && GetProperty(PROP_INVERT_DISPLAY) || (Val == MSG_OPT_INVERT_DISPLAY && !GetProperty(PROP_INVERT_DISPLAY))) { ToggleProperty(PROP_INVERT_DISPLAY); if (PageType == PAGE_TYPE_IDLE) IdleUpdateHandler(); else if (PageType == PAGE_TYPE_MENU) MenuModeHandler(0); else if (CurrentPage[PageType] == StatusPage) DrawWatchStatusScreen(); } }
static void MenuButtonHandler(unsigned char MsgOptions) { tMessage Msg; switch (MsgOptions) { case MENU_BUTTON_OPTION_EXIT: IdleUpdateHandler(); break; case MENU_BUTTON_OPTION_TOGGLE_BLUETOOTH: if (BluetoothState() != Initializing) SendMessage(&Msg, RadioOn() ? TurnRadioOffMsg : TurnRadioOnMsg, MSG_OPT_NONE); break; case MENU_BUTTON_OPTION_DISPLAY_SECONDS: ToggleProperty(PROP_TIME_SECOND); MenuModeHandler(0); break; case MENU_BUTTON_OPTION_TOGGLE_LINK_ALARM: LinkAlarmEnable = !LinkAlarmEnable; MenuModeHandler(0); break; case MENU_BUTTON_OPTION_INVERT_DISPLAY: ToggleProperty(PROP_INVERT_DISPLAY); MenuModeHandler(0); break; case MENU_BUTTON_OPTION_TOGGLE_RST_NMI_PIN: if (RESET_PIN) {SET_RESET_PIN_RST();} else {SET_RESET_PIN_NMI();} MenuModeHandler(0); break; case MENU_BUTTON_OPTION_TOGGLE_SERIAL_SBW_GND: ToggleSerialGndSbw(); MenuModeHandler(0); break; case MENU_BUTTON_OPTION_TOGGLE_ENABLE_CHARGING: ToggleCharging(); // SendMessage(&Msg, AccelMsg, 0); //test accel MenuModeHandler(0); break; case MENU_BUTTON_OPTION_ENTER_BOOTLOADER_MODE: EnterBootloader(); break; case MENU_BUTTON_OPTION_TEST: SetupMessageWithBuffer(&Msg, SetVibrateMode, MSG_OPT_NONE); if (Msg.pBuffer != NULL) { *(tSetVibrateModePayload *)Msg.pBuffer = TestTone; RouteMsg(&Msg); } // test accelemeter MSG_OPT_ACCEL_ENABLE // SendMessage(&Msg, AccelMsg, 1); break; default: break; } }