Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
ImGuiIO Struct Reference

#include <src/imgui/imgui.h>

+ Collaboration diagram for ImGuiIO:

Public Member Functions

IMGUI_API void AddInputCharacter (unsigned int c)
 
IMGUI_API void AddInputCharacterUTF16 (ImWchar16 c)
 
IMGUI_API void AddInputCharactersUTF8 (const char *str)
 
IMGUI_API void ClearInputCharacters ()
 
IMGUI_API ImGuiIO ()
 

Public Attributes

ImGuiConfigFlags ConfigFlags
 
ImGuiBackendFlags BackendFlags
 
ImVec2 DisplaySize
 
float DeltaTime
 
float IniSavingRate
 
const char * IniFilename
 
const char * LogFilename
 
float MouseDoubleClickTime
 
float MouseDoubleClickMaxDist
 
float MouseDragThreshold
 
int KeyMap [ImGuiKey_COUNT]
 
float KeyRepeatDelay
 
float KeyRepeatRate
 
voidUserData
 
ImFontAtlasFonts
 
float FontGlobalScale
 
bool FontAllowUserScaling
 
ImFontFontDefault
 
ImVec2 DisplayFramebufferScale
 
bool MouseDrawCursor
 
bool ConfigMacOSXBehaviors
 
bool ConfigInputTextCursorBlink
 
bool ConfigDragClickToInputText
 
bool ConfigWindowsResizeFromEdges
 
bool ConfigWindowsMoveFromTitleBarOnly
 
float ConfigMemoryCompactTimer
 
const char * BackendPlatformName
 
const char * BackendRendererName
 
voidBackendPlatformUserData
 
voidBackendRendererUserData
 
voidBackendLanguageUserData
 
const char *(* GetClipboardTextFn )(void *user_data)
 
void(* SetClipboardTextFn )(void *user_data, const char *text)
 
voidClipboardUserData
 
void(* ImeSetInputScreenPosFn )(int x, int y)
 
voidImeWindowHandle
 
ImVec2 MousePos
 
bool MouseDown [5]
 
float MouseWheel
 
float MouseWheelH
 
bool KeyCtrl
 
bool KeyShift
 
bool KeyAlt
 
bool KeySuper
 
bool KeysDown [512]
 
float NavInputs [ImGuiNavInput_COUNT]
 
bool WantCaptureMouse
 
bool WantCaptureKeyboard
 
bool WantTextInput
 
bool WantSetMousePos
 
bool WantSaveIniSettings
 
bool NavActive
 
bool NavVisible
 
float Framerate
 
int MetricsRenderVertices
 
int MetricsRenderIndices
 
int MetricsRenderWindows
 
int MetricsActiveWindows
 
int MetricsActiveAllocations
 
ImVec2 MouseDelta
 
ImGuiKeyModFlags KeyMods
 
ImVec2 MousePosPrev
 
ImVec2 MouseClickedPos [5]
 
double MouseClickedTime [5]
 
bool MouseClicked [5]
 
bool MouseDoubleClicked [5]
 
bool MouseReleased [5]
 
bool MouseDownOwned [5]
 
bool MouseDownWasDoubleClick [5]
 
float MouseDownDuration [5]
 
float MouseDownDurationPrev [5]
 
ImVec2 MouseDragMaxDistanceAbs [5]
 
float MouseDragMaxDistanceSqr [5]
 
float KeysDownDuration [512]
 
float KeysDownDurationPrev [512]
 
float NavInputsDownDuration [ImGuiNavInput_COUNT]
 
float NavInputsDownDurationPrev [ImGuiNavInput_COUNT]
 
float PenPressure
 
ImWchar16 InputQueueSurrogate
 
ImVector< ImWcharInputQueueCharacters
 

Detailed Description

Constructor & Destructor Documentation

◆ ImGuiIO()

