DockedFormEditor: what changed
Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.
Title: DockedFormEditor
| Old | New | Line | |
|---|---|---|---|
| 1 | + | The DockedFormEditor is a package for the Lazarus IDE that docks a form next to source editor unit. This package is shipped with Lazarus version 2.1 upwards. | |
| 2 | + | ||
| 3 | + | ## Why is it useful? | |
| 4 | + | ||
| 5 | + | If you don't like to search a form related to a unit, you can switch in the source editor pages. There you find the form docked as tab. Useful is a combination of packages **[[AnchorDockingDsgn]]** with **DockedFormEditor**, if you don't like the default "separate windows" look of the Lazarus IDE and prefer a single window. | |
| 6 | + | ||
| 7 | + | DockedFormEditor is the replacement and initially forked form Sparta_DockedFormEditor. If you used this package in the past, please switch to DockedFormEditor as all Sparta packages are now defined as deprecated and will be removed in a future version of Lazarus. | |
| 8 | + | ||
| 9 | + | ## Installation | |
| 10 | + | ||
| 11 | + | - Uninstall any other docking managers (e.g., easydockmgrdsgn) and especially **Sparta_DockedFormEditor**! | |
| 12 | + | - Install this package (and maybe **[[AnchorDockingDsgn]]**) per MainMenu -\> Package -\> Install/Uninstall Packages... -\> check the package **dockedformeditor**. | |
| 13 | + | - Now recompile Lazarus IDE. | |
| 14 | + | ||
| 15 | + | ## Layout | |
| 16 | + | ||
| 17 | + | After installation there are the design tabs docked next to source editor unit: | |
| 18 | + | ||
| 19 | + | <figure> | |
| 20 | + | <img src="DockedLayout1.png" title="DockedLayout1.png" /> | |
| 21 | + | <figcaption>DockedLayout1.png</figcaption> | |
| 22 | + | </figure> | |
| 23 | + | ||
| 24 | + | ## Pages | |
| 25 | + | ||
| 26 | + | ### Code | |
| 27 | + | ||
| 28 | + | In the tab Code is the source editor, where you can implement the logic of your app. | |
| 29 | + | ||
| 30 | + | <figure> | |
| 31 | + | <img src="DockedCode.png" title="DockedCode.png" /> | |
| 32 | + | <figcaption>DockedCode.png</figcaption> | |
| 33 | + | </figure> | |
| 34 | + | ||
| 35 | + | ### Form | |
| 36 | + | ||
| 37 | + | In the tab Form is the default form designer. Without this package it is a separate window. | |
| 38 | + | ||
| 39 | + | <figure> | |
| 40 | + | <img src="DockedForm.png" title="DockedForm.png" /> | |
| 41 | + | <figcaption>DockedForm.png</figcaption> | |
| 42 | + | </figure> | |
| 43 | + | ||
| 44 | + | ### Anchors | |
| 45 | + | ||
| 46 | + | In the tab Anchors is a optional anchor designer. It's follows the WYSIWYG concept and your form reacts at runtime the same as at designtime. It can be used simultaneously with default Anchor Editor: | |
| 47 | + | ||
| 48 | + | - You can snap a control border or point with the grips and anchor it to a next or parent control. | |
| 49 | + | - Sizing or positioning without anchoring are possible with mouse. | |
| 50 | + | - With \<Ctrl\> + mouse you can change the border around a control. | |
| 51 | + | - Constraints of a control are noted. | |
| 52 | + | - Per popup menu a control can simply fixed on paranet or this fixing can be removed. | |
| 53 | + | - All properties affected per Anchor Designer are shown in hint of control. | |
| 54 | + | ||
| 55 | + | <figure> | |
| 56 | + | <img src="DockedAnchors.png" title="DockedAnchors.png" /> | |
| 57 | + | <figcaption>DockedAnchors.png</figcaption> | |
| 58 | + | </figure> | |
| 59 | + | ||
| 60 | + | ## Options | |
| 61 | + | ||
| 62 | + | There are some options, found after package installation, under MainMenu -\> Tools -\> Options ... -\> Docked Form Editor. Next to some color definitions you find: | |
| 63 | + | ||
| 64 | + | - Tab position: defines the position of the tabs Code, Form, Anchors | |
| 65 | + | - Force Refreshing At Sizing: if the resizing eats to much time, this option can be deactivated | |
| 66 | + | - Capture Distance: this is the minimal distance in pixel to catch a control with mouse | |
| 67 | + | - Automatically treat Align properties: the Anchor Designer can only work with Anchors, so Aligns are translated to Anchors when this option is activated | |
| 68 | + | - Automatically treat BorderSpacing properties: allow Anchor designer to change all Borders (Around, Left, Top, Right, Bottom) to fit in | |
| 69 | + | - Allow size changing: you can change the size of a control or you can really only set or remove Anchors and BorderSpacing | |
| 70 | + | ||
| 71 | + | ## Limits | |
| 72 | + | ||
| 73 | + | - Tested on Windows7, 10, Linux Mint Cinnamon with GTK2, QT4, QT5. | |
| 74 | + | ||
| 75 | + | ## Known Issues | |
| 76 | + | ||
| 77 | + | - When the designed form / frame is moved out of screen, there the form has no designer grid (dots). | |
| 78 | + | - Qt5 shows own menu in form, this isn't shown in the anchor designer. | |
| 79 | + | - Designer: mouse wheel to scroll content doesn't work - csDesigning is set and form doesn't get a LM_MOUSEWHEEL message. | |
| 80 | + | - If main menu is visible, the height of the client area is wrong, see [Issue \#38701](https://bugs.freepascal.org/view.php?id=38701) | |
| 81 | + | - Form size is limited to screen size | |
| 82 | + | - AnchorDesigner: Child controls of some controls like TPageControl aren't visible | |
| 83 | + | ||
| 84 | + | ## See also | |
| 85 | + | ||
| 86 | + | - [[Docking]] in general | |
| 87 | + | - [[Anchor Docking]] in your application | |
| 88 | + | ||
| 89 | + | --- | |
| 90 | + | *From the Free Pascal wiki, page "DockedFormEditor", as it stood on 2023-04-09 after a change by Serbod, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).* | |
| 91 | + | Category: Lazarus IDE plugins |
