#pragma once
/*
ApplicationFramework
by John Ryland
Copyright (c) 2023
*/
////////////////////////////////////////////////////////////////////////////////////
// Dear ImGui Ui System
#include "IUiSystem.h"
namespace ApplicationFramework {
class DearImGuiUiSystem : public IUiSystem
{
public:
DearImGuiUiSystem();
~DearImGuiUiSystem() override;
void Initialize() override;
void Shutdown() override;
void Prepare() override;
void Update() override;
void Render() override;
void Present() override;
int DefaultFontIndex() const override { return m_defaultFontIndex; }
int FixedFontIndex() const override { return m_fixedFontIndex; }
int IconFontIndex() const override { return m_iconFontIndex; }
int UnicodeFontIndex() const override { return m_unicodeFontIndex; }
int FallbackFontIndex() const override { return m_fallbackFontIndex; }
private:
int m_defaultFontIndex = 0;
int m_fixedFontIndex = 0;
int m_iconFontIndex = 0;
int m_unicodeFontIndex = 0;
int m_fallbackFontIndex = 0;
};
} // ApplicationFramework namespace