EditorWindowDock.txt 1.9 KB

12345678910111213141516171819202122232425262728293031323334
  1. Add icons to drag and drop - There's a built-in windows icon for this. I think. Although solution that accepts custom cursors is probably better longterm. (Special class BuiltinCursors?)
  2. - Drag and drop manager currently ignores the provided icon, but it should use it as a cursor
  3. Add highlight to WindowMover so I can know when I'm mousing over it with a dragged window in hand
  4. Ensure that dropping a window onto a mover will actually docks it properly
  5. GUIManager only changes mouse over events in MouseMove method, but that method doesn't get called when mouse leaves the window!
  6. I still have the issue where GUIManager hack code got triggered
  7. Get rid of the GUIManager mouseUp hack when I ensure resize/move using non client areas work
  8. Prevent docking if available size is less than 20 pixels, otherwise there might be some weirdness
  9. Possible solution to MouseUp problem:
  10. on WM_ENTERSIZEMOVE call OIS and SetCooperativeLevel(BACKGROUND)
  11. and on WM_EXITSIZEMOVE revert back to FOREGROUND coop level
  12. And for MouseMove problem:
  13. Track mouse leave events, add a handler to Platform and hook up GUIManager to it
  14. ------------------------
  15. Other things to remember:
  16. - Possibly add a way to have hidden widgets in the EditorWidgetContainer (like side-bars that pop on mouse over in Visual Studio)
  17. - A way to persist window states
  18. - Also a way to reset all widgets to original locations
  19. Will destroying a GUIWidget properly schedule destruction? (i.e. so it won't be destroyed mid-frame)
  20. - I will probably need to add deferred destroy to Components and SceneObjects as well
  21. GUIViewport:
  22. - TODO - GUIViewport updateRenderElementsInternal only gets called when contents change, but viewport should update even if
  23. only its offset changes (normally that just marks the mesh as modified, which doesn't result in a call to updateRenderElementsInternal)
  24. - UPDATE: I don't use GUIViewport anymore