void ImGui_ClearStates()
Clears all states, timers, variables, etc.
bool ImGui_InFocus()
If the current ImGui is in focus.
bool ImGui_BecameInFocus()
If the current ImGui just got focus
bool ImGui_WasInFocus()
If the current ImGui had focus the previous update
void ImGui_Exit()
If am in-game gui exit, then the current gui is exited. Do not need to be called in a OnGui function.
bool ImGui_ClickedMouseOutside()
Returns: true if the mouse is clicked outside the current ImGui
void ImGui_SetTransCategory(const tString &in asCat)
This sets the current translation category, if _ckgedit_QUOTckgedit> then all text params will used as text, else as entry names in a Translate(cat, entry) —- == ImGui_GetTransCategory == <code c++> tString ImGui_GetTransCategory() </code> This gets the current translation category. —- == ImGui_Translate == <code c++> tWString ImGui_Translate(const tString &in asEntry) </code> Translate using the currently set trans category —- == ImGui_SetTextOverride == <code c++> void ImGui_SetTextOverride(const tWString &in asText) </code> This sets a literal text to use in place of any empty strings. —- == ImGui_ClearTextOverride == <code c++> void ImGui_ClearTextOverride() </code> Just clears the currently set text override. —- == _ImGui_GetTextString == <code c++> tWString _ImGui_GetTextString(const tString &in asText) </code> Internal —- == ImGui_GetSize == <code c++> cVector2f ImGui_GetSize() </code> Get the size (in pixels) of the GUI screen —- == ImGui_NrmPos == <code c++> cVector3f ImGui_NrmPos(const cVector3f &in avPos) </code> Input should be normalized, 0-1, and a position in screen space is returned. —- == ImGui_NrmPos == <code c++> cVector3f ImGui_NrmPos(float afX, float afY, float afZ) </code> Input should be normalized, 0-1, and a position in screen space is returned. —- == ImGui_NrmPos2 == <code c++> cVector2f ImGui_NrmPos2(float afX, float afY) </code> Input should be normalized, 0-1, and a position in screen space is returned. —- == ImGui_NrmSize == <code c++> cVector2f ImGui_NrmSize(const cVector2f &in avSize) </code> Input should be normalized, 0-1, and a size in screen space is returned. —- == ImGui_NrmSize == <code c++> cVector2f ImGui_NrmSize(float afX, float afY) </code> Input should be normalized, 0-1, and a size in screen space is returned. —- == ImGui_NrmPosGroup == <code c++> cVector3f ImGui_NrmPosGroup(const cVector3f &in avPos, bool abOffsetInsideGroup=false) </code> Input should be normalized, 0-1, and a position in the current group space is returned. —- == ImGui_NrmPosGroup == <code c++> cVector3f ImGui_NrmPosGroup(float afX, float afY, float afZ, bool abOffsetInsideGroup=false) </code> Input should be normalized, 0-1, and a size in the current group space is returned. —- == ImGui_NrmPos2Group == <code c++> cVector2f ImGui_NrmPos2Group(float afX, float afY, bool abOffsetInsideGroup=false) </code> Input should be normalized, 0-1, and a size in the current group space is returned. —- == ImGui_NrmSizeGroup == <code c++> cVector2f ImGui_NrmSizeGroup(const cVector2f &in avSize) </code> Input should be normalized, 0-1, and a size in the current group space is returned. —- == ImGui_NrmSizeGroup == <code c++> cVector2f ImGui_NrmSizeGroup(float afX, float afY) </code> Input should be normalized, 0-1, and a size in the current group space is returned. —- == ImGui_NrmSizeKeepRatio == <code c++> cVector2f ImGui_NrmSizeKeepRatio(const cVector2f &in avSize) </code> Input should be normalized, 0-1, and a size in screen space is returned. —- == ImGui_NrmSizeKeepRatio == <code c++> cVector2f ImGui_NrmSizeKeepRatio(float afX, float afY) </code> Input should be normalized, 0-1, and a size in screen space is returned. —- == ImGui_NrmSizeGroupKeepRatio == <code c++> cVector2f ImGui_NrmSizeGroupKeepRatio(const cVector2f &in avSize) </code> Input should be normalized, 0-1, and a size in screen space is returned. —- == ImGui_NrmSizeGroupKeepRatio == <code c++> cVector2f ImGui_NrmSizeGroupKeepRatio(float afX, float afY) </code> Input should be normalized, 0-1, and a size in screen space is returned. —- == ImGui_GetRatioCorrectSizeByWidth == <code c++> cVector2f ImGui_GetRatioCorrectSizeByWidth(const cImGuiGfx &in aGfx, float afWidth) </code> Given an input width and a Gfx object, a size in screen space is returned, being aspect ratio correct according to input Gfx object. —- == ImGui_GetRatioCorrectSizeByNrmWidth == <code c++> cVector2f ImGui_GetRatioCorrectSizeByNrmWidth(const cImGuiGfx &in aGfx, float afWidth) </code> Input width should be normalized, 0-1, and a size in screen space is returned, being aspect ratio correct according to input Gfx object. —- == ImGui_GetRatioCorrectSizeByHeight == <code c++> cVector2f ImGui_GetRatioCorrectSizeByHeight(const cImGuiGfx &in aGfx, float afHeight) </code> Given an input height and a Gfx object, a size in screen space is returned, being aspect ratio correct according to input Gfx object. —- == ImGui_GetRatioCorrectSizeByNrmHeight == <code c++> cVector2f ImGui_GetRatioCorrectSizeByNrmHeight(const cImGuiGfx &in aGfx, float afHeight) </code> Input height should be normalized, 0-1, and a size in screen space is returned, being aspect ratio correct according to input Gfx object. —- == ImGui_GetRatioCorrectSizeByRect == <code c++> cVector2f ImGui_GetRatioCorrectSizeByRect(const cImGuiGfx &in aGfx, const cVector2f &in aRect, bool abCompensateForUV=false) </code> Given an input rect and a Gfx object, the maximum size in screen space to fit within said rect is returned, being aspect ratio correct according to input Gfx object. —- == ImGui_SetupWidgetRect == <code c++> void ImGui_SetupWidgetRect(const cVector3f &in avInPos, const cVector2f &in avInSize, cVector3f &out avOutPos, cVector2f &out avOutSize, const cVector2f &in avDefaultSize, const cImGuiGfx &in aGfx) </code> —- == ImGui_ActionTriggered == <code c++> bool ImGui_ActionTriggered(eImGuiAction aAction, bool abCheckIfUsed=false) </code> See if an action (sent to ImGui by game) has been triggered (just became down). * aAction: The action type. * abCheckIfUsed: If true, then false is returned if any other class for this action have been made. —- == ImGui_ActionIsDown == <code c++> bool ImGui_ActionIsDown(eImGuiAction aAction, bool abCheckIfUsed=false) </code> See if an action (sent to ImGui by game) is down. * aAction: The action type. * abCheckIfUsed: If true, then false is returned if any other class for this action have been made. —- == ImGui_GetMouseRel == <code c++> cVector2f ImGui_GetMouseRel() </code> the relative mouse movement. —- == ImGui_GetMouseRel3D == <code c++> cVector3f ImGui_GetMouseRel3D() </code> The relative mouse movement as 3D vector (z=0) —- == ImGui_GetMousePosition == <code c++> cVector2f ImGui_GetMousePosition() </code> The absolute mouse position —- == ImGui_GetMousePosition3D == <code c++> cVector3f ImGui_GetMousePosition3D() </code> The absolute mouse position as 3D vector (z=0) —- == ImGui_CheckMouseHasMoved == <code c++> bool ImGui_CheckMouseHasMoved() </code> Returns true if the mouse has been moved. —- == ImGui_SetFocus == <code c++> void ImGui_SetFocus(const tString &in asWidgetName) </code> Sets the widget that should be in focus. —- == ImGui_SetAlignment == <code c++> void ImGui_SetAlignment(eImGuiAlign aAlign) </code> Sets the alignment of the widget regarding the postion (if positon is top-left corner, center, etc). Applies to any widget declared after this call. —- == ImGui_SetUIMoveGroupFlags == <code c++> void ImGui_SetUIMoveGroupFlags(int alGroupFlags) </code> This sets what move group(s) the widget will belong to. When using keyboard/gamepad movement, it is only possible to move between widget that share the same group. This is a bitflag, that it is not the number, but binary bits that matter. To set it, use one or more, eFlagBit_* combined with the bitwise-or-opterator "pipe" TODO: fix pipe char. Example: SetUIMoveGroupFlags(eFlagBit_0 | eFlagBit_2); This will make widgets belong to group 0 and 2. Applies to any widget declared after this call. —- == ImGui_SetUIMoveWrapMode == <code c++> void ImGui_SetUIMoveWrapMode(eImGuiWrap aWrap) </code> Sets the keyboard/gamepad movement wrap mode, ie what happens when "off the edge". This is takes effect to any widgets that are defined after it is called. Default is always XY at the start of an OnGui call! —- == ImGui_GetStateInt == <code c++> int ImGui_GetStateInt(const tString &in asVarName, int alDefault=0) </code> —- == ImGui_GetStateFloat == <code c++> float ImGui_GetStateFloat(const tString &in asVarName, float afDefault=0.0f) </code> —- == ImGui_GetStateVector3f == <code c++> cVector3f ImGui_GetStateVector3f(const tString &in asVarName, const cVector3f &in avDefault) </code> —- == ImGui_GetStateColor == <code c++> cColor ImGui_GetStateColor(const tString &in asVarName, const cColor &in aDefault) </code> —- == ImGui_GetStateBool == <code c++> bool ImGui_GetStateBool(const tString &in asVarName, bool abDefault) </code> —- == ImGui_SetStateInt == <code c++> void ImGui_SetStateInt(const tString &in asVarName, int alVal) </code> —- == ImGui_SetStateFloat == <code c++> void ImGui_SetStateFloat(const tString &in asVarName, float afVal) </code> —- == ImGui_SetStateVector3f == <code c++> void ImGui_SetStateVector3f(const tString &in asVarName, const cVector3f &in avVal) </code> —- == ImGui_SetStateColor == <code c++> void ImGui_SetStateColor(const tString &in asVarName, const cColor &in aVal) </code> —- == ImGui_SetStateBool == <code c++> void ImGui_SetStateBool(const tString &in asVarName, bool abVal) </code> —- == ImGui_IncStateInt == <code c++> void ImGui_IncStateInt(const tString &in asVarName, int alVal) </code> —- == ImGui_IncStateFloat == <code c++> void ImGui_IncStateFloat(const tString &in asVarName, float afVal) </code> —- == ImGui_IncStateVector3f == <code c++> void ImGui_IncStateVector3f(const tString &in asVarName, const cVector3f &in avVal) </code> —- == ImGui_IncStateColor == <code c++> void ImGui_IncStateColor(const tString &in asVarName, const cColor &in aVal) </code> —- == ImGui_FadeStateFloat == <code c++> void ImGui_FadeStateFloat(const tString &in asVarName, float afGoalVal, float afTime, eEasing aType=eEasing_QuadInOut, bool abReplaceIfExist=true) </code> Adds a fade that will fade a float variable from its current value to goal over time. * asVarName: The name of the state var. * afGoalVal: The goal value to fade to. * afTime: How long the fade will take. * aType: the type of fade, meaning in what way the transiation will be. Sigmoid is default as this means the starts and ends smoothly. * abReplaceIfExist: if the variable is currently fading, that fade is replaced if true, else the function call will have no effect. —- == ImGui_FadeStateVector3f == <code c++> void ImGui_FadeStateVector3f(const tString &in asVarName, const cVector3f &in avGoalVal, float afTime, eEasing aType=eEasing_QuadInOut, bool abReplaceIfExist=true) </code> Adds a fade that will fade a Vector3f variable from its current value to goal over time. * asVarName: The name of the state var. * avGoalVal: The goal value to fade to. * afTime: How long the fade will take. * aType: the type of fade, meaning in what way the transiation will be. Sigmoid is default as this means the starts and ends smoothly. * abReplaceIfExist: if the variable is currently fading, that fade is replaced if true, else the function call will have no effect. —- == ImGui_FadeStateColor == <code c++> void ImGui_FadeStateColor(const tString &in asVarName, const cColor &in aGoalVal, float afTime, eEasing aType=eEasing_QuadInOut, bool abReplaceIfExist=true) </code> Adds a fade that will fade a Color variable from its current value to goal over time. * asVarName: The name of the state var. * aGoalVal: The goal value to fade to. * afTime: How long the fade will take. * aType: the type of fade, meaning in what way the transiation will be. Sigmoid is default as this means the starts and ends smoothly. * abReplaceIfExist: if the variable is currently fading, that fade is replaced if true, else the function call will have no effect. —- == ImGui_StopFade == <code c++> void ImGui_StopFade(const tString &in asVarName) </code> Stops the fading in the fader. —- == ImGui_IsFading == <code c++> bool ImGui_IsFading(const tString &in asVarName) </code> Checks if the fader is fading. —- == ImGui_FadeOver == <code c++> bool ImGui_FadeOver(const tString &in asName) </code> See if a fader ended this update. Mainly to do what ever event happens when FadeState is over. —- == ImGui_FadeOscillateFloat == <code c++> float ImGui_FadeOscillateFloat(const tString &in asVarName, float afStart, float afGoal, float afTime, eEasing aType=eEasing_QuadInOut) </code> This will fade a float state var value back and forth between two values and returns the current value. * asVarName: The name of the state var. * afStart: The start value * afGoal: The goal value * afTime: the time it takes to go from Start to Goal (or the opposite) * aType: The type of fade between the values. —- == ImGui_FadeOscillateVector3f == <code c++> cVector3f ImGui_FadeOscillateVector3f(const tString &in asVarName, const cVector3f &in avStart, const cVector3f &in avGoal, float afTime, eEasing aType=eEasing_QuadInOut) </code> This will fade a float * asVarName: The name of the state var. * avStart: The start value * avGoal: The goal value * afTime: the time it takes to go from Start to Goal (or the opposite) * aType: The type of fade between the values. —- == ImGui_FadeOscillateColor == <code c++> cColor ImGui_FadeOscillateColor(const tString &in asVarName, const cColor &in aStart, const cColor &in aGoal, float afTime, eEasing aType=eEasing_QuadInOut) </code> This will fade a float * asVarName: The name of the state var. * aStart: The start value * aGoal: The goal value * afTime: the time it takes to go from Start to Goal (or the opposite) * aType: The type of fade between the values. —- == ImGui_AddTimer == <code c++> void ImGui_AddTimer(const tString &in asName, float afTime) </code> Adds a timer, that ends of afTime time —- == ImGui_RepeatTimer == <code c++> bool ImGui_RepeatTimer(const tString &in asName, float afTime) </code> This will create a timer that is recreated when over. It returns true whenver the timer ends. Example: if(ImGui_RepeatTimer("mytime", 2)){EventThatHappensEvery2Secs();} —- == ImGui_StopTimer == <code c++> void ImGui_StopTimer(const tString &in asName) </code> Stops an active timer. —- == ImGui_TimerOver == <code c++> bool ImGui_TimerOver(const tString &in asName) </code> See if a timer ended this update. Mainly to do what ever event happens when AddTimer is over. —- == ImGui_TimerExists == <code c++> bool ImGui_TimerExists(const tString &in asName) </code> See if a timer is running. —- == ImGui_SetModColorMul == <code c++> void ImGui_SetModColorMul(const cColor &in aCol) </code> Sets a color modifier to any widgets defined below. Default: (1,1,1,1) —- == ImGui_SetModTextColorMul == <code c++> void ImGui_SetModTextColorMul(const cColor &in aCol) </code> Sets a text color modifier to any widgets defined below. Default: (1,1,1,1) —- == ImGui_SetModUseUIPos == <code c++> void ImGui_SetModUseUIPos(bool abX) </code> Sets if the widgets below should be possible to navigate to using keyboard/gamepad movement. Default: true —- == ImGui_SetModUISizeHoriExpansion == <code c++> void ImGui_SetModUISizeHoriExpansion(float afNeg, float afPos) </code> Expands (or contracts, use negative values) the size of the UI Pos size horitzontally. Use this to make a small UI element reachable with keyboard/gamepad movement, but by making the UI box line up with the other widgets. Turn on the debug feature Draw GUI debug to see the boxes. —- == ImGui_SetModUISizeVertExpansion == <code c++> void ImGui_SetModUISizeVertExpansion(float afNeg, float afPos) </code> Expands (or contracts, use negative values) the size of the UI Pos size vertically. Use this to make a small UI element reachable with keyboard/gamepad movement, but by making the UI box line up with the other widgets. Turn on the debug feature Draw GUI debug to see the boxes. —- == ImGui_SetModUseInput == <code c++> void ImGui_SetModUseInput(bool abX) </code> Sets if the widgets below should use any input. Default: true —- == ImGui_SetModRotateAngle == <code c++> void ImGui_SetModRotateAngle(float afX) </code> Sets the rotatation angle for any widgets below. Default: 0. Applies to ImGui_DrawGfx too —- == ImGui_SetModRotateCustomPivot == <code c++> void ImGui_SetModRotateCustomPivot(bool abX) </code> Sets if a custom pivot should be used for widget below when rotating. Default: false. Applies to ImGui_DrawGfx too —- == ImGui_SetModRotatePivot == <code c++> void ImGui_SetModRotatePivot(const cVector2f &in avPivot) </code> Sets the custom pivot used for widget below when rotating. Default: false. Applies to ImGui_DrawGfx too ImGui_SetModRotateCustomPivot must be true for it to have effect. —- == ImGui_SetModGfx == <code c++> void ImGui_SetModGfx(const cImGuiGfx &in aGfx) </code> Sets an additional image to widgets below, only used by Buttons so far. Default _ckgedit_QUOTckgedit>.
void ImGui_ResetModifiers()
Resets all modifiers to default values.
void ImGui_PushModifiers()
Saves the currently set modifiers on a stack.
void ImGui_PopModifiers()
Reverts all SetMod* settings to the latest one pushed on the stack.
bool ImGui_PrevPressed()
Checks if the previously defined widget is being pressed.
bool ImGui_PrevBecamePressed()
Checks if the previously defined widget just became pressed.
bool ImGui_PrevInFocus()
Checks if the previously defined widget is in focus.
cVector3f ImGui_PrevPosition()
Gets the previously defined widget final position (might not be what is supplied as argument)
cVector2f ImGui_PrevSize()
Gets the previously defined widget final size (might not be what is supplied as argument)
bool ImGui_PrevBecameInFocus()
Checks if the previously defined widget just became in focus.
bool ImGui_PrevWasInFocus()
Checks if the previously defined widget just lost focus
bool ImGui_PrevMouseOver()
Checks if the previously defined widget has the mouse over it.
bool ImGui_PrevUpdated()
Checks if the previously defined widget's internal values was updated somehow.
void ImGui_ClearPrevData()
This resets any data retrieved by ImGui_Prev* to the default values. Mostly used when creating custom Widget types.
void ImGui_GroupBegin(const cVector3f &in avPos, const cVector2f &in avSize=cVector2f_MinusOne, bool abClip=false)
Begins the definition of a group which all subsequent Widgets will be relative to. Must be ended with ImGui_GroupEnd Nested groups are possible
void ImGui_GroupEnd()
Ends a group started with ImGui_GroupBegin
cVector3f ImGui_GetCurrentGroupPos()
cVector2f ImGui_GetCurrentGroupSize()
void ImGui_LayoutBegin(eImGuiLayout aType, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne, const cVector2f &in avSpacing=cVector2f_Zero)
Begins the definition of a layout which will affect the placement of all subsequence Widgets. Must be ended with ImGui_LayoutEnd Nested groups are possible
void ImGui_LayoutEnd()
Ends a layout started with ImGui_LayoutBegin
void ImGui_AddLayoutHorizontalSpace(float afWidth, float afHeight=0)
Adds a horizontal space in a layout. Height is useful in XY-type of layout.
void ImGui_AddLayoutVerticalSpace(float afHeight)
Adds a horizontal space in a layout
void ImGui_AddItemStringW(const tWString &in asStr)
Adds a string item to a list. Used by some widgets like MultiToggle and MultiSelect
void ImGui_AddItemString(const tString &in asStr)
bool ImGui_DoButton(const tString &in asName, const tString &in asText, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne)
Draw and do logic for a Button Widget using default data. Returns true if it became pressed.
bool ImGui_DoRepeatButton(const tString &in asName, const tString &in asText, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne)
Draw and do logic for a Repeat Button Widget using default data. Returns true while the button is pressed.
bool ImGui_DoToggleButton(const tString &in asName, const tString &in asText, bool abDefaultChecked, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne)
Draw and do logic for a Toggle Button Widget using default data. Returns true if button is toggled on else false.
void ImGui_DoLabel(const tString &in asText, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne, float afFontSizeMul=1)
Draw and do logic for a Label Widget using default data.
bool ImGui_DoCheckBox(const tString &in asName, const tString &in asText, bool abDefaultChecked, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne)
Draw and do logic for a Check Box Widget using default data. Return if checked or not.
float ImGui_DoTextFrame(const tString &in asText, const cVector2f &in avEdgeSpacing, float afRowSpace, float afStartRowOffset, const cVector3f &in avPos, const cVector2f &in avSize)
Draw and do logic for a Text Frame Widget using default data. Returns the number of rows (might be fractional) that does not fit the frame, useful when making scroll slider.
int ImGui_DoMultiSelectExt(const tString &in asName, int alDefaultSelectedItem, const cImGuiMultiSelectData &in aData, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne)
Draw and do logic for a Multi Select Widget. Returns currently selected item. use ImGui_AddItem* to add selection options.
int ImGui_DoMultiSelect(const tString &in asName, int alDefaultSelectedItem, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne)
Draw and do logic for a Multi Select Widget using default data. Returns currently selected item. use ImGui_AddItem* to add selection options.
void ImGui_DoWindowStart(const tString &in asCaption, const cImGuiWindowData &in aData, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne, bool abClip=true, bool abForceCaptionFit=true)
Begins the definition of a Window which will affect the placement of all subsequence Widgets. Must be ended with ImGui_DoWindowEnd
void ImGui_DoWindowEnd()
Draw and do logic for a Window. Must be previously started with ImGui_DoWindowStart.
void ImGui_DoGauge(const cImGuiGaugeData &in aData, float afFillAmount, const cVector3f &in avPos=cVector3f_Zero, const cVector2f &in avSize=cVector2f_MinusOne)
Draw and do logic for a gauge (progress bar).
void ImGui_SetDefaultButton(const cImGuiButtonData &in aData)
cImGuiButtonData ImGui_GetDefaultButton()
void ImGui_SetDefaultSliderHorizontal(const cImGuiSliderData &in aData)
cImGuiSliderData ImGui_GetDefaultSliderHorizontal()
void ImGui_SetDefaultSliderVertical(const cImGuiSliderData &in aData)
cImGuiSliderData ImGui_GetDefaultSliderVertical()
void ImGui_SetDefaultLabel(const cImGuiLabelData &in aData)
cImGuiLabelData ImGui_GetDefaultLabel()
void ImGui_SetDefaultCheckBox(const cImGuiCheckBoxData &in aData)
cImGuiCheckBoxData ImGui_GetDefaultCheckBox()
void ImGui_SetDefaultTextFrame(const cImGuiTextFrameData &in aData)
cImGuiTextFrameData ImGui_GetDefaultTextFrame()
void ImGui_SetDefaultMultiSelect(const cImGuiMultiSelectData &in aData)
cImGuiMultiSelectData ImGui_GetDefaultMultiSelect()
void ImGui_SetDefaultMouse(const cImGuiGfx &in aGfx)
void ImGui_SetDefaultFont(const cImGuiFont &in aFont)
tString ImGui_GetName()
Get name of the ImGui
void ImGui_SetShowMouseAutomatically(bool abX)
Set if default mouse should be drawn if not rendered with DoMouse
bool ImGui_GetShowMouseAutomatically()
Get if default mouse should be drawn if not rendered with DoMouse
bool ImGui_IsFirstRun()
Get if this is the first update for the ImGui
float ImGui_GetTimeStep()
Get the current timestep
float ImGui_GetTimeCount()
Get the time that has passed since first run.
bool ImGui_GetMouseVisible()
Get if the mouse is currently visible
void ImGui_DrawLine(const cVector2f &in avStart, const cVector2f &in avEnd, float afZ, float afThickness=1.0f, const cColor &in aCol=cColor_White)
Draw a line between two positions. Is not affected by Layout or Group.
void ImGui_DrawLineExt(const cVector2f &in avStart, const cVector2f &in avEnd, float afZ, float afThickness, const cColor &in aCol, const cImGuiGfx &in aGfx)
void ImGui_AddLineStripVertex(const cVector2f &in avVertex)
Add a vertex to a line strip for drawing. Is not affected by Layout or Group.
void ImGui_AddLineStripNrmVertex(const cVector2f &in avVertex)
Add a vertex to a line strip for drawing in normalized coords. Is not affected by Layout or Group.
void ImGui_DrawAndClearLineStrip(float afZ, float afThickness, const cColor &in aCol=cColor_White, const cImGuiGfx &in aGfx=cImGuiGfx())
Draws and clears the current line strip set up through AddLineStripVertex. Is not affected by Layout or Group.
void ImGui_DrawGfx(const cImGuiGfx &in aGfx, const cVector3f &in avPos, const cVector2f &in avSize=cVector2f_MinusOne, const cColor &in aCol=cColor_White)
Draw an image. Is not affected by Alignment, Layout or Group.
void ImGui_DrawAlignedGfx(const cImGuiGfx &in aGfx, const cVector3f &in avPos, eImGuiAlign aAlignment, const cVector2f &in avSize=cVector2f_MinusOne, const cColor &in aCol=cColor_White)
Draw an aligned image. Is not affected by Alignment, Layout or Group.
void ImGui_DrawFontW(const tWString &in asText, const cImGuiFont &in aFont, const cVector3f &in avPos, eFontAlign aAlign, const cVector2f &in avSizeMul=1, const cColor &in aColMul=1.0f)
Draw font. Is not affected by Alignment, Layout or Group.
void ImGui_DrawFontW(const tString &in asText, const cImGuiFont &in aFont, const cVector3f &in avPos, eFontAlign aAlign, const cVector2f &in avSizeMul=1, const cColor &in aColMul=1.0f)
void ImGui_DrawFrame(const cImGuiFrameGfx &in aGfx, const cVector3f &in avPos, const cVector2f &in avSize=cVector2f_MinusOne, const cColor &in aCol=cColor_White)
Draw frame. Is not affected by Alignment, Layout or Group.
bool CheckCurrentWidgetBecamePressed(const tString &in asName, bool abCheckConfirm, bool abCheckMouseLeft)
Check if a widget has been just pressed by confirm and/or mouse, sets internal vars for this too
bool CheckCurrentWidgetIsPressed(const tString &in asName, bool abCheckConfirm, bool abCheckMouseLeft)
Check if a widget is being pressed by confirm and/or mouse, sets internal vars for this too
bool CheckIsPressedAction(bool abCheckConfirm, bool abCheckMouseLeft)
Quick way to check if confirm and/or mouse was just pressed.
bool CheckBecamePressedAction(bool abCheckConfirm, bool abCheckMouseLeft)
Quick way to check if confirm and/or mouse is being pressed.
int GetDefaultOrCurrentInt(uint64 alDefaultVarId, uint64 alCurrentVarId, int alDefaultValue)
Gets the int value from the CurrentVar, if the value in default equals alDefaultVarId, else alDefaultVarId is returned. Used as a helper to have default param values.
float GetDefaultOrCurrentFloat(uint64 alDefaultVarId, uint64 alCurrentVarId, float afDefaultValue)
Gets the float value from the CurrentVar, if the value in default equals alDefaultVarId, else alDefaultVarId is returned. Used as a helper to have default param values.
void LockMouseFocus()
When this is called, the focus will not change during this or the next update.
bool MouseFocusIsLocked()
See if mouse is locked
cVector2f CalcWidgetSize(const cVector2f &in avArgSize, const cVector2f &in avDefaultSize)
If an element in ArgSize is negative, the output for the element will have the value of DefaultSize instead.
void SetupWidgetRect(const cVector3f &in avInPos, const cVector2f &in avInSize, cVector3f &out avOutPos, cVector2f &out avOutSize, const cVector2f &in avDefaultSize, const cImGuiGfx &in aGfx)
Gets the final postion and size for a widget taking into account aligntment, groups, layout, etc.
cVector2f GetUsedGfxSize(const cImGuiGfx &in aGfx, const cVector2f &in avCustomSize)
Get the size of a graphics by using axis value of aGfx instead of custom, if the custom value is negative.
cVector2f GetGfxSize(const cImGuiGfx &in aGfx)
Get the size of a gfx.
float GetFontLengthW(const cImGuiFont &in aFont, float afSizeMul, const tWString &in asText)
Get the length that a string will be given a certain font.
float GetFontLengthW(const cImGuiFont &in aFont, float afSizeMul, const tString &in asText)
void GetFontWordWrapRows(const cImGuiFont &in aFont, float afSizeMul, const tString &in asText, float afLineWidth, array< tWString > &out avLines)
Get an array containing each line of a text using word wrap.
void GetFontWordWrapRowsW(const cImGuiFont &in aFont, float afSizeMul, const tWString &in asText, float afLineWidth, array< tWString > &out avLines)
float ImGui_ResizeFontToFit(const tString &in asText, cImGuiFont &aFont, float afMaxWidth=-1, float afSizeMultiplier=1.0f)
Modifies the size of the font so that it will fit within the specified width.
float ImGui_ResizeFontToFit(const tWString &in asText, cImGuiFont &aFont, float afMaxWidth=-1, float afSizeMultiplier=1.0f)
bool CheckMouseOver(const cVector3f &in avPos, const cVector2f &in avSize)
Check if mouse if over a certain rect. This will take rotation into account.
uint64 GetIdFromNameAndCheckCollision(const tString &in asName, int alTableIdx)
This gets the id for a name while also checking for hash collision. Used when you want get ids directly. Table index is the type of id you want: 0: gfx, 1: font, 2: widget, 3: state var
void ImGui_DrawReadableBackground(cVector3f vPos, cVector2f vSize, float fAlpha)
void ImGui_DrawReadableLabel(const tString &in asText, cVector3f vPos, cVector2f vSize, float fAlpha, cColor aColor=cColor(1, 1, 1), float afFontSize=20.0f)
void ImGui_DrawReadableTextFrame(const tString &in asText, cVector3f vPos, cVector2f vSize, float fAlpha, cColor aColor=cColor(1, 1, 1), float afFontSize=20.0f)
void ImGui_PreloadImage(const tString &in asFile, eImGuiGfx aType=eImGuiGfx_Image)
Preloads an image
void Gui_CreateCameraTexture(tString asName, cVector2l avSize, uint alFrameRate, float afFOV, float afNearPlane, float afFarPlane)
asName, Name of the special texture avSize, Resolution of the camera alFrameRatem, Frame rate of the camera, never higher than the games frame rate afFOV, Field of view afNearPlane, Near plane used for culling afFarPlane, Max distance the camera can render, lower = faster!
void Gui_DestroyCameraTexture(tString asName)
Destroys camera texture
void Gui_SetCameraTextureMatrix(tString asName, cMatrixf a_mtxCamera)
Use a matrix to set the location and rotation of the camera
void Gui_AttachCameraTextureToEntity(tString asName, tString asEntity)
asName, Name of the texture asEntity, Name of the entity to attach to, works with CameraAnimationAreas!