Nebula
Loading...
Searching...
No Matches
imguicontext.h
Go to the documentation of this file.
1#pragma once
2//------------------------------------------------------------------------------
11//------------------------------------------------------------------------------
13#include "coregraphics/buffer.h"
15#include "input/inputevent.h"
19#include "imguiinputhandler.h"
21#include "frame/framecode.h"
22
23struct ImDrawData;
24struct ImFont;
25namespace Dynui
26{
27
29{
31 uint layer : 8 = 0;
32 uint mip : 4 = 0;
33 uint useAlpha : 1 = 0;
34 uint useRange : 1 = 0;
36 uint red : 1 = 1;
37 uint green : 1 = 1;
38 uint blue : 1 = 1;
39 uint alpha : 1 = 1;
40 uint splat : 1 = 0;
41};
42
43extern ImFont* ImguiNormalFont;
44extern ImFont* ImguiSmallFont;
45extern ImFont* ImguiBoldFont;
46extern ImFont* ImguiItFont;
47
49{
51public:
55 virtual ~ImguiContext();
56
58 static void Create();
60 static void Discard();
61
63 static void SetRectSize(SizeT width, SizeT height);
64
66 static bool HandleInput(const Input::InputEvent& event);
68 static void ResetKeyDownState();
69
71 static void OnViewportResized(const uint framescriptHash, SizeT width, SizeT height);
73 static void NewFrame(const Graphics::FrameContext& ctx);
74
76 static void EndFrame(const Graphics::FrameContext& ctx);
77
78private:
79 static void RecoverImGuiContextErrors();
80};
81
82} // namespace Dynui
static void ResetKeyDownState()
reset key events
Definition imguicontext.cc:1113
static void EndFrame(const Graphics::FrameContext &ctx)
called after frame
Definition imguicontext.cc:1161
static void Create()
Create context.
Definition imguicontext.cc:418
virtual ~ImguiContext()
destructor
Definition imguicontext.cc:396
static void OnViewportResized(const uint framescriptHash, SizeT width, SizeT height)
called if the window size has changed
Definition imguicontext.cc:1128
static void SetRectSize(SizeT width, SizeT height)
set the screen dimensions to use when rendering the UI (all vertices will be mapped to these values)
ImguiContext()
constructor
Definition imguicontext.cc:388
static bool HandleInput(const Input::InputEvent &event)
handle event
Definition imguicontext.cc:1064
static void Discard()
Discard context.
Definition imguicontext.cc:883
static void RecoverImGuiContextErrors()
Definition imguicontext.cc:312
Definition graphicscontext.h:175
The input events of the Input subsystems.
Definition inputevent.h:24
void NewFrame()
Progress to next frame.
Definition vkgraphicsdevice.cc:2446
Imgui Profiler UI.
Definition imguiconsole.cc:277
ImFont * ImguiItFont
Definition imguicontext.cc:85
ImFont * ImguiNormalFont
Definition imguicontext.cc:82
ImFont * ImguiSmallFont
Definition imguicontext.cc:83
ImFont * ImguiBoldFont
Definition imguicontext.cc:84
A resource table declares a list of resources (ResourceTable in DX12, DescriptorSet in Vulkan).
texture type
Definition texture.h:25
Definition imguicontext.h:29
CoreGraphics::TextureId nebulaHandle
Definition imguicontext.h:30
uint useRange
Definition imguicontext.h:34
uint green
Definition imguicontext.h:37
uint mip
Definition imguicontext.h:32
uint alpha
Definition imguicontext.h:39
float rangeMin
Definition imguicontext.h:35
uint blue
Definition imguicontext.h:38
uint useAlpha
Definition imguicontext.h:33
uint layer
Definition imguicontext.h:31
uint splat
Definition imguicontext.h:40
float rangeMax
Definition imguicontext.h:35
uint red
Definition imguicontext.h:36
Definition graphicsserver.h:31
int SizeT
Definition types.h:42
unsigned int uint
Definition types.h:33