ImGuiIO::ImGuiIO ( )
1057{
1058 // Most fields are initialized with zero
1059 memset(this, 0, sizeof(*this));
1060 IM_ASSERT(IM_ARRAYSIZE(ImGuiIO::MouseDown) == ImGuiMouseButton_COUNT && IM_ARRAYSIZE(ImGuiIO::MouseClicked) == ImGuiMouseButton_COUNT); // Our pre-C++11 IM_STATIC_ASSERT() macros triggers warning on modern compilers so we don't use it here.
1061
1062 // Settings
1065 DisplaySize = ImVec2(-1.0f, -1.0f);
1066 DeltaTime = 1.0f / 60.0f;
1067 IniSavingRate = 5.0f;
1068 IniFilename = "imgui.ini";
1069 LogFilename = "imgui_log.txt";
1070 MouseDoubleClickTime = 0.30f;
1072 for (int i = 0; i < ImGuiKey_COUNT; i++)
1073 KeyMap[i] = -1;
1074 KeyRepeatDelay = 0.275f;
1075 KeyRepeatRate = 0.050f;
1076 UserData = NULL;
1077
1078 Fonts = NULL;
1079 FontGlobalScale = 1.0f;
1080 FontDefault = NULL;
1081 FontAllowUserScaling = false;
1082 DisplayFramebufferScale = ImVec2(1.0f, 1.0f);
1083
1084 // Miscellaneous options
1085 MouseDrawCursor = false;
1086#ifdef __APPLE__
1087 ConfigMacOSXBehaviors = true; // Set Mac OS X style defaults based on __APPLE__ compile time flag
1088#else
1089 ConfigMacOSXBehaviors = false;
1090#endif
1095
1096 // Platform Functions
1099 GetClipboardTextFn = GetClipboardTextFn_DefaultImpl; // Platform dependent default implementations
1101 ClipboardUserData = NULL;
1103 ImeWindowHandle = NULL;
1104
1105 // Input (NB: we already have memset zero the entire structure!)
1106 MousePos = ImVec2(-FLT_MAX, -FLT_MAX);
1107 MousePosPrev = ImVec2(-FLT_MAX, -FLT_MAX);
1108 MouseDragThreshold = 6.0f;
1109 for (int i = 0; i < IM_ARRAYSIZE(MouseDownDuration); i++) MouseDownDuration[i] = MouseDownDurationPrev[i] = -1.0f;
1110 for (int i = 0; i < IM_ARRAYSIZE(KeysDownDuration); i++) KeysDownDuration[i] = KeysDownDurationPrev[i] = -1.0f;
1111 for (int i = 0; i < IM_ARRAYSIZE(NavInputsDownDuration); i++) NavInputsDownDuration[i] = -1.0f;
1112}
static void SetClipboardTextFn_DefaultImpl(void *user_data, const char *text)
Definition imgui.cpp:10786
static const char * GetClipboardTextFn_DefaultImpl(void *user_data)
Definition imgui.cpp:10780
static void ImeSetInputScreenPosFn_DefaultImpl(int x, int y)
Definition imgui.cpp:10824
@ ImGuiConfigFlags_None
Definition imgui.h:1387
@ ImGuiBackendFlags_None
Definition imgui.h:1403
@ ImGuiKey_COUNT
Definition imgui.h:1336
@ ImGuiMouseButton_COUNT
Definition imgui.h:1589
#define IM_ASSERT(_EXPR)
Definition imgui.h:81
#define IM_ARRAYSIZE(_ARR)
Definition imgui.h:83
ImVec2 DisplaySize
Definition imgui.h:1782
ImVec2 MousePosPrev
Definition imgui.h:1880
ImFont * FontDefault
Definition imgui.h:1798
float MouseDoubleClickMaxDist
Definition imgui.h:1788
void * ClipboardUserData
Definition imgui.h:1826
bool ConfigWindowsMoveFromTitleBarOnly
Definition imgui.h:1807
void(* SetClipboardTextFn)(void *user_data, const char *text)
Definition imgui.h:1825
ImFontAtlas * Fonts
Definition imgui.h:1795
float KeyRepeatDelay
Definition imgui.h:1791
float NavInputsDownDuration[ImGuiNavInput_COUNT]
Definition imgui.h:1894
float DeltaTime
Definition imgui.h:1783
const char * BackendPlatformName
Definition imgui.h:1816
float MouseDownDurationPrev[5]
Definition imgui.h:1889
ImGuiConfigFlags ConfigFlags
Definition imgui.h:1780
void * BackendPlatformUserData
Definition imgui.h:1818
float KeysDownDuration[512]
Definition imgui.h:1892
ImVec2 DisplayFramebufferScale
Definition imgui.h:1799
float FontGlobalScale
Definition imgui.h:1796
bool MouseClicked[5]
Definition imgui.h:1883
const char * IniFilename
Definition imgui.h:1785
void * ImeWindowHandle
Definition imgui.h:1831
void * UserData
Definition imgui.h:1793
bool MouseDown[5]
Definition imgui.h:1838
ImGuiBackendFlags BackendFlags
Definition imgui.h:1781
const char *(* GetClipboardTextFn)(void *user_data)
Definition imgui.h:1824
bool MouseDrawCursor
Definition imgui.h:1802
float IniSavingRate
Definition imgui.h:1784
void * BackendRendererUserData
Definition imgui.h:1819
int KeyMap[ImGuiKey_COUNT]
Definition imgui.h:1790
bool ConfigWindowsResizeFromEdges
Definition imgui.h:1806
bool ConfigMacOSXBehaviors
Definition imgui.h:1803
float MouseDownDuration[5]
Definition imgui.h:1888
float KeysDownDurationPrev[512]
Definition imgui.h:1893
void(* ImeSetInputScreenPosFn)(int x, int y)
Definition imgui.h:1830
float KeyRepeatRate
Definition imgui.h:1792
const char * BackendRendererName
Definition imgui.h:1817
bool ConfigInputTextCursorBlink
Definition imgui.h:1804
ImVec2 MousePos
Definition imgui.h:1837
void * BackendLanguageUserData
Definition imgui.h:1820
float MouseDragThreshold
Definition imgui.h:1789
const char * LogFilename
Definition imgui.h:1786
float ConfigMemoryCompactTimer
Definition imgui.h:1808
float MouseDoubleClickTime
Definition imgui.h:1787
bool FontAllowUserScaling
Definition imgui.h:1797
Definition imgui.h:245

