EditorWindowDock.txt 1.7 KB

12345678910111213141516171819202122232425262728293031
  1. TODO:
  2. - Add GUIElementContainer, a class that does no rendering but contains other GUIElements. Use it for GUIScrolArea, GUITabbedTitleBar and GUIDockManager
  3. - DO NOT make EditorWidgetContainer a GUIElement. Instead refactor _updateLayoutInternal in GUITabbedTitleBar into "updateLayout" and make it do all the work EditorWidgetContainer does now
  4. - Docking/Undocking elements will cause an exception. Happened after TabbedTitleBar refactor
  5. - When I dock two windows (maybe even just one?) and drag the title bar, layout seems to get messed up
  6. - Ensure that dragging items onto the title bar works
  7. Resize sliders
  8. - Add a button between docked windows
  9. - Allow the button to be dragged, and it will automatically resize separating widgets
  10. TitleBar dock/undock
  11. - Releasing the dragged window over the drop overlay will dock the window
  12. - Moving the dragged window over a title bar will temporarily dock the title bar and allow you to move it (as in first step)
  13. - If you release the mouse the window will then be permanently docked at that location
  14. CONSIDER getting rid of mouse event filters for DockManager
  15. - I can probably convert DockManager into a GUIElement?
  16. - EditorWidgetContainer as well!
  17. - Make sure to update GUITabbedTitleBar::tabDragEnd when I do convert it to GUIElement
  18. Polish TOOD:
  19. - Change cursor icon when window is dragged
  20. - Prevent docking if available size is less than 20 pixels, otherwise there might be some weirdness
  21. ------------------------
  22. Other things to remember:
  23. - Possibly add a way to have hidden widgets in the EditorWidgetContainer (like side-bars that pop on mouse over in Visual Studio)
  24. - A way to persist window states
  25. - Also a way to reset all widgets to original locations