20 #include "config_generated.h"
21 #include "controller.h"
22 #include "precompiled.h"
23 #include "touchscreen_button.h"
34 : button_id(buttonId), controller_id(controllerId) {}
37 ControllerId controller_id;
44 void AdvanceFrame(WorldTime delta_time, fplbase::InputSystem* input,
45 const vec2& window_size);
46 void Setup(
const UiGroup* menudef, fplbase::AssetManager* matman);
47 void LoadAssets(
const UiGroup* menu_def, fplbase::AssetManager* matman);
48 void Render(fplbase::Renderer* renderer);
49 void AdvanceFrame(WorldTime delta_time);
51 void HandleControllerInput(uint32_t logical_input,
52 ControllerId controller_id);
53 ButtonId GetFocus()
const;
54 void SetFocus(ButtonId new_focus);
57 const UiGroup* menu_def()
const {
return menu_def_; }
58 void LoadDebugShaderAndOptions(
const Config* config,
59 fplbase::AssetManager* matman);
62 void ClearRecentSelections();
63 void UpdateFocus(
const flatbuffers::Vector<uint16_t>* destination_list);
66 flatui::Event ImguiButton(
const ImguiButtonDef& data);
67 void RenderTexture(
const fplbase::Texture& tex,
const vec2& pos,
68 const vec2& size,
const vec2& scale);
70 const UiGroup* menu_def_;
71 fplbase::InputSystem* input_;
72 fplbase::AssetManager* matman_;
73 flatui::FontManager* fontman_;
75 const char* debug_shader;
76 bool draw_debug_bounds;
77 ButtonId current_focus_;
78 std::queue<MenuSelection> unhandled_selections_;
79 std::vector<TouchscreenButton> button_list_;
80 std::vector<StaticImage> image_list_;
84 WorldTime time_elapsed_;
Definition: touchscreen_button.h:133