Difference between revisions of "IDE Development"
From Lazarus wiki
Jump to navigationJump to search (New page: =Multi form properties / using DataModules from other forms in the designer= ==Short Description== This feature allows to use components of other designer forms. A common example is to u...) |
(→ToDo) |
||
Line 15: | Line 15: | ||
==ToDo== | ==ToDo== | ||
+ | *Add unit name to uses section and package to dependencies. | ||
*When referenced component is deleted, the using units must be set modified. | *When referenced component is deleted, the using units must be set modified. | ||
*When target form is saved, all referring forms should be saved too, to keep consistency. | *When target form is saved, all referring forms should be saved too, to keep consistency. | ||
*When target form is closed, then all referring forms must be closed too. (Otherwise all properties will be set to nil, and the reference will be lost). | *When target form is closed, then all referring forms must be closed too. (Otherwise all properties will be set to nil, and the reference will be lost). | ||
*When reference form is opened, then target forms must be opened too. | *When reference form is opened, then target forms must be opened too. |
Revision as of 19:38, 4 April 2008
Multi form properties / using DataModules from other forms in the designer
Short Description
This feature allows to use components of other designer forms. A common example is to use the TDataSource on a DataModule for the DataSource property of a db control.
Working
- Manual referencing via source code works.
- TPersistentPropertyEditor.GetValues - List all possible values. Check for class compatibility and if the target unit does not belong to a package that will conflict if used.
- TPersistentPropertyEditor.GetValue - Show component path
- TPersistentPropertyEditor.SetValue - search the component via the given path
- When component is deleted, the property must be set to nil - This is not the job of the IDE, but should be achieved by the normal TComponent FreeNotification feature. Maybe eventually a check could be added, if this is implemented properly and force a nil on error.
ToDo
- Add unit name to uses section and package to dependencies.
- When referenced component is deleted, the using units must be set modified.
- When target form is saved, all referring forms should be saved too, to keep consistency.
- When target form is closed, then all referring forms must be closed too. (Otherwise all properties will be set to nil, and the reference will be lost).
- When reference form is opened, then target forms must be opened too.