diff --git a/.gitattributes b/.gitattributes index 8f320744df..6996953976 100644 --- a/.gitattributes +++ b/.gitattributes @@ -2162,6 +2162,7 @@ examples/docking/project1.rc svneol=native#text/plain examples/docking/unit1.lfm svneol=native#text/plain examples/docking/unit1.lrs svneol=native#text/pascal examples/docking/unit1.pas svneol=native#text/pascal +examples/dockmanager/README.txt svneol=native#text/plain examples/dragimagelist/project1.lpi svneol=native#text/plain examples/dragimagelist/project1.lpr svneol=native#text/pascal examples/dragimagelist/readme.txt svneol=native#text/plain diff --git a/examples/dockmanager/README.txt b/examples/dockmanager/README.txt new file mode 100644 index 0000000000..f4a3b8a73c --- /dev/null +++ b/examples/dockmanager/README.txt @@ -0,0 +1,31 @@ +This project demonstrates how to write and use your own docking manager. +It's a Lazarus adaptation of a Delphi 7 project, which also can be used to +demonstrate remaining LCL drag-drop flaws. + +The docking manager itself resides in EasyDockSite.pas and EasyDockHelpers.pas, +ready for use. Add EasyDockSite.pas to the uses list of your forms, +and set the DockManagerClass property to EasyTree for every dock site (form or control). + +fMain is the project main form, +fTree can show an dump of the internal tree structure (in debug mode), +fDockable is a sample floating dock site. + +More information can be found at: +http://wiki.lazarus.freepascal.org/LCL_Drag_Drop +See also: +http://wiki.lazarus.freepascal.org/Anchor_Docking + + +ToDos: +At the time of writing this README the following does not yet work: + +1. Layouts can not be saved and restored (to be copied from LDock) + +2. Hidden (invisible) controls are not handled. + +3. Notebooks do not initialize properly (resize the form to fix that) + +4. Captions can be empty? + +5. Dropped controls do not preserve their original extent? +