References BackendFlags, BackendLanguageUserData, BackendPlatformName, BackendPlatformUserData, BackendRendererName, BackendRendererUserData, ClipboardUserData, ConfigFlags, ConfigInputTextCursorBlink, ConfigMacOSXBehaviors, ConfigMemoryCompactTimer, ConfigWindowsMoveFromTitleBarOnly, ConfigWindowsResizeFromEdges, DeltaTime, DisplayFramebufferScale, DisplaySize, FontAllowUserScaling, FontDefault, FontGlobalScale, Fonts, GetClipboardTextFn, GetClipboardTextFn_DefaultImpl(), IM_ARRAYSIZE, IM_ASSERT, ImeSetInputScreenPosFn, ImeSetInputScreenPosFn_DefaultImpl(), ImeWindowHandle, ImGuiBackendFlags_None, ImGuiConfigFlags_None, ImGuiKey_COUNT, ImGuiMouseButton_COUNT, IniFilename, IniSavingRate, KeyMap, KeyRepeatDelay, KeyRepeatRate, KeysDownDuration, KeysDownDurationPrev, LogFilename, MouseClicked, MouseDoubleClickMaxDist, MouseDoubleClickTime, MouseDown, MouseDownDuration, MouseDownDurationPrev, MouseDragThreshold, MouseDrawCursor, MousePos, MousePosPrev, NavInputsDownDuration, SetClipboardTextFn, SetClipboardTextFn_DefaultImpl(), and UserData.

+ Here is the call graph for this function:

Member Function Documentation

◆ AddInputCharacter()

void ImGuiIO::AddInputCharacter ( unsigned int  c)
1118{
1119 if (c != 0)
1121}
ImWchar16 ImWchar
Definition imgui.h:220
#define IM_UNICODE_CODEPOINT_INVALID
Definition imgui.h:2006
#define IM_UNICODE_CODEPOINT_MAX
Definition imgui.h:2010
ImVector< ImWchar > InputQueueCharacters
Definition imgui.h:1898
void push_back(const T &v)
Definition imgui.h:1696

