mirror of
https://github.com/ocornut/imgui.git
synced 2026-01-09 23:54:20 +00:00
Add C++ module support
This commit is contained in:
parent
922a11f084
commit
3ce5c37b39
2 changed files with 684 additions and 1 deletions
|
|
@ -39,7 +39,7 @@ Dear ImGui is particularly suited to integration in game engines (for tooling),
|
||||||
|
|
||||||
### Usage
|
### Usage
|
||||||
|
|
||||||
**The core of Dear ImGui is self-contained within a few platform-agnostic files** which you can easily compile in your application/engine. They are all the files in the root folder of the repository (`imgui*.cpp`, `imgui*.h`). **No specific build process is required**: you can add all files into your existing project.
|
**The core of Dear ImGui is self-contained within a few platform-agnostic files** which you can easily compile in your application/engine. They are all the files in the root folder of the repository (`imgui*.cpp`, `imgui*.h`). **No specific build process is required**: you can add all files into your existing project. Dear ImGui is provided as a C++ module for users of C++20 and above, in file `imgui.cppm` as module `ImGui`.
|
||||||
|
|
||||||
**Backends for a variety of graphics API and rendering platforms** are provided in the [backends/](https://github.com/ocornut/imgui/tree/master/backends) folder, along with example applications in the [examples/](https://github.com/ocornut/imgui/tree/master/examples) folder. You may also create your own backend. Anywhere where you can render textured triangles, you can render Dear ImGui.
|
**Backends for a variety of graphics API and rendering platforms** are provided in the [backends/](https://github.com/ocornut/imgui/tree/master/backends) folder, along with example applications in the [examples/](https://github.com/ocornut/imgui/tree/master/examples) folder. You may also create your own backend. Anywhere where you can render textured triangles, you can render Dear ImGui.
|
||||||
|
|
||||||
|
|
|
||||||
683
imgui.cppm
Normal file
683
imgui.cppm
Normal file
|
|
@ -0,0 +1,683 @@
|
||||||
|
// dear imgui, v1.92.6 WIP
|
||||||
|
// (modules)
|
||||||
|
|
||||||
|
module;
|
||||||
|
|
||||||
|
#include "imgui.h"
|
||||||
|
|
||||||
|
export module ImGui;
|
||||||
|
|
||||||
|
export {
|
||||||
|
// Scalar data types
|
||||||
|
using ::ImGuiID;
|
||||||
|
using ::ImS8;
|
||||||
|
using ::ImU8;
|
||||||
|
using ::ImS16;
|
||||||
|
using ::ImU16;
|
||||||
|
using ::ImS32;
|
||||||
|
using ::ImU32;
|
||||||
|
using ::ImS64;
|
||||||
|
using ::ImU64;
|
||||||
|
|
||||||
|
// Forward declarations: ImDrawList, ImFontAtlas layer
|
||||||
|
using ::ImDrawChannel;
|
||||||
|
using ::ImDrawCmd;
|
||||||
|
using ::ImDrawData;
|
||||||
|
using ::ImDrawList;
|
||||||
|
using ::ImDrawListSharedData;
|
||||||
|
using ::ImDrawListSplitter;
|
||||||
|
using ::ImDrawVert;
|
||||||
|
using ::ImFont;
|
||||||
|
using ::ImFontAtlas;
|
||||||
|
using ::ImFontAtlasBuilder;
|
||||||
|
using ::ImFontAtlasRect;
|
||||||
|
using ::ImFontBaked;
|
||||||
|
using ::ImFontConfig;
|
||||||
|
using ::ImFontGlyph;
|
||||||
|
using ::ImFontGlyphRangesBuilder;
|
||||||
|
using ::ImFontLoader;
|
||||||
|
using ::ImTextureData;
|
||||||
|
using ::ImTextureRect;
|
||||||
|
using ::ImColor;
|
||||||
|
|
||||||
|
// Forward declarations: ImGui layer
|
||||||
|
using ::ImGuiContext;
|
||||||
|
using ::ImGuiIO;
|
||||||
|
using ::ImGuiInputTextCallbackData;
|
||||||
|
using ::ImGuiKeyData;
|
||||||
|
using ::ImGuiListClipper;
|
||||||
|
using ::ImGuiMultiSelectIO;
|
||||||
|
using ::ImGuiOnceUponAFrame;
|
||||||
|
using ::ImGuiPayload;
|
||||||
|
using ::ImGuiPlatformIO;
|
||||||
|
using ::ImGuiPlatformImeData;
|
||||||
|
using ::ImGuiSelectionBasicStorage;
|
||||||
|
using ::ImGuiSelectionExternalStorage;
|
||||||
|
using ::ImGuiSelectionRequest;
|
||||||
|
using ::ImGuiSizeCallbackData;
|
||||||
|
using ::ImGuiStorage;
|
||||||
|
using ::ImGuiStoragePair;
|
||||||
|
using ::ImGuiStyle;
|
||||||
|
using ::ImGuiTableSortSpecs;
|
||||||
|
using ::ImGuiTableColumnSortSpecs;
|
||||||
|
using ::ImGuiTextBuffer;
|
||||||
|
using ::ImGuiTextFilter;
|
||||||
|
using ::ImGuiViewport;
|
||||||
|
|
||||||
|
// Enumerations
|
||||||
|
using ::ImGuiDir;
|
||||||
|
using ::ImGuiKey;
|
||||||
|
using ::ImGuiMouseSource;
|
||||||
|
using ::ImGuiSortDirection;
|
||||||
|
using ::ImGuiCol;
|
||||||
|
using ::ImGuiCond;
|
||||||
|
using ::ImGuiDataType;
|
||||||
|
using ::ImGuiMouseButton;
|
||||||
|
using ::ImGuiMouseCursor;
|
||||||
|
using ::ImGuiStyleVar;
|
||||||
|
using ::ImGuiTableBgTarget;
|
||||||
|
|
||||||
|
// Flags
|
||||||
|
using ::ImDrawFlags;
|
||||||
|
using ::ImDrawListFlags;
|
||||||
|
using ::ImDrawTextFlags;
|
||||||
|
using ::ImFontFlags;
|
||||||
|
using ::ImFontAtlasFlags;
|
||||||
|
using ::ImGuiBackendFlags;
|
||||||
|
using ::ImGuiButtonFlags;
|
||||||
|
using ::ImGuiChildFlags;
|
||||||
|
using ::ImGuiColorEditFlags;
|
||||||
|
using ::ImGuiConfigFlags;
|
||||||
|
using ::ImGuiComboFlags;
|
||||||
|
using ::ImGuiDragDropFlags;
|
||||||
|
using ::ImGuiFocusedFlags;
|
||||||
|
using ::ImGuiHoveredFlags;
|
||||||
|
using ::ImGuiInputFlags;
|
||||||
|
using ::ImGuiInputTextFlags;
|
||||||
|
using ::ImGuiInputTextFlags;
|
||||||
|
using ::ImGuiItemFlags;
|
||||||
|
using ::ImGuiKeyChord;
|
||||||
|
using ::ImGuiListClipperFlags;
|
||||||
|
using ::ImGuiPopupFlags;
|
||||||
|
using ::ImGuiMultiSelectFlags;
|
||||||
|
using ::ImGuiSelectableFlags;
|
||||||
|
using ::ImGuiSliderFlags;
|
||||||
|
using ::ImGuiTabBarFlags;
|
||||||
|
using ::ImGuiTabItemFlags;
|
||||||
|
using ::ImGuiTableFlags;
|
||||||
|
using ::ImGuiTableColumnFlags;
|
||||||
|
using ::ImGuiTableRowFlags;
|
||||||
|
using ::ImGuiViewportFlags;
|
||||||
|
using ::ImGuiWindowFlags;
|
||||||
|
|
||||||
|
// Character types
|
||||||
|
using ::ImWchar32;
|
||||||
|
using ::ImWchar16;
|
||||||
|
using ::ImWchar;
|
||||||
|
|
||||||
|
// Multi-Selection item index or identifier when using BeginMultiSelect()
|
||||||
|
using ::ImGuiSelectionUserData;
|
||||||
|
|
||||||
|
// Callback and functions types
|
||||||
|
using ::ImGuiInputTextCallback;
|
||||||
|
using ::ImGuiSizeCallback;
|
||||||
|
using ::ImGuiMemAllocFunc;
|
||||||
|
using ::ImGuiMemFreeFunc;
|
||||||
|
|
||||||
|
// ImVec2
|
||||||
|
using ::ImVec2;
|
||||||
|
|
||||||
|
// ImVec4
|
||||||
|
using ::ImVec4;
|
||||||
|
|
||||||
|
// ImTextureID
|
||||||
|
#ifndef ImTextureID
|
||||||
|
using ::ImTextureID;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// ImTextureRef
|
||||||
|
using ::ImTextureRef;
|
||||||
|
|
||||||
|
// IM_MALLOC(), IM_FREE(), IM_NEW(), IM_PLACEMENT_NEW(), IM_DELETE()
|
||||||
|
using ::ImNewWrapper;
|
||||||
|
using ::operator new;
|
||||||
|
using ::operator delete;
|
||||||
|
constexpr void* IM_ALLOC(size_t _SIZE) {
|
||||||
|
return ImGui::MemAlloc(_SIZE);
|
||||||
|
}
|
||||||
|
constexpr void IM_FREE(void* _PTR) {
|
||||||
|
ImGui::MemFree(_PTR);
|
||||||
|
}
|
||||||
|
using ::IM_DELETE;
|
||||||
|
using ::ImVector;
|
||||||
|
}
|
||||||
|
|
||||||
|
export namespace ImGui {
|
||||||
|
// Context creation and access
|
||||||
|
using ImGui::CreateContext;
|
||||||
|
using ImGui::DestroyContext;
|
||||||
|
using ImGui::GetCurrentContext;
|
||||||
|
using ImGui::SetCurrentContext;
|
||||||
|
|
||||||
|
// Main
|
||||||
|
using ImGui::GetIO;
|
||||||
|
using ImGui::GetPlatformIO;
|
||||||
|
using ImGui::GetStyle;
|
||||||
|
using ImGui::NewFrame;
|
||||||
|
using ImGui::EndFrame;
|
||||||
|
using ImGui::Render;
|
||||||
|
using ImGui::GetDrawData;
|
||||||
|
|
||||||
|
// Demo, Debug, Information
|
||||||
|
using ImGui::ShowDemoWindow;
|
||||||
|
using ImGui::ShowMetricsWindow;
|
||||||
|
using ImGui::ShowDebugLogWindow;
|
||||||
|
using ImGui::ShowIDStackToolWindow;
|
||||||
|
using ImGui::ShowAboutWindow;
|
||||||
|
using ImGui::ShowStyleEditor;
|
||||||
|
using ImGui::ShowStyleSelector;
|
||||||
|
using ImGui::ShowFontSelector;
|
||||||
|
using ImGui::ShowUserGuide;
|
||||||
|
using ImGui::GetVersion;
|
||||||
|
|
||||||
|
// Styles
|
||||||
|
using ImGui::StyleColorsDark;
|
||||||
|
using ImGui::StyleColorsLight;
|
||||||
|
using ImGui::StyleColorsClassic;
|
||||||
|
|
||||||
|
// Windows
|
||||||
|
using ImGui::Begin;
|
||||||
|
using ImGui::End;
|
||||||
|
|
||||||
|
// Child Windows
|
||||||
|
using ImGui::BeginChild;
|
||||||
|
using ImGui::EndChild;
|
||||||
|
|
||||||
|
// Windows Utilities
|
||||||
|
using ImGui::IsWindowAppearing;
|
||||||
|
using ImGui::IsWindowCollapsed;
|
||||||
|
using ImGui::IsWindowFocused;
|
||||||
|
using ImGui::IsWindowHovered;
|
||||||
|
using ImGui::GetWindowDrawList;
|
||||||
|
using ImGui::GetWindowPos;
|
||||||
|
using ImGui::GetWindowSize;
|
||||||
|
using ImGui::GetWindowWidth;
|
||||||
|
using ImGui::GetWindowHeight;
|
||||||
|
|
||||||
|
// Window manipulation
|
||||||
|
using ImGui::SetNextWindowPos;
|
||||||
|
using ImGui::SetNextWindowSize;
|
||||||
|
using ImGui::SetNextWindowSizeConstraints;
|
||||||
|
using ImGui::SetNextWindowContentSize;
|
||||||
|
using ImGui::SetNextWindowCollapsed;
|
||||||
|
using ImGui::SetNextWindowFocus;
|
||||||
|
using ImGui::SetNextWindowScroll;
|
||||||
|
using ImGui::SetNextWindowBgAlpha;
|
||||||
|
using ImGui::SetWindowPos;
|
||||||
|
using ImGui::SetWindowSize;
|
||||||
|
using ImGui::SetWindowCollapsed;
|
||||||
|
using ImGui::SetWindowFocus;
|
||||||
|
|
||||||
|
// Windows Scrolling
|
||||||
|
using ImGui::GetScrollX;
|
||||||
|
using ImGui::GetScrollY;
|
||||||
|
using ImGui::SetScrollX;
|
||||||
|
using ImGui::SetScrollY;
|
||||||
|
using ImGui::GetScrollMaxX;
|
||||||
|
using ImGui::GetScrollMaxY;
|
||||||
|
using ImGui::SetScrollHereX;
|
||||||
|
using ImGui::SetScrollHereY;
|
||||||
|
using ImGui::SetScrollFromPosX;
|
||||||
|
using ImGui::SetScrollFromPosY;
|
||||||
|
|
||||||
|
// Parameters stacks (font)
|
||||||
|
using ImGui::PushFont;
|
||||||
|
using ImGui::PopFont;
|
||||||
|
using ImGui::GetFont;
|
||||||
|
using ImGui::GetFontSize;
|
||||||
|
using ImGui::GetFontBaked;
|
||||||
|
|
||||||
|
// Parameters stacks (shared)
|
||||||
|
using ImGui::PushStyleColor;
|
||||||
|
using ImGui::PopStyleColor;
|
||||||
|
using ImGui::PushStyleVar;
|
||||||
|
using ImGui::PushStyleVarX;
|
||||||
|
using ImGui::PushStyleVarY;
|
||||||
|
using ImGui::PopStyleVar;
|
||||||
|
using ImGui::PushItemFlag;
|
||||||
|
using ImGui::PopItemFlag;
|
||||||
|
|
||||||
|
// Parameters stacks (current window)
|
||||||
|
using ImGui::PushItemWidth;
|
||||||
|
using ImGui::PopItemWidth;
|
||||||
|
using ImGui::SetNextItemWidth;
|
||||||
|
using ImGui::CalcItemWidth;
|
||||||
|
using ImGui::PushTextWrapPos;
|
||||||
|
using ImGui::PopTextWrapPos;
|
||||||
|
|
||||||
|
// Style read access
|
||||||
|
using ImGui::GetFontTexUvWhitePixel;
|
||||||
|
using ImGui::GetColorU32;
|
||||||
|
using ImGui::GetStyleColorVec4;
|
||||||
|
|
||||||
|
// Layout cursor positioning
|
||||||
|
using ImGui::GetCursorScreenPos;
|
||||||
|
using ImGui::SetCursorScreenPos;
|
||||||
|
using ImGui::GetContentRegionAvail;
|
||||||
|
using ImGui::GetCursorPos;
|
||||||
|
using ImGui::GetCursorPosX;
|
||||||
|
using ImGui::GetCursorPosY;
|
||||||
|
using ImGui::SetCursorPos;
|
||||||
|
using ImGui::SetCursorPosX;
|
||||||
|
using ImGui::SetCursorPosY;
|
||||||
|
using ImGui::GetCursorStartPos;
|
||||||
|
|
||||||
|
// Other layout functions
|
||||||
|
using ImGui::Separator;
|
||||||
|
using ImGui::SameLine;
|
||||||
|
using ImGui::NewLine;
|
||||||
|
using ImGui::Spacing;
|
||||||
|
using ImGui::Dummy;
|
||||||
|
using ImGui::Indent;
|
||||||
|
using ImGui::Unindent;
|
||||||
|
using ImGui::BeginGroup;
|
||||||
|
using ImGui::EndGroup;
|
||||||
|
using ImGui::AlignTextToFramePadding;
|
||||||
|
using ImGui::GetTextLineHeight;
|
||||||
|
using ImGui::GetTextLineHeightWithSpacing;
|
||||||
|
using ImGui::GetFrameHeight;
|
||||||
|
using ImGui::GetFrameHeightWithSpacing;
|
||||||
|
|
||||||
|
// ID stack/scopes
|
||||||
|
using ImGui::PushID;
|
||||||
|
using ImGui::PopID;
|
||||||
|
using ImGui::GetID;
|
||||||
|
|
||||||
|
// Widgets: Text
|
||||||
|
using ImGui::TextUnformatted;
|
||||||
|
using ImGui::Text;
|
||||||
|
using ImGui::TextV;
|
||||||
|
using ImGui::TextColored;
|
||||||
|
using ImGui::TextColoredV;
|
||||||
|
using ImGui::TextDisabled;
|
||||||
|
using ImGui::TextDisabledV;
|
||||||
|
using ImGui::TextWrapped;
|
||||||
|
using ImGui::TextWrappedV;
|
||||||
|
using ImGui::LabelText;
|
||||||
|
using ImGui::LabelTextV;
|
||||||
|
using ImGui::BulletText;
|
||||||
|
using ImGui::BulletTextV;
|
||||||
|
using ImGui::SeparatorText;
|
||||||
|
|
||||||
|
// Widgets: Main
|
||||||
|
using ImGui::Button;
|
||||||
|
using ImGui::SmallButton;
|
||||||
|
using ImGui::InvisibleButton;
|
||||||
|
using ImGui::ArrowButton;
|
||||||
|
using ImGui::Checkbox;
|
||||||
|
using ImGui::CheckboxFlags;
|
||||||
|
using ImGui::RadioButton;
|
||||||
|
using ImGui::ProgressBar;
|
||||||
|
using ImGui::Bullet;
|
||||||
|
using ImGui::TextLink;
|
||||||
|
using ImGui::TextLinkOpenURL;
|
||||||
|
|
||||||
|
// Widgets: Images
|
||||||
|
using ImGui::Image;
|
||||||
|
using ImGui::ImageWithBg;
|
||||||
|
using ImGui::ImageButton;
|
||||||
|
|
||||||
|
// Widgets: Combo Box (Dropdown)
|
||||||
|
using ImGui::BeginCombo;
|
||||||
|
using ImGui::EndCombo;
|
||||||
|
using ImGui::Combo;
|
||||||
|
|
||||||
|
// Widgets: Drag Sliders
|
||||||
|
using ImGui::DragFloat;
|
||||||
|
using ImGui::DragFloat2;
|
||||||
|
using ImGui::DragFloat3;
|
||||||
|
using ImGui::DragFloat4;
|
||||||
|
using ImGui::DragFloatRange2;
|
||||||
|
using ImGui::DragInt;
|
||||||
|
using ImGui::DragInt2;
|
||||||
|
using ImGui::DragInt3;
|
||||||
|
using ImGui::DragInt4;
|
||||||
|
using ImGui::DragIntRange2;
|
||||||
|
using ImGui::DragScalar;
|
||||||
|
using ImGui::DragScalarN;
|
||||||
|
|
||||||
|
// Widgets: Regular Sliders
|
||||||
|
using ImGui::SliderFloat;
|
||||||
|
using ImGui::SliderFloat2;
|
||||||
|
using ImGui::SliderFloat3;
|
||||||
|
using ImGui::SliderFloat4;
|
||||||
|
using ImGui::SliderAngle;
|
||||||
|
using ImGui::SliderInt;
|
||||||
|
using ImGui::SliderInt2;
|
||||||
|
using ImGui::SliderInt3;
|
||||||
|
using ImGui::SliderInt4;
|
||||||
|
using ImGui::SliderScalar;
|
||||||
|
using ImGui::SliderScalarN;
|
||||||
|
using ImGui::VSliderFloat;
|
||||||
|
using ImGui::VSliderInt;
|
||||||
|
using ImGui::VSliderScalar;
|
||||||
|
|
||||||
|
// Widgets: Input with Keyboard
|
||||||
|
using ImGui::InputText;
|
||||||
|
using ImGui::InputTextMultiline;
|
||||||
|
using ImGui::InputTextWithHint;
|
||||||
|
using ImGui::InputFloat;
|
||||||
|
using ImGui::InputFloat2;
|
||||||
|
using ImGui::InputFloat3;
|
||||||
|
using ImGui::InputFloat4;
|
||||||
|
using ImGui::InputInt;
|
||||||
|
using ImGui::InputInt2;
|
||||||
|
using ImGui::InputInt3;
|
||||||
|
using ImGui::InputInt4;
|
||||||
|
using ImGui::InputDouble;
|
||||||
|
using ImGui::InputScalar;
|
||||||
|
using ImGui::InputScalarN;
|
||||||
|
|
||||||
|
// Widgets: Color Editor/Picker
|
||||||
|
using ImGui::ColorEdit3;
|
||||||
|
using ImGui::ColorEdit4;
|
||||||
|
using ImGui::ColorPicker3;
|
||||||
|
using ImGui::ColorPicker4;
|
||||||
|
using ImGui::ColorButton;
|
||||||
|
using ImGui::SetColorEditOptions;
|
||||||
|
|
||||||
|
// Widgets: Trees
|
||||||
|
using ImGui::TreeNode;
|
||||||
|
using ImGui::TreeNodeV;
|
||||||
|
using ImGui::TreeNodeEx;
|
||||||
|
using ImGui::TreeNodeExV;
|
||||||
|
using ImGui::TreePush;
|
||||||
|
using ImGui::TreePop;
|
||||||
|
using ImGui::GetTreeNodeToLabelSpacing;
|
||||||
|
using ImGui::CollapsingHeader;
|
||||||
|
using ImGui::SetNextItemOpen;
|
||||||
|
using ImGui::SetNextItemStorageID;
|
||||||
|
|
||||||
|
// Widgets: Selectables
|
||||||
|
using ImGui::Selectable;
|
||||||
|
|
||||||
|
// Multi-selection system for Selectable(), Checkbox(), TreeNode() functions [BETA]
|
||||||
|
using ImGui::BeginMultiSelect;
|
||||||
|
using ImGui::EndMultiSelect;
|
||||||
|
using ImGui::SetNextItemSelectionUserData;
|
||||||
|
using ImGui::IsItemToggledSelection;
|
||||||
|
|
||||||
|
// Widgets: List Boxes
|
||||||
|
using ImGui::BeginListBox;
|
||||||
|
using ImGui::EndListBox;
|
||||||
|
using ImGui::ListBox;
|
||||||
|
|
||||||
|
// Widgets: Data Plotting
|
||||||
|
using ImGui::PlotLines;
|
||||||
|
using ImGui::PlotHistogram;
|
||||||
|
|
||||||
|
// Widgets: Value() Helpers.
|
||||||
|
using ImGui::Value;
|
||||||
|
|
||||||
|
// Widgets: Menus
|
||||||
|
using ImGui::BeginMenuBar;
|
||||||
|
using ImGui::EndMenuBar;
|
||||||
|
using ImGui::BeginMainMenuBar;
|
||||||
|
using ImGui::EndMainMenuBar;
|
||||||
|
using ImGui::BeginMenu;
|
||||||
|
using ImGui::EndMenu;
|
||||||
|
using ImGui::MenuItem;
|
||||||
|
|
||||||
|
// Tooltips
|
||||||
|
using ImGui::BeginTooltip;
|
||||||
|
using ImGui::EndTooltip;
|
||||||
|
using ImGui::SetTooltip;
|
||||||
|
using ImGui::SetTooltipV;
|
||||||
|
|
||||||
|
// Tooltips: helpers for showing a tooltip when hovering an item
|
||||||
|
using ImGui::BeginItemTooltip;
|
||||||
|
using ImGui::SetItemTooltip;
|
||||||
|
using ImGui::SetItemTooltipV;
|
||||||
|
|
||||||
|
// Popups, Modals
|
||||||
|
using ImGui::BeginPopup;
|
||||||
|
using ImGui::BeginPopupModal;
|
||||||
|
using ImGui::EndPopup;
|
||||||
|
|
||||||
|
// Popups: open/close functions
|
||||||
|
using ImGui::OpenPopup;
|
||||||
|
using ImGui::OpenPopupOnItemClick;
|
||||||
|
using ImGui::CloseCurrentPopup;
|
||||||
|
|
||||||
|
// Popups: open+begin combined functions helpers
|
||||||
|
using ImGui::BeginPopupContextItem;
|
||||||
|
using ImGui::BeginPopupContextWindow;
|
||||||
|
using ImGui::BeginPopupContextVoid;
|
||||||
|
|
||||||
|
// Popups: query functions
|
||||||
|
using ImGui::IsPopupOpen;
|
||||||
|
|
||||||
|
// Tables
|
||||||
|
using ImGui::BeginTable;
|
||||||
|
using ImGui::EndTable;
|
||||||
|
using ImGui::TableNextRow;
|
||||||
|
using ImGui::TableNextColumn;
|
||||||
|
using ImGui::TableSetColumnIndex;
|
||||||
|
|
||||||
|
// Tables: Headers & Columns declaration
|
||||||
|
using ImGui::TableSetupColumn;
|
||||||
|
using ImGui::TableSetupScrollFreeze;
|
||||||
|
using ImGui::TableHeader;
|
||||||
|
using ImGui::TableHeadersRow;
|
||||||
|
using ImGui::TableAngledHeadersRow;
|
||||||
|
|
||||||
|
// Tables: Sorting & Miscellaneous functions
|
||||||
|
using ImGui::TableGetSortSpecs;
|
||||||
|
using ImGui::TableGetColumnCount;
|
||||||
|
using ImGui::TableGetColumnIndex;
|
||||||
|
using ImGui::TableGetRowIndex;
|
||||||
|
using ImGui::TableGetColumnName;
|
||||||
|
using ImGui::TableGetColumnFlags;
|
||||||
|
using ImGui::TableSetColumnEnabled;
|
||||||
|
using ImGui::TableGetHoveredColumn;
|
||||||
|
using ImGui::TableSetBgColor;
|
||||||
|
|
||||||
|
// Legacy Columns API
|
||||||
|
using ImGui::Columns;
|
||||||
|
using ImGui::NextColumn;
|
||||||
|
using ImGui::GetColumnIndex;
|
||||||
|
using ImGui::GetColumnWidth;
|
||||||
|
using ImGui::SetColumnWidth;
|
||||||
|
using ImGui::GetColumnOffset;
|
||||||
|
using ImGui::SetColumnOffset;
|
||||||
|
using ImGui::GetColumnsCount;
|
||||||
|
|
||||||
|
// Tab Bars, Tabs
|
||||||
|
using ImGui::BeginTabBar;
|
||||||
|
using ImGui::EndTabBar;
|
||||||
|
using ImGui::BeginTabItem;
|
||||||
|
using ImGui::EndTabItem;
|
||||||
|
using ImGui::TabItemButton;
|
||||||
|
using ImGui::SetTabItemClosed;
|
||||||
|
|
||||||
|
// Logging/Capture
|
||||||
|
using ImGui::LogToTTY;
|
||||||
|
using ImGui::LogToFile;
|
||||||
|
using ImGui::LogToClipboard;
|
||||||
|
using ImGui::LogFinish;
|
||||||
|
using ImGui::LogButtons;
|
||||||
|
using ImGui::LogText;
|
||||||
|
using ImGui::LogTextV;
|
||||||
|
|
||||||
|
// Drag and Drop
|
||||||
|
using ImGui::BeginDragDropSource;
|
||||||
|
using ImGui::SetDragDropPayload;
|
||||||
|
using ImGui::EndDragDropSource;
|
||||||
|
using ImGui::BeginDragDropTarget;
|
||||||
|
using ImGui::AcceptDragDropPayload;
|
||||||
|
using ImGui::EndDragDropTarget;
|
||||||
|
using ImGui::GetDragDropPayload;
|
||||||
|
|
||||||
|
// Disabling [BETA API]
|
||||||
|
using ImGui::BeginDisabled;
|
||||||
|
using ImGui::EndDisabled;
|
||||||
|
|
||||||
|
// Clipping
|
||||||
|
using ImGui::PushClipRect;
|
||||||
|
using ImGui::PopClipRect;
|
||||||
|
|
||||||
|
// Focus, Activation
|
||||||
|
using ImGui::SetItemDefaultFocus;
|
||||||
|
using ImGui::SetKeyboardFocusHere;
|
||||||
|
|
||||||
|
// Keyboard/Gamepad Navigation
|
||||||
|
using ImGui::SetNavCursorVisible;
|
||||||
|
|
||||||
|
// Overlapping mode
|
||||||
|
using ImGui::SetNextItemAllowOverlap;
|
||||||
|
|
||||||
|
// Item/Widgets Utilities and Query Functions
|
||||||
|
using ImGui::IsItemHovered;
|
||||||
|
using ImGui::IsItemActive;
|
||||||
|
using ImGui::IsItemFocused;
|
||||||
|
using ImGui::IsItemClicked;
|
||||||
|
using ImGui::IsItemVisible;
|
||||||
|
using ImGui::IsItemEdited;
|
||||||
|
using ImGui::IsItemActivated;
|
||||||
|
using ImGui::IsItemDeactivated;
|
||||||
|
using ImGui::IsItemDeactivatedAfterEdit;
|
||||||
|
using ImGui::IsItemToggledOpen;
|
||||||
|
using ImGui::IsAnyItemHovered;
|
||||||
|
using ImGui::IsAnyItemActive;
|
||||||
|
using ImGui::IsAnyItemFocused;
|
||||||
|
using ImGui::GetItemID;
|
||||||
|
using ImGui::GetItemRectMin;
|
||||||
|
using ImGui::GetItemRectMax;
|
||||||
|
using ImGui::GetItemRectSize;
|
||||||
|
|
||||||
|
// Viewports
|
||||||
|
using ImGui::GetMainViewport;
|
||||||
|
|
||||||
|
// Background/Foreground Draw Lists
|
||||||
|
using ImGui::GetBackgroundDrawList;
|
||||||
|
using ImGui::GetForegroundDrawList;
|
||||||
|
|
||||||
|
// Miscellaneous Utilities
|
||||||
|
using ImGui::IsRectVisible;
|
||||||
|
using ImGui::GetTime;
|
||||||
|
using ImGui::GetFrameCount;
|
||||||
|
using ImGui::GetDrawListSharedData;
|
||||||
|
using ImGui::GetStyleColorName;
|
||||||
|
using ImGui::SetStateStorage;
|
||||||
|
using ImGui::GetStateStorage;
|
||||||
|
|
||||||
|
// Text Utilities
|
||||||
|
using ImGui::CalcTextSize;
|
||||||
|
|
||||||
|
// Color Utilities
|
||||||
|
using ImGui::ColorConvertU32ToFloat4;
|
||||||
|
using ImGui::ColorConvertFloat4ToU32;
|
||||||
|
using ImGui::ColorConvertRGBtoHSV;
|
||||||
|
using ImGui::ColorConvertHSVtoRGB;
|
||||||
|
|
||||||
|
// Inputs Utilities: Keyboard/Mouse/Gamepad
|
||||||
|
using ImGui::IsKeyDown;
|
||||||
|
using ImGui::IsKeyPressed;
|
||||||
|
using ImGui::IsKeyReleased;
|
||||||
|
using ImGui::IsKeyChordPressed;
|
||||||
|
using ImGui::GetKeyPressedAmount;
|
||||||
|
using ImGui::GetKeyName;
|
||||||
|
using ImGui::SetNextFrameWantCaptureKeyboard;
|
||||||
|
|
||||||
|
// Inputs Utilities: Shortcut Testing & Routing [BETA]
|
||||||
|
using ImGui::Shortcut;
|
||||||
|
using ImGui::SetNextItemShortcut;
|
||||||
|
|
||||||
|
// Inputs Utilities: Key/Input Ownership [BETA]
|
||||||
|
using ImGui::SetItemKeyOwner;
|
||||||
|
|
||||||
|
// Inputs Utilities: Mouse
|
||||||
|
using ImGui::IsMouseDown;
|
||||||
|
using ImGui::IsMouseClicked;
|
||||||
|
using ImGui::IsMouseReleased;
|
||||||
|
using ImGui::IsMouseDoubleClicked;
|
||||||
|
using ImGui::IsMouseReleasedWithDelay;
|
||||||
|
using ImGui::GetMouseClickedCount;
|
||||||
|
using ImGui::IsMouseHoveringRect;
|
||||||
|
using ImGui::IsMousePosValid;
|
||||||
|
using ImGui::IsAnyMouseDown;
|
||||||
|
using ImGui::GetMousePos;
|
||||||
|
using ImGui::GetMousePosOnOpeningCurrentPopup;
|
||||||
|
using ImGui::IsMouseDragging;
|
||||||
|
using ImGui::GetMouseDragDelta;
|
||||||
|
using ImGui::ResetMouseDragDelta;
|
||||||
|
using ImGui::GetMouseCursor;
|
||||||
|
using ImGui::SetMouseCursor;
|
||||||
|
using ImGui::SetNextFrameWantCaptureMouse;
|
||||||
|
|
||||||
|
// Clipboard Utilities
|
||||||
|
using ImGui::GetClipboardText;
|
||||||
|
using ImGui::SetClipboardText;
|
||||||
|
|
||||||
|
// Settings/.Ini Utilities
|
||||||
|
using ImGui::LoadIniSettingsFromDisk;
|
||||||
|
using ImGui::LoadIniSettingsFromMemory;
|
||||||
|
using ImGui::SaveIniSettingsToDisk;
|
||||||
|
using ImGui::SaveIniSettingsToMemory;
|
||||||
|
|
||||||
|
// Debug Utilities
|
||||||
|
using ImGui::DebugTextEncoding;
|
||||||
|
using ImGui::DebugFlashStyleColor;
|
||||||
|
using ImGui::DebugStartItemPicker;
|
||||||
|
using ImGui::DebugCheckVersionAndDataLayout;
|
||||||
|
#ifndef IMGUI_DISABLE_DEBUG_TOOLS
|
||||||
|
using ImGui::DebugLog;
|
||||||
|
using ImGui::DebugLogV;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Memory Allocators
|
||||||
|
using ImGui::SetAllocatorFunctions;
|
||||||
|
using ImGui::GetAllocatorFunctions;
|
||||||
|
using ImGui::MemAlloc;
|
||||||
|
using ImGui::MemFree;
|
||||||
|
}
|
||||||
|
|
||||||
|
export {
|
||||||
|
using ::ImGuiWindowFlags_;
|
||||||
|
using ::ImGuiChildFlags_;
|
||||||
|
using ::ImGuiItemFlags_;
|
||||||
|
using ::ImGuiInputTextFlags_;
|
||||||
|
using ::ImGuiTreeNodeFlags_;
|
||||||
|
using ::ImGuiPopupFlags_;
|
||||||
|
using ::ImGuiSelectableFlags_;
|
||||||
|
using ::ImGuiComboFlags_;
|
||||||
|
using ::ImGuiTabBarFlags_;
|
||||||
|
using ::ImGuiTabItemFlags_;
|
||||||
|
using ::ImGuiFocusedFlags_;
|
||||||
|
using ::ImGuiHoveredFlags_;
|
||||||
|
using ::ImGuiDragDropFlags_;
|
||||||
|
using ::ImGuiDataType_;
|
||||||
|
using ::ImGuiInputFlags_;
|
||||||
|
using ::ImGuiConfigFlags_;
|
||||||
|
using ::ImGuiBackendFlags_;
|
||||||
|
using ::ImGuiCol_;
|
||||||
|
using ::ImGuiStyleVar_;
|
||||||
|
using ::ImGuiButtonFlags_;
|
||||||
|
using ::ImGuiColorEditFlags_;
|
||||||
|
using ::ImGuiSliderFlags_;
|
||||||
|
using ::ImGuiMouseButton_;
|
||||||
|
using ::ImGuiMouseCursor_;
|
||||||
|
using ::ImGuiCond_;
|
||||||
|
using ::ImGuiTableFlags_;
|
||||||
|
using ::ImGuiTableColumnFlags_;
|
||||||
|
using ::ImGuiTableRowFlags_;
|
||||||
|
using ::ImGuiTableBgTarget_;
|
||||||
|
using ::ImGuiListClipperFlags_;
|
||||||
|
using ::ImGuiMultiSelectFlags_;
|
||||||
|
using ::ImGuiSelectionRequestType;
|
||||||
|
using ::ImDrawFlags_;
|
||||||
|
using ::ImDrawListFlags_;
|
||||||
|
using ::ImFontAtlasFlags_;
|
||||||
|
using ::ImFontFlags_;
|
||||||
|
using ::ImGuiViewportFlags_;
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue