Calzone-UI/inc/events.h

54 lines
859 B
C
Raw Permalink Normal View History

2024-02-21 01:11:59 +00:00
#pragma once
#include <stdint.h>
#include <lvgl.h>
#include "date_utils.h"
#define MAX_NAME_LEN 100
#define STR_MAX_NAME_LEN "99"
2024-02-23 04:45:19 +00:00
namespace Events {
enum EVENT_TYPE {
2024-02-21 01:11:59 +00:00
EVENTS_MEETING = 0,
EVENTS_CASCADE,
EVENTS_SETUP,
EVENTS_APPOINTMENT,
EVENTS_OTHER,
EVENTS_COUNT,
2024-02-23 04:45:19 +00:00
};
2024-02-21 01:11:59 +00:00
2024-02-23 04:45:19 +00:00
struct event_type_counts {
2024-02-21 01:11:59 +00:00
uint8_t counts[EVENTS_COUNT];
// uint8_t other;
// uint8_t meetings;
// uint8_t ram_upgrades;
// uint8_t cascades;
// uint8_t setups;
// uint8_t appointments
2024-02-23 04:45:19 +00:00
};
2024-02-21 01:11:59 +00:00
2024-02-23 04:45:19 +00:00
struct Event {
2024-02-21 01:11:59 +00:00
int s_hour;
int s_min;
int e_hour;
int e_min;
EVENT_TYPE type;
char name[MAX_NAME_LEN];
2024-02-23 04:45:19 +00:00
};
2024-02-21 01:11:59 +00:00
2024-02-23 04:45:19 +00:00
void unregisterCallbacks(void);
void registerCallback(uint8_t day, lv_obj_t* object);
void registerDetailedCallback(lv_obj_t* object);
void update(uint8_t today, int month, uint32_t year);
2024-02-21 01:11:59 +00:00
2024-02-23 04:45:19 +00:00
} // namespace Events
2024-02-21 01:11:59 +00:00