All checks were successful
Linux arm64 / Build (push) Successful in 5m6s
Reviewed-on: #47 Co-authored-by: Persson-dev <sim16.prib@gmail.com> Co-committed-by: Persson-dev <sim16.prib@gmail.com>
42 lines
850 B
C++
42 lines
850 B
C++
#pragma once
|
|
|
|
#include "GuiWidget.h"
|
|
#include "blitz/misc/Time.h"
|
|
#include "client/config/BlitzConfig.h"
|
|
#include "client/display/InputManager.h"
|
|
#include <array>
|
|
#include <string>
|
|
|
|
namespace blitz {
|
|
|
|
class Client;
|
|
|
|
namespace gui {
|
|
|
|
class OptionsMenu : public GuiWidget, public input::InputListener {
|
|
private:
|
|
bool m_ShowFPS;
|
|
bool m_VSync;
|
|
bool m_IsKeyPopupOpen;
|
|
bool m_KeyPopupShouldClose;
|
|
utils::Timer m_Timer{100};
|
|
KeyAction m_CurrentAction;
|
|
input::InputManager& m_InputManager;
|
|
|
|
public:
|
|
OptionsMenu(GuiWidget* parent, Client* client, input::InputManager& inputManager);
|
|
virtual ~OptionsMenu();
|
|
|
|
virtual void Render() override;
|
|
|
|
virtual void OnKeyDown(int key) override;
|
|
|
|
private:
|
|
std::string GetKeyActionCodeName(KeyAction);
|
|
void HotkeyBindingButton();
|
|
void HotkeyBindingPopUp();
|
|
};
|
|
|
|
} // namespace gui
|
|
} // namespace blitz
|