view_i.h 607 B

1234567891011121314151617181920212223242526272829303132
  1. /**
  2. * @file view_i.h
  3. * GUI: internal View API
  4. */
  5. #pragma once
  6. #include <gui/view.h>
  7. #include <furi.h>
  8. typedef struct {
  9. FuriMutex* mutex;
  10. uint8_t data[];
  11. } ViewModelLocking;
  12. struct View {
  13. ViewDrawCallback draw_callback;
  14. ViewInputCallback input_callback;
  15. ViewCustomCallback custom_callback;
  16. ViewModelType model_type;
  17. ViewNavigationCallback previous_callback;
  18. ViewCallback enter_callback;
  19. ViewCallback exit_callback;
  20. ViewOrientation orientation;
  21. ViewUpdateCallback update_callback;
  22. void* update_callback_context;
  23. void* model;
  24. void* context;
  25. };