2023-12-16 17:36:57 +01:00
|
|
|
#pragma once
|
2024-11-27 20:44:36 +01:00
|
|
|
|
|
|
|
#include <cstdint>
|
|
|
|
#include <string>
|
2023-12-16 17:36:57 +01:00
|
|
|
#include <wups/config.h>
|
|
|
|
|
|
|
|
class ConfigRendererItemGeneric {
|
|
|
|
public:
|
2024-11-27 20:44:36 +01:00
|
|
|
virtual ~ConfigRendererItemGeneric();
|
|
|
|
|
|
|
|
virtual void drawGenericBoxAndText(uint32_t yOffset, const std::string &displayName, bool isHighlighted) const;
|
2023-12-16 17:36:57 +01:00
|
|
|
|
|
|
|
virtual void Draw(uint32_t yOffset, bool isHighlighted) const = 0;
|
|
|
|
|
2024-05-03 11:55:27 +02:00
|
|
|
virtual void Update(bool) = 0;
|
|
|
|
|
|
|
|
[[nodiscard]] virtual bool NeedsRedraw() const = 0;
|
|
|
|
|
|
|
|
virtual void ResetNeedsRedraw() = 0;
|
|
|
|
|
2024-11-27 20:44:36 +01:00
|
|
|
virtual void SetIsSelected(bool);
|
|
|
|
|
|
|
|
virtual void OnButtonPressed(WUPSConfigButtons);
|
|
|
|
|
|
|
|
virtual void OnInput(WUPSConfigSimplePadData);
|
2023-12-16 17:36:57 +01:00
|
|
|
|
2024-11-27 20:44:36 +01:00
|
|
|
virtual void OnInputEx(WUPSConfigComplexPadData);
|
2023-12-16 17:36:57 +01:00
|
|
|
|
2024-11-27 20:44:36 +01:00
|
|
|
[[nodiscard]] virtual bool IsMovementAllowed() const;
|
2023-12-16 17:36:57 +01:00
|
|
|
};
|