desktop_settings.h 887 B

123456789101112131415161718192021222324252627282930313233343536
  1. #pragma once
  2. #include <stdint.h>
  3. #include <stdbool.h>
  4. #include <toolbox/saved_struct.h>
  5. #define DESKTOP_SETTINGS_VER (1)
  6. #define DESKTOP_SETTINGS_PATH "/int/desktop.settings"
  7. #define DESKTOP_SETTINGS_MAGIC (0x17)
  8. #define PIN_MAX_LENGTH 12
  9. #define SAVE_DESKTOP_SETTINGS(x) \
  10. saved_struct_save( \
  11. DESKTOP_SETTINGS_PATH, \
  12. (x), \
  13. sizeof(DesktopSettings), \
  14. DESKTOP_SETTINGS_MAGIC, \
  15. DESKTOP_SETTINGS_VER)
  16. #define LOAD_DESKTOP_SETTINGS(x) \
  17. saved_struct_load( \
  18. DESKTOP_SETTINGS_PATH, \
  19. (x), \
  20. sizeof(DesktopSettings), \
  21. DESKTOP_SETTINGS_MAGIC, \
  22. DESKTOP_SETTINGS_VER)
  23. typedef struct {
  24. uint8_t length;
  25. uint8_t data[PIN_MAX_LENGTH];
  26. } PinCode;
  27. typedef struct {
  28. uint16_t favorite;
  29. PinCode pincode;
  30. } DesktopSettings;