Commit Graph

6 Commits

Author SHA1 Message Date
Sebastian
bbd2c01071 Replaced includes of monolithic headers. 2020-06-14 20:21:49 +01:00
Sebastian
f8d8704a67 Fixed standalone compilation errors after bad refactoring @9d4eb74b. 2020-06-11 01:42:18 +01:00
Sebastian
9d4eb74bf0 Added support for DPI scaling in ImGui, with scaling in Slate remaining as an alternative:
- The old DPI Scale setting was replaced by DPI Scaling Info, which contains information about scale and method of scaling.
- ImGui Context Manager handles scaling in ImGui by scaling all styles, rebuilding fonts using a different size, and raising OnFontAtlasBuilt event.
- ImGui Module Manager uses OnFontAtlasBuilt event to rebuild font textures.
- The update policy in Texture Manager was loosened to update existing resources rather than throwing an exception. This is less strict but it is now more useful since our main texture can now change. The throwing behavior used in the public interface is now handled before calling to the Texture Manager.
2020-06-07 21:58:48 +01:00
Sebastian
8de65f3d34 Added option for DPI scaling. Current implementation scales the widget in Slate and invert-scales the ImGui canvas size to maintain consistent size on the screen. 2020-05-11 11:24:59 +01:00
Sebastian
59dc8decf8 Fixed issue with SImGuiLayout blocking mouse input for other Slate widgets, which was introduced by refactorization of widgets (version 1.14, commit c144658f):
- Changed visibility of widgets in ImGui layout from 'Visible' to 'SelfHitTestInvisible'.
2019-05-31 19:58:00 +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