#pragma once #pragma push_macro("byte") #pragma push_macro("GetNextSibling") #pragma push_macro("GetFirstChild") #undef byte #undef GetNextSibling #undef GetFirstChild #include "UIScene_RmlBase.h" class UIScene_SettingsAudioMenu : public UIScene_RmlBase { private: int m_musicValue; int m_soundValue; int m_dragSliderIndex; void setToggleChecked(const Rml::String& id, bool checked); bool isToggleChecked(const Rml::String& id); void setSliderValue(const Rml::String& id, const Rml::String& labelPrefix, int value, int min, int max); int getSliderValue(const Rml::String& id); void registerEvents(); void deregisterEvents(); public: UIScene_SettingsAudioMenu(int iPad, void *initData, UILayer *parentLayer); virtual ~UIScene_SettingsAudioMenu(); EUIScene getSceneType() override { return eUIScene_SettingsAudioMenu;} void handleInput(int iPad, int key, bool repeat, bool pressed, bool released, bool &handled) override; virtual void updateComponents(); void ProcessEvent(Rml::Event& event) override; protected: virtual void handleSliderMove(int sliderIndex, int value); void handleSliderMouseEvent(int sliderIndex, const Rml::Event& event); }; #pragma pop_macro("GetFirstChild") #pragma pop_macro("GetNextSibling") #pragma pop_macro("byte")