mag_scene_under_construction.c 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #include "../mag_i.h"
  2. void mag_scene_under_construction_on_enter(void* context) {
  3. Mag* mag = context;
  4. Widget* widget = mag->widget;
  5. FuriString* tmp_str;
  6. tmp_str = furi_string_alloc();
  7. widget_add_button_element(widget, GuiButtonTypeLeft, "Back", mag_widget_callback, mag);
  8. furi_string_printf(tmp_str, "Under construction!");
  9. widget_add_string_element(
  10. widget, 64, 4, AlignCenter, AlignTop, FontPrimary, furi_string_get_cstr(tmp_str));
  11. furi_string_reset(tmp_str);
  12. view_dispatcher_switch_to_view(mag->view_dispatcher, MagViewWidget);
  13. furi_string_free(tmp_str);
  14. }
  15. bool mag_scene_under_construction_on_event(void* context, SceneManagerEvent event) {
  16. Mag* mag = context;
  17. SceneManager* scene_manager = mag->scene_manager;
  18. bool consumed = false;
  19. if(event.type == SceneManagerEventTypeCustom) {
  20. if(event.event == GuiButtonTypeLeft) {
  21. consumed = true;
  22. scene_manager_previous_scene(scene_manager);
  23. }
  24. }
  25. return consumed;
  26. }
  27. void mag_scene_under_construction_on_exit(void* context) {
  28. Mag* mag = context;
  29. widget_reset(mag->widget);
  30. }