References IM_UNICODE_CODEPOINT_INVALID, IM_UNICODE_CODEPOINT_MAX, InputQueueCharacters, and ImVector< T >::push_back().

Referenced by Slic3r::GUI::ImGuiWrapper::update_key_data().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ AddInputCharactersUTF8()

void ImGuiIO::AddInputCharactersUTF8 ( const char *  str)
1160{
1161 while (*utf8_chars != 0)
1162 {
1163 unsigned int c = 0;
1164 utf8_chars += ImTextCharFromUtf8(&c, utf8_chars, NULL);
1165 if (c != 0)
1167 }
1168}
int ImTextCharFromUtf8(unsigned int *out_char, const char *in_text, const char *in_text_end)
Definition imgui.cpp:1619

References ImTextCharFromUtf8(), InputQueueCharacters, and ImVector< T >::push_back().

+ Here is the call graph for this function:

◆ AddInputCharacterUTF16()

void ImGuiIO::AddInputCharacterUTF16 ( ImWchar16  c)
1126{
1127 if (c == 0 && InputQueueSurrogate == 0)
1128 return;
1129
1130 if ((c & 0xFC00) == 0xD800) // High surrogate, must save
1131 {
1132 if (InputQueueSurrogate != 0)
1135 return;
1136 }
1137
1138 ImWchar cp = c;
1139 if (InputQueueSurrogate != 0)
1140 {
1141 if ((c & 0xFC00) != 0xDC00) // Invalid low surrogate
1142 {
1144 }
1145 else
1146 {
1147#if IM_UNICODE_CODEPOINT_MAX == 0xFFFF
1148 cp = IM_UNICODE_CODEPOINT_INVALID; // Codepoint will not fit in ImWchar
1149#else
1150 cp = (ImWchar)(((InputQueueSurrogate - 0xD800) << 10) + (c - 0xDC00) + 0x10000);
1151#endif
1152 }
1153
1155 }
1157}
ImWchar16 InputQueueSurrogate
Definition imgui.h:1897

References IM_UNICODE_CODEPOINT_INVALID, InputQueueCharacters, InputQueueSurrogate, and ImVector< T >::push_back().

+ Here is the call graph for this function:

◆ ClearInputCharacters()

void ImGuiIO::ClearInputCharacters ( )
1171{
1173}
void resize(int new_size)
Definition imgui.h:1690

References InputQueueCharacters, and ImVector< T >::resize().

+ Here is the call graph for this function:

Member Data Documentation

◆ BackendFlags

◆ BackendLanguageUserData

void* ImGuiIO::BackendLanguageUserData

Referenced by ImGuiIO().

◆ BackendPlatformName

const char* ImGuiIO::BackendPlatformName

Referenced by ImGuiIO(), and ImGui::ShowAboutWindow().

◆ BackendPlatformUserData

void* ImGuiIO::BackendPlatformUserData

Referenced by ImGuiIO().

◆ BackendRendererName

const char* ImGuiIO::BackendRendererName

Referenced by ImGuiIO(), and ImGui::ShowAboutWindow().

◆ BackendRendererUserData

void* ImGuiIO::BackendRendererUserData

Referenced by ImGuiIO().

◆ ClipboardUserData

◆ ConfigDragClickToInputText

bool ImGuiIO::ConfigDragClickToInputText

◆ ConfigFlags

◆ ConfigInputTextCursorBlink

bool ImGuiIO::ConfigInputTextCursorBlink

◆ ConfigMacOSXBehaviors

◆ ConfigMemoryCompactTimer

float ImGuiIO::ConfigMemoryCompactTimer

◆ ConfigWindowsMoveFromTitleBarOnly

bool ImGuiIO::ConfigWindowsMoveFromTitleBarOnly

◆ ConfigWindowsResizeFromEdges

◆ DeltaTime

◆ DisplayFramebufferScale

◆ DisplaySize

◆ FontAllowUserScaling

