Files
GabsPuNs-Project_Zenith_Main/Minecraft.Client/Common/UI/UIScene_SettingsUIMenu.h

58 lines
1.5 KiB
C++

#pragma once
#pragma push_macro("byte")
#pragma push_macro("GetNextSibling")
#pragma push_macro("GetFirstChild")
#undef byte
#undef GetNextSibling
#undef GetFirstChild
#include "UIScene.h"
#include <RmlUi/Core/EventListener.h>
#include <RmlUi/Core/ElementDocument.h>
class UIScene_SettingsUIMenu : public UIScene, public Rml::EventListener
{
private:
Rml::ElementDocument* m_document;
int m_uiSizeValue;
int m_uiSizeSplitscreenValue;
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_SettingsUIMenu(int iPad, void *initData, UILayer *parentLayer);
virtual ~UIScene_SettingsUIMenu();
virtual EUIScene getSceneType() { return eUIScene_SettingsUIMenu; }
virtual void tick();
virtual void updateComponents();
virtual void gainFocus() override;
void ProcessEvent(Rml::Event& event) override;
protected:
virtual wstring getMoviePath() { return L""; }
virtual void handleLoseFocus() override;
virtual void handleInput(int iPad, int key, bool repeat, bool pressed, bool released, bool &handled);
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")