Commit Graph

120 Commits

Author SHA1 Message Date
Sebastian
2b19b2108a Updated to Unreal Engine 4.18 (backward compatible). 2017-11-05 22:36:39 +00:00
Sebastian
9db4abcb0a Updated to Unreal Engine 4.17 (backward compatible):
- Removed usage of per-vertex ClipRect.
- Replaced usage of GSlateScissorRect with new FSlateWindowElementList::PushClip/PopClip functions.
- Defined WITH_OBSOLETE_CLIPPING_API to switch to old implementation for older engine versions.
2017-11-05 19:41:34 +00:00
Sebastian
865ade48c0 Updated to Unreal Engine 4.16 (backward compatible):
- Replaced obsolete module rules constructors with new versions forwarding read-only target rules to base constructors.
2017-11-05 16:10:03 +00:00
Sebastian
3f33545f8b Added automatic ImGui context switching when updating different editor and PIE worlds. Allows to use ImGui API during world update with controls being drawn in correct viewport. 2017-10-28 22:25:44 +01:00
Sebastian
126b59d2c6 Updated project information. 2017-10-10 23:16:51 +01:00
Sebastian
8c46591488 Added ImGui.ShowDemo console variable to show/hide ImGui demo. 2017-10-03 21:26:59 +01:00
Sebastian
00ad746267 Added interface to register ImGui debug delegates. 2017-10-03 21:16:17 +01: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
7e756c7cb5 Small clean-up with fixes for few warnings. 2017-09-22 20:23:42 +01:00
Sebastian
9c62196cbb Using ImGui to draw mouse cursor. 2017-09-21 22:09:03 +01:00
Sebastian
5625365310 Added handling of special input cases:
- Different handling of 'Esc' key. If ImGui has active items then it is used to exit edit mode, otherwise it is passed to editor to cancel session.
- Suppressing keyboard input when console is opened and retaking it when it is closed.
- Fixed issue with losing input when console is closed.
2017-09-16 21:52:14 +01:00
Sebastian
c47d911f22 Fixed issues with passing input focus between viewport and ImGui Widget. 2017-09-10 21:05:37 +01:00
Sebastian
f696393089 Added debug code to ImGui Widget:
- Added ImGui.Debug.Widget console variable to enable/disable widget state debugging.
- Added ImGui ImGui debug for widget state.
- Added logging for widget state transitions.
2017-09-09 11:40:44 +01:00
Sebastian
f7816ee1fd Added ImGui.InputEnabled console variable to control when ImGui should receive inputs. 2017-09-02 18:42:41 +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
53387cf88b Changed modifier keys handling and cleaned ImGui Input State:
- Separate modifier keys interface and data from generic keys.
- Cleaned interface to better differentiate between full reset and clearing update data.
- Fixed bug in code clearing characters.
2017-08-19 21:19:38 +01:00
Sebastian
393460f330 Added input support:
- Added ImGui Input State to collect and store input updates.
- Changed Slate ImGui Widget to handle Slate input events and store them in input state.
- Changed ImGui Context Proxy to copy input state to its context.
2017-04-22 16:38:04 +01:00
Sebastian
35f2d342a0 Added support for ImGui context update and rendering:
- Added ImGui Module Manager that that implements module logic and manages other module resources.
- Added Texture Manager to manage texture resources and maps them to index that can be passed to ImGui context.
- Added Context Proxy that represents and manages a single ImGui context.
- Added Slate ImGui Widget to render ImGui output.
2017-03-26 21:32:57 +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
Sebastian
cd98f86005 Initial commit:
- License file and initial readme file.
- Plugin and module base configuration.
- Repository configuration.
2017-03-17 23:22:13 +00:00