bool ImGuiIO::FontAllowUserScaling

◆ FontDefault

◆ FontGlobalScale

◆ Fonts

◆ Framerate

float ImGuiIO::Framerate

◆ GetClipboardTextFn

const char *(* ImGuiIO::GetClipboardTextFn) (void *user_data)

◆ ImeSetInputScreenPosFn

void(* ImGuiIO::ImeSetInputScreenPosFn) (int x, int y)

Referenced by ImGuiIO(), and ImGui::EndFrame().

◆ ImeWindowHandle

void* ImGuiIO::ImeWindowHandle

Referenced by ImGuiIO().

◆ IniFilename

◆ IniSavingRate

float ImGuiIO::IniSavingRate

◆ InputQueueCharacters

◆ InputQueueSurrogate

ImWchar16 ImGuiIO::InputQueueSurrogate

Referenced by AddInputCharacterUTF16().

◆ KeyAlt

◆ KeyCtrl

◆ KeyMap

◆ KeyMods

◆ KeyRepeatDelay

◆ KeyRepeatRate

◆ KeysDown

◆ KeysDownDuration

◆ KeysDownDurationPrev

float ImGuiIO::KeysDownDurationPrev[512]

◆ KeyShift

◆ KeySuper

◆ LogFilename

const char* ImGuiIO::LogFilename

Referenced by ImGuiIO(), and ImGui::LogToFile().

◆ MetricsActiveAllocations

int ImGuiIO::MetricsActiveAllocations

◆ MetricsActiveWindows

int ImGuiIO::MetricsActiveWindows

◆ MetricsRenderIndices

int ImGuiIO::MetricsRenderIndices

◆ MetricsRenderVertices

int ImGuiIO::MetricsRenderVertices

◆ MetricsRenderWindows

int ImGuiIO::MetricsRenderWindows

◆ MouseClicked

◆ MouseClickedPos

◆ MouseClickedTime

double ImGuiIO::MouseClickedTime[5]

◆ MouseDelta

◆ MouseDoubleClicked

◆ MouseDoubleClickMaxDist

float ImGuiIO::MouseDoubleClickMaxDist

◆ MouseDoubleClickTime

float ImGuiIO::MouseDoubleClickTime

◆ MouseDown

◆ MouseDownDuration

◆ MouseDownDurationPrev

float ImGuiIO::MouseDownDurationPrev[5]

◆ MouseDownOwned

bool ImGuiIO::MouseDownOwned[5]

◆ MouseDownWasDoubleClick

bool ImGuiIO::MouseDownWasDoubleClick[5]

◆ MouseDragMaxDistanceAbs

ImVec2 ImGuiIO::MouseDragMaxDistanceAbs[5]

◆ MouseDragMaxDistanceSqr

float ImGuiIO::MouseDragMaxDistanceSqr[5]

◆ MouseDragThreshold

◆ MouseDrawCursor

bool ImGuiIO::MouseDrawCursor

◆ MousePos

◆ MousePosPrev

◆ MouseReleased

◆ MouseWheel

◆ MouseWheelH

float ImGuiIO::MouseWheelH

◆ NavActive

◆ NavInputs

◆ NavInputsDownDuration

float ImGuiIO::NavInputsDownDuration[ImGuiNavInput_COUNT]

◆ NavInputsDownDurationPrev

float ImGuiIO::NavInputsDownDurationPrev[ImGuiNavInput_COUNT]

◆ NavVisible

bool ImGuiIO::NavVisible

◆ PenPressure

float ImGuiIO::PenPressure

Referenced by ShowDemoWindowMisc().

◆ SetClipboardTextFn

void(* ImGuiIO::SetClipboardTextFn) (void *user_data, const char *text)

◆ UserData

void* ImGuiIO::UserData

Referenced by ImGuiIO().

◆ WantCaptureKeyboard

◆ WantCaptureMouse

◆ WantSaveIniSettings

bool ImGuiIO::WantSaveIniSettings

Referenced by ImGui::UpdateSettings().

◆ WantSetMousePos

bool ImGuiIO::WantSetMousePos

◆ WantTextInput


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