VenomEngine
Cross-Platform Modern Graphics Engine
Loading...
Searching...
No Matches
venom::common::GUI Class Referenceabstract
+ Inheritance diagram for venom::common::GUI:

Classes

struct  FontData
 

Public Member Functions

void SetGraphicsApplication (GraphicsApplication *app)
 
vc::Error Initialize ()
 
vc::Error Reset ()
 
void DrawCallback ()
 
void Render ()
 
- Public Member Functions inherited from venom::common::GraphicsPluginObject
virtual void Destroy () override
 /!\ THIS FUNCTION MUST BE CALLED FOR DESTRUCTION, DO NOT USE delete
 
- Public Member Functions inherited from venom::common::PluginObject
 PluginObject (const PluginType type)
 
PluginType GetType () const override
 
template<class T>
T * DAs ()
 
template<class T>
const T * DAs () const
 

Static Public Member Functions

static void SetGUIDrawCallback (GUIDrawCallback guiDrawCallback)
 
static void ToggleGUIDraw ()
 
static bool IsGUIDraw ()
 
static bool & IsGUIDrawRef ()
 
static GUIGet ()
 
static void AddFont (const char *fontPath, float fontSize, const uint16_t *glyphRanges)
 
static void AddFont (const char *fontPath, float fontSize)
 
static void ClearFonts ()
 
static void SetNextWindowPos (const vcm::Vec2 &pos, GUICond cond=GUICondBits::GUICond_None, const vcm::Vec2 &pivot=vcm::Vec2(0, 0))
 
static void SetNextWindowSize (const vcm::Vec2 &size, GUICond cond=GUICondBits::GUICond_None)
 
static void SetNextWindowViewport (GUIViewport viewport)
 
static vcm::Vec2 GetContentRegionAvail ()
 
static GUIViewport GetMainViewport ()
 
static vcm::Vec2 GetWindowSize ()
 
static vcm::Vec2 GetWindowPos ()
 
static void NewFrame ()
 
static void Begin (const char *name, bool *p_open=nullptr, GUIWindowFlags flags=0)
 
static void End ()
 
static void Text (const char *fmt,...)
 
static void TextColored (const vcm::Vec4 &col, const char *fmt,...)
 
static void LabelText (const char *label, const char *fmt,...)
 
static void Image (const vc::Texture *texture, const vcm::Vec2 &size, bool centering=true)
 
static void Image (const vc::RenderTarget *renderTarget, const vcm::Vec2 &size, bool centering=true)
 
static bool InputText (const char *label, char *buf, size_t buf_size, GUIInputTextFlags flags=0)
 
static bool TreeNode (const char *label)
 
static void TreePop ()
 
static void TreePush (const char *str_id)
 
static void SeparatorText (const char *text)
 
static void Separator ()
 
static void Spacing ()
 
static void Dummy (const vcm::Vec2 &size)
 
static bool SliderFloat (const char *label, float *v, float v_min, float v_max, const char *format="%.3f")
 
static bool SliderFloat3 (const char *label, float v[3], float v_min, float v_max, const char *format="%.3f")
 
static bool InputFloat (const char *label, float *v, float step=0.0f, float step_fast=0.0f, const char *format="%.3f", GUIColorEditFlags flags=0)
 
static bool InputFloat3 (const char *label, float v[3], const char *format="%.3f", GUIColorEditFlags flags=0)
 
static void ColorEdit3 (const char *label, float col[3], GUIColorEditFlags flags=0)
 
static bool CollapsingHeader (const char *label, GUITreeNodeFlags flags=0)
 
static bool Button (const char *label, const vcm::Vec2 &size=vcm::Vec2(0, 0))
 
static bool Checkbox (const char *label, bool *v)
 
static void ProgressBar (float fraction, const vcm::Vec2 &size_arg=vcm::Vec2(-1, 0), const char *overlay=nullptr)
 
static bool Selectable (const char *label, bool selected, GUISelectableFlags flags=0, const vcm::Vec2 &size=vcm::Vec2(0, 0))
 
static bool BeginCombo (const char *label, const char *preview_value, GUIComboFlags flags=0)
 
static void EndCombo ()
 
static bool BeginMenu (const char *label, bool enabled=true)
 
static void EndMenu ()
 
static bool BeginMainMenuBar ()
 
static void EndMainMenuBar ()
 
static bool BeginMenuBar ()
 
static void EndMenuBar ()
 
static bool BeginChild (const char *str_id, const vcm::Vec2 &size, GUIChildFlags childFlags, GUIWindowFlags extraFlags=0)
 
static void EndChild ()
 
static bool MenuItem (const char *str, const char *text=nullptr)
 
static void SetNextItemWidth (float item_width)
 
