Commit Graph

18 Commits

Author SHA1 Message Date
Steve Streeting
cff6ff6f66 Fix compilation error on UE 5.1 2023-02-16 17:05:16 +00:00
ben
cb89223375 Merged changes from WiggleWizard
Removed ImPlot stuff from WiggleWizard
Also has some changes on sharing mouse input
2022-04-01 11:41:38 -07:00
WiggleWizard
56987d244f Updated ImGui to 1.87, added ImPlot v0.13 WIP and updated core plugin sources to work with UE5, updated ImGui and ImPlot. Also changed readme.md to reflect this fork's state. 2022-02-19 18:31:15 +00:00
Sebastian
9f41d0906e Fixed potential for initialization fiasco when using delegates container. Fixed bug in code protecting redirecting handles from self-referencing. Updated project version and status. 2021-04-14 23:11:49 -04:00
Sebastian
a76f4bc451 Improved hot-reload stability and support for reloading after recompiling outside of the editor:
- Hot-reloading from inside of the editor and after recompiling from the outside should be equally supported and work together.
- Improved robustness of the delegates redirections. There should be no lost delegates when reloading (either after in-editor or outside recompilation).
- Refactored code to use the same redirection template for context and delegates container.
2020-07-31 10:24:53 +01:00
Sebastian
d4ffe9443f Enforced IWYU-style PCH model:
- Removed explicit PCH.
- Fixed includes to compile for all supported engine versions, including non-unity builds.
- Configured build.cs to treat ImGui as an engine module and added stricter compilation rules.
2020-06-25 10:52:46 +01:00
Sebastian
04e6f9d844 Removed dependency on headers included in the PCH and fixed any non-unity issues. 2020-06-14 21:50:26 +01:00
Sebastian
a35585f26a Updated to ImGui 1.74 2020-02-03 20:11:04 +00:00
kkawachi
5e4b7084de Fixed build errors when the plugin is placed in the engine directory. (#19)
Merged 4 commits fixing build errors when compiling this as an engine plugin:
- Changed include directives to use full paths (ex. <ICursor.h> -> <GenericPlatform/ICursor.h>).
- Added categories to FImGuiKeyInfo properties (required for all blueprint exposed types in engine plugins).
- Added explicit configuration of PCHUsage (without that it is assumed to be UseExplicitOrSharedPCHs in engine plugins and UseSharedPCHs in game ones) - amended to work also in the older engine versions.
2019-07-27 18:45:25 +01:00
Sebastian
c144658f37 Refactored ImGui widget and removed dependency on ImGui internal cursor data:
- Added SImGuiLayout to resets layout and house SImGuiWidget.
- Module manager creates SImGuiLayout instead of SImGuiWidget (eventually it should be replaced with a higher level object, like AHUD).
- Reworked ImGui canvas dragging and scaling and moved to SImGuiCanvasControl.
- Removed dependency on ImGui internal cursor data. New presentation is cleaner and doesn't use cursor data.
- Rendering code could be simplified after layout reset provided by SImGuiLayout.
- SImGuiWidget still handles input, rendering of ImGui draw data and activation of SImGuiCanvasControl.
- All widgets are in own subfolder.
2019-03-13 20:40:13 +00:00
Sebastian
36cdd0c337 Updated to ImGui 1.65 2018-09-12 19:21:36 +01:00
Sebastian
74c794b53e Fixed hot-reloading issues. Hot-reloading may be useful when developing this plug-in but it doesn't play well with free functions used in ImGui interface (limitation of the system I guess). Switched to a custom GImGui which after hot-reload can be redirected to a new module. This fixes a crash caused by GImGui in obsolete module pointing to released resources and guarantees that ImGui code remains functional. 2018-08-10 23:53:03 +01:00
Sebastian
413b4f407a Upgraded to ImGui 1.61:
- Upgraded ImGui framework to 1.61 WIP, which adds a few improvements to context management.
- Removed from plugin implementation all the references to default ImGui context.
- Removed from ImGui Context Proxy destructor code switching to default ImGui context (there is no default context and decision is left for a higher level manager when to switch and to what context).
- Added own font atlas that is shared by all contexts and used explicitly to create Slate resources.
- Removed from ImGui Context Proxy workaround that was previously needed for copying cursor data to dynamically created contexts.
- Removed explicit saving of context settings before its destruction as this is now handled in ImGui::DestroyContext().
- Reimplemented ImGuiImplementation::GetCursorData() to use new interface.
2018-05-09 20:22:48 +01:00
Sebastian
d152b4193c Added to ImGuiImplementation GetCursorData function allowing to access data associated with ImGui cursors (UVs and size). 2018-04-21 21:40:05 +01:00
Sebastian
2e994ac124 Fixed a few errors and warnings on PS4 and XBox platforms. 2018-02-02 23:14:17 +00:00
Sebastian
1a6aa98f51 Added support for session reloading and updated contexts and widgets management:
- Added to ImGui Context Proxy a name that is mapped to ini file set in ImGui context.
- ImGui Context Manager generates unique context names from world type and context index.
- Refactored ImGui Context Manager to have a cleaner separation between editor and non-editor bits.
- Fixed context update rules in ImGui Context Manager.
- Changed widgets management in ImGui Module Manager to allow automatic garbage collection after viewports are closed and manual removal when module is shutting down.
- ImGui Widgets are in full control of communication with context proxies.
- Added basic world context utilities.
- Refactored world context index utilities and replaced ambiguous 'default context index' with 'editor' and 'game' ones.
2017-09-27 21:16:54 +01:00
Sebastian
77bb73dbce Added Multi-PIE support:
- Added ImGui Context Manager to create and manage ImGui Context Proxies.
- Changed ImGui Context Proxy to dynamically create context and allow pairing with input state.
- Changed ImGui Module Manager to create one widget per context.
- Changed ImGui Widget to work in different input modes.
- Changed ImGui Input State to allow partial reset (only mouse or keyboard).
2017-08-28 20:29:07 +01:00
Sebastian
e74e3475d9 Integrated ImGui framework:
- Added ImGui framework source directory.
- Added to ImGui module include paths pointing to ImGui source directory.
- Added to ImGui module implementation file that includes ImGui source code to be built as part of the module.
2017-03-18 11:33:14 +00:00