counter face: move beep_on to watch face state

This commit is contained in:
joeycastillo 2023-07-29 07:43:51 -04:00
parent ed8149a759
commit e5dcc9d1b7
2 changed files with 8 additions and 7 deletions

View File

@ -27,23 +27,23 @@
#include "counter_face.h" #include "counter_face.h"
#include "watch.h" #include "watch.h"
bool beep_on = true;
void counter_face_setup(movement_settings_t *settings, uint8_t watch_face_index, void ** context_ptr) { void counter_face_setup(movement_settings_t *settings, uint8_t watch_face_index, void ** context_ptr) {
(void) settings; (void) settings;
(void) watch_face_index; (void) watch_face_index;
if (*context_ptr == NULL) { if (*context_ptr == NULL) {
*context_ptr = malloc(sizeof(counter_state_t)); *context_ptr = malloc(sizeof(counter_state_t));
memset(*context_ptr, 0, sizeof(counter_state_t)); memset(*context_ptr, 0, sizeof(counter_state_t));
counter_state_t *state = (counter_state_t *)*context_ptr;
state->beep_on = true;
} }
} }
void counter_face_activate(movement_settings_t *settings, void *context) { void counter_face_activate(movement_settings_t *settings, void *context) {
(void) settings; (void) settings;
if (beep_on) { counter_state_t *state = (counter_state_t *)context;
if (state->beep_on) {
watch_set_indicator(WATCH_INDICATOR_SIGNAL); watch_set_indicator(WATCH_INDICATOR_SIGNAL);
} }
(void) context;
} }
bool counter_face_loop(movement_event_t event, movement_settings_t *settings, void *context) { bool counter_face_loop(movement_event_t event, movement_settings_t *settings, void *context) {
@ -59,14 +59,14 @@ bool counter_face_loop(movement_event_t event, movement_settings_t *settings, vo
state->counter_idx=0;//reset counter index state->counter_idx=0;//reset counter index
} }
print_counter(state); print_counter(state);
if (beep_on) { if (state->beep_on) {
beep_counter(state); beep_counter(state);
} }
break; break;
case EVENT_LIGHT_LONG_PRESS: case EVENT_LIGHT_LONG_PRESS:
watch_buzzer_abort_sequence(); watch_buzzer_abort_sequence();
beep_on = !beep_on; state->beep_on = !state->beep_on;
if (beep_on) { if (state->beep_on) {
watch_set_indicator(WATCH_INDICATOR_SIGNAL); watch_set_indicator(WATCH_INDICATOR_SIGNAL);
} else { } else {
watch_clear_indicator(WATCH_INDICATOR_SIGNAL); watch_clear_indicator(WATCH_INDICATOR_SIGNAL);

View File

@ -30,6 +30,7 @@
// Counter face is designed to count the number of running laps during excercises. // Counter face is designed to count the number of running laps during excercises.
typedef struct { typedef struct {
uint8_t counter_idx; uint8_t counter_idx;
bool beep_on;
} counter_state_t; } counter_state_t;