static void SetItemDefaultFocus ()
 
static void SameLine (float offset_from_start_x=0.0f, float spacing=-1.0f)
 
static void PushItemWidth (float item_width)
 
static void PopItemWidth ()
 
static void PushButtonTextAlign (const vcm::Vec2 &padding)
 
static void PushWindowPadding (const vcm::Vec2 &padding)
 
static void PopStyleVar ()
 
static GUIId DockSpace (GUIId id, const vcm::Vec2 &size, GUIDockNodeFlags flags)
 
static GUIId DockSpace (const char *id, const vcm::Vec2 &size, GUIDockNodeFlags flags)
 
static GUIId DockSpaceOverViewport ()
 
static GUIId DockSpaceAddNode (GUIId id, GUIDockNodeFlags flags)
 
static void DockSpaceRemoveNode (GUIId id)
 
static void DockSpaceSetNodeSize (GUIId id, const vcm::Vec2 &size)
 
static GUIId DockSpaceSplitNode (GUIId id, GUIDir split_dir, float size_ratio, GUIId *out_id_at_dir, GUIId *out_id_at_opposite_dir)
 
static void DockWindow (const char *str_id, GUIId id)
 
static void DockFinish (GUIId id)
 
static void OpenPopup (const char *str_id, GUIPopupFlags flags=0)
 
static bool BeginPopup (const char *str_id, GUIWindowFlags flags=0)
 
static bool BeginPopupModal (const char *name, bool *p_open=nullptr, GUIWindowFlags flags=0)
 
static bool BeginPopupContextItem (const char *str_id=nullptr, GUIPopupFlags flags=0)
 
static void EndPopup ()
 
static void CloseCurrentPopup ()
 
static bool isFirstFrame ()
 
static bool isFirstInitialization ()
 
static GUIId GetID (const char *str_id)
 
static void Test ()
 
static void GraphicsSettingsCollaspingHeader ()
 
static void EntitiesListCollapsingHeader ()
 
static bool EditableTexture (vc::Texture *texture, vc::String &path)
 
static bool EditableModel (vc::Model *model, vc::String &path)
 
static void EntityGuizmo (const vcm::Vec2 &renderingSize)
 
- Static Public Member Functions inherited from venom::common::GraphicsPluginObject
static bool HasCachedObject (const vc::String &path)
 Checks if an object is in the cache.
 
static SPtr< GraphicsCachedResourceGetCachedObject (const vc::String &path)
 Gets a cached object from the graphics cache.
 
static const vc::UMap< vc::String, vc::SPtr< GraphicsCachedResource > > & GetCachedObjects ()
 Gets all cached objects.
 

Protected Member Functions

virtual void _EntityGuizmo (vc::Transform3D *transform3D, const vcm::Vec2 &renderingSize)=0
 
virtual vc::Error _Initialize ()=0
 
virtual vc::Error _Reset ()=0
 
virtual void _AddFont (const char *fontPath, float fontSize, const uint16_t *glyphRanges)=0
 
virtual void _AddFont (const char *fontPath, float fontSize)=0
 
virtual void _SetNextWindowPos (const vcm::Vec2 &pos, GUICond cond, const vcm::Vec2 &pivot)=0
 
virtual void _SetNextWindowSize (const vcm::Vec2 &size, GUICond cond)=0
 
virtual void _SetNextWindowViewport (GUIViewport viewport)=0
 
virtual vcm::Vec2 _GetContentRegionAvail ()=0
 
virtual vcm::Vec2 _GetWindowSize ()=0
 
virtual vcm::Vec2 _GetWindowPos ()=0
 
virtual GUIViewport _GetMainViewport ()=0
 
virtual void _NewFrame ()=0
 
virtual void _Begin (const char *name, bool *p_open, GUIWindowFlags flags)=0
 
virtual void _End ()=0
 
virtual void _Text (const char *fmt, va_list args)=0
 
virtual void _TextColored (const vcm::Vec4 &col, const char *fmt, va_list args)=0
 
virtual void _LabelText (const char *label, const char *fmt, va_list args)=0
 
virtual void _Image (const vc::Texture *texture, const vcm::Vec2 &size, bool centering)=0
 
virtual bool _InputText (const char *label, char *buf, size_t buf_size, GUIInputTextFlags flags)=0
 
virtual bool _TreeNode (const char *label)=0
 
virtual void _TreePop ()=0
 
virtual void _TreePush (const char *str_id)=0
 
virtual void _SeparatorText (const char *text)=0
 
virtual void _Separator ()=0
 
virtual void _Spacing ()=0
 
virtual void _Dummy (const vcm::Vec2 &size)=0
 
virtual bool _SliderFloat (const char *label, float *v, float v_min, float v_max, const char *format)=0
 
