Skip to content
This repository has been archived by the owner on Nov 12, 2019. It is now read-only.

Docking

Andrey Penechko edited this page Aug 16, 2014 · 3 revisions

To implement docking two components is needed:

  • DockingRoot - which holds all the docking tree and makes all docking (docking, undocking, highlighting)
  • Widget marked with 'isDockable' flag. Usually it is a frame widget.

###Docking When something is dragged over DockingRoot, it checks if that thing has isDockable flag. If flag is false, then DockingRoot lets drag event traverse down to its destination. If flag is true then DockingRoot starts search for some dockable widget under the cursor.

When dockable widget is found, DockingRoot calculates a zone where widget will be inserted. It remembers highlighted zone and draws it on every draw event.

Clone this wiki locally