supercell-wx/scwx-qt/source/scwx/qt/ui/imgui_debug_widget.hpp
2025-07-10 21:56:17 -05:00

46 lines
699 B
C++

#pragma once
#include <scwx/qt/gl/gl.hpp>
#include <QOpenGLWidget>
struct ImGuiContext;
namespace Ui
{
class ImGuiDebugWidget;
}
namespace scwx
{
namespace qt
{
namespace ui
{
class ImGuiDebugWidgetImpl;
class ImGuiDebugWidget : public QOpenGLWidget
{
private:
Q_DISABLE_COPY(ImGuiDebugWidget)
public:
explicit ImGuiDebugWidget(QWidget* parent = nullptr);
~ImGuiDebugWidget();
std::string context_name() const;
void set_current_context(ImGuiContext* context);
void initializeGL() override;
void paintGL() override;
private:
friend class ImGuiDebugWidgetImpl;
std::unique_ptr<ImGuiDebugWidgetImpl> p;
};
} // namespace ui
} // namespace qt
} // namespace scwx