Commit Graph

20 Commits

Author SHA1 Message Date
baldurk 628df6d9c8 Fix some warnings in ToolWindowManager so we can keep level 4 globally
* Nested foreach() hiding a local variable in the macro definition.
* Declarations of 'data' parameters that hide a class member variable.
2017-04-28 18:36:55 +01:00
baldurk e336cab5ae Add the ability to selectively disallow certain panels from floating 2017-02-16 17:10:06 +00:00
baldurk 79f1edc6f0 When dragging off a tab/tabs to a new float window, default to same size
* This isn't perfect, but it at least prevents the case where you drag
  off a full-size panel and the new window is tiny and crushed.
2017-02-14 19:14:53 +00:00
baldurk a6b0bd9245 Add utility function to locate the manager for a window 2016-11-25 14:14:36 +01:00
baldurk 46a86dce92 Add utility function to raise a toolwindow 2016-11-21 17:58:00 +01:00
baldurk 0193892851 Initialise m_lastUsedArea to NULL 2016-11-21 14:55:18 +01:00
baldurk 07b4ebb3ba Add a static function for programmatically closing tool windows 2016-11-14 14:12:46 +01:00
baldurk e65ca2937a Add a call to checkAllowClose slot (if it exists) when closing windows 2016-11-14 14:12:46 +01:00
baldurk 097b93ce9c Default to deleting windows from ToolWindowManager when closed 2016-11-11 20:35:59 +01:00
baldurk ea587608cb Don't allow dropping dockables onto the tabs where textures sit 2016-10-10 18:50:11 +02:00
baldurk e64c666883 Allow configuring a callback to create tool windows on-demand
* This means we can start with an empty manager, load a layout, and just
  create the needed windows as we go according to what the layout needs.
2016-10-07 15:58:50 +02:00
baldurk 560fe1a120 Save and restore ToolWindowManager state directly as QVariantMap 2016-10-07 15:58:49 +02:00
baldurk b87968ae21 If a wrapper should be maximised, re-maximise it on restore to force 2016-10-07 15:58:48 +02:00
baldurk bd7b3e3399 Save wrapper and splitter state as base64 so it encodes to JSON 2016-10-07 15:58:47 +02:00
baldurk 73be3b224b Do some more to try and stay sane during drags and docks.
* This needs more improvement but it's not worth going any further down
  this route for now, it can be polished up later.
2016-09-30 10:50:29 +02:00
baldurk 2f63389b8b Only look at valid suggestions of docks, not docks in other managers 2016-09-30 10:50:29 +02:00
baldurk 2bc8effd3d Add ability to specify an area percentage in ToolWindowManager 2016-09-30 10:50:29 +02:00
baldurk 4627ead8f2 Add custom properties to ToolWindowManager toolwindows, update titles
* Two properties added - DisallowUserDocking which completely prevents
  a toolwindow from being dragged or docked other than programmatically.
* HideCloseButton also hides the close button that normally appears on
  the tabs created
* Also tabs now watch for title change signals and update the titles in
  tabs.
2015-07-10 16:38:44 +02:00
baldurk 227e6feddd Add property to ToolWindowManager to disallow docking to float windows 2015-07-10 16:38:43 +02:00
baldurk 764d13e11d Include ToolWindowManager for Qt docking implementation
* From https://github.com/Riateche/toolwindowmanager
* It seems superior to the built-in Qt docking as-is, and since it's
  a few open source files it should be easy to improve with features
  we might want to match DockingUI functionality.
* Programmatic sizing for the default layout seems inflexible, but since
  that's a one-time thing it's not the end of the world.
* There's no auto-hide functionality.
* The highlighting of where to drop could be improved, as well as the
  detection of where to drop (currently it seems to cycle through
  several possibilities each second rather than having a consistent drop
  location).
* Floating windows could be styled a bit better.
* Need to check whether we can have nested docking sections (so the
  texture viewer e.g. can have its own docks, that won't float or go out
  of the texture viewer.
2015-07-10 16:38:17 +02:00