TreeView.txt 2.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. TODO:
  2. - Callback on tree item select
  3. - when update() deletes elements it won't remove them from mAutoExpandedElements or mMouseOverDragElement.
  4. - When I select elements in tree view via arrow keys, make sure to automatically scroll the scroll-area so that element becomes visible
  5. - Context menu with rename/copy/paste/duplicate
  6. - Delete with Undo/Redo support
  7. - Support for icons next to tree elements
  8. - Clicking on an already selectecd element starts rename
  9. - Will likely need some kind of check to ignore double-clicks?
  10. MenuBar problems:
  11. - Clicking the top menu item closes and immediately opens the menu again (it should only close it)
  12. - Something similar probably also happens with ListBox
  13. Other:
  14. - "Ping" effect
  15. - Copy/Paste/Duplicate
  16. - This is more of a problem with actual copying of SceneObjects (It's not implemented). I should be able to serialize, and then de-serialize with a new parent as a form of copy.
  17. --------------------------------------------------
  18. LOW PRIORITY:
  19. Shortcut plan:
  20. Replace all GUICommandEventType with two things:
  21. - Events like CursorMoveUp should just be received a keys + modifiers (shift/ctrl/alt) and the individual element can then decide what to do with them and how to interpret them.
  22. - Events like Rename, Undo, Redo, Copy, Paste, etc. should be globally set shortcut keys
  23. - Shortcut keys are globally registered on program start in ShortcutManager
  24. - Objects can then register callbacks for certain shortcut using mechanism like: addCallback("Undo", onUndo).
  25. - They should also be able to unregister those callbacks.
  26. - GUIElement can choose to listen to certain shortcut keys
  27. - getUsedShortcut is a overridable method that returns a list of shortcuts and callbacks
  28. - When element comes into focus or loses focus GUIManager will register/unregister those shortcuts with ShortcutManager
  29. - I should probably prevent one shortcut from possibly triggering multiple callbacks
  30. - Whenever some key combination or a single key is pressed all elements in focus get send the shortcut key (if that shortcut exists)