virtual bool _SliderFloat3 (const char *label, float v[3], float v_min, float v_max, const char *format)=0
 
virtual bool _InputFloat (const char *label, float *v, float step, float step_fast, const char *format, GUIColorEditFlags flags)=0
 
virtual bool _InputFloat3 (const char *label, float v[3], const char *format, GUIColorEditFlags flags)=0
 
virtual void _ColorEdit3 (const char *label, float col[3], GUIColorEditFlags flags)=0
 
virtual bool _CollapsingHeader (const char *label, GUITreeNodeFlags flags)=0
 
virtual bool _Button (const char *label, const vcm::Vec2 &size)=0
 
virtual bool _Checkbox (const char *label, bool *v)=0
 
virtual void _ProgressBar (float fraction, const vcm::Vec2 &size_arg, const char *overlay)=0
 
virtual bool _Selectable (const char *label, bool selected, GUISelectableFlags flags, const vcm::Vec2 &size)=0
 
virtual bool _BeginCombo (const char *label, const char *preview_value, GUIComboFlags flags)=0
 
virtual void _EndCombo ()=0
 
virtual bool _BeginMenu (const char *label, bool enabled)=0
 
virtual void _EndMenu ()=0
 
virtual bool _BeginMainMenuBar ()=0
 
virtual void _EndMainMenuBar ()=0
 
virtual bool _BeginMenuBar ()=0
 
virtual void _EndMenuBar ()=0
 
virtual bool _BeginChild (const char *str_id, const vcm::Vec2 &size, GUIChildFlags childFlags, GUIWindowFlags extra_flags)=0
 
virtual void _EndChild ()=0
 
virtual bool _MenuItem (const char *str, const char *text)=0
 
virtual void _SetNextItemWidth (float item_width)=0
 
virtual void _SetItemDefaultFocus ()=0
 
virtual void _SameLine (float offset_from_start_x, float spacing)=0
 
virtual void _PushItemWidth (float item_width)=0
 
virtual void _PopItemWidth ()=0
 
virtual void _PushButtonTextAlign (const vcm::Vec2 &padding)=0
 
virtual void _PushWindowPadding (const vcm::Vec2 &padding)=0
 
virtual void _PopStyleVar ()=0
 
virtual GUIId _DockSpace (GUIId id, const vcm::Vec2 &size, GUIDockNodeFlags flags)=0
 
virtual GUIId _DockSpace (const char *id, const vcm::Vec2 &size, GUIDockNodeFlags flags)=0
 
virtual GUIId _DockSpaceOverViewport ()=0
 
virtual GUIId _DockSpaceAddNode (GUIId id, GUIDockNodeFlags flags)=0
 
virtual void _DockSpaceRemoveNode (GUIId id)=0
 
virtual void _DockSpaceSetNodeSize (GUIId id, const vcm::Vec2 &size)=0
 
virtual GUIId _DockSpaceSplitNode (GUIId id, GUIDir split_dir, float size_ratio, GUIId *out_id_at_dir, GUIId *out_id_at_opposite_dir)=0
 
virtual void _DockWindow (const char *str_id, GUIId id)=0
 
virtual void _DockFinish (GUIId id)=0
 
virtual void _OpenPopup (const char *str_id, GUIPopupFlags flags)=0
 
virtual bool _BeginPopup (const char *str_id, GUIWindowFlags flags)=0
 
virtual bool _BeginPopupModal (const char *name, bool *p_open, GUIWindowFlags flags)=0
 
virtual bool _BeginPopupContextItem (const char *str_id, GUIPopupFlags flags)=0
 
virtual void _EndPopup ()=0
 
virtual void _CloseCurrentPopup ()=0
 
virtual GUIId _GetID (const char *str_id)=0
 
virtual void _Render ()=0
 
virtual vc::Error _PreUpdate ()=0
 
virtual void _Test ()=0
 

Protected Attributes

GraphicsApplication_app
 
vc::Vector< FontData_fonts
 
bool _firstInit
 

Friends

class VenomEngine
 

Additional Inherited Members

- Static Protected Member Functions inherited from venom::common::GraphicsPluginObject
static void _SetInCache (const vc::String &path, const SPtr< GraphicsCachedResource > &object)
 Sets an object in the cache.
 
static void _SetCacheSize (size_t size)
 Adds cache size to avoid unnecessary additional allocations.
 
static void _AddCacheSize (size_t size)
 Adds cache size to avoid unnecessary additional allocations.
 

Member Function Documentation

◆ EntityGuizmo()

void venom::common::GUI::EntityGuizmo ( const vcm::Vec2 & renderingSize)
static

GUIZMO


The documentation for this class was generated from the following files: