View Issue Details

IDProjectCategoryView StatusLast Update
0030241PackagesPackagespublic2018-09-03 07:08
ReporterJohn Raycheba Assigned ToJuha Manninen  
Status resolvedResolutionfixed 
PlatformWin 7 / 32OSWin 7 
Product Version1.6 
Summary0030241: CustomForm - New Properties Not Visible in Object Inspector After Lazarus closed & re-opened
DescriptionWhen a form derived from a custom form containing new properties that was registered using the process described by the customform component the new properties will not be visible in the Object Inspector after Lazarus is closed and then re-opened.

Initially the new properties are visible in the Object Inspector.
Steps To Reproduce1. Open and then install the package "appforms.lpk", which is located in the directory "C:\lazarus\components\customform\demo".

2. After Lazarus is rebuilt, open a new project.

3. Use the menu selections "File > New" to open the "New dialog".

4. Under "Custom forms" select "TAppForm" and click the OK button to create a new "TAppForm" form in the project.

5. Click on the new form and use "File > SaveAs" to save the form / unit with whatever name you like.

6. In the Object Inspector click on the "Events" tab.

7. Note that there are two new events present; namely, "AfterInitForm" and "BeforeInitForm".

8. Save the project and close Lazarus.

9. Open Lazarus.

10. Open the project that has the above mentioned TAppForm decendant form in it.

11. Click on the form and then its name in the Object Inspector.

12. Click on the "Events" tab in the Object Inspector.

13. Note that the events "AfterInitForm" and "BeforeInitForm" are not visible in the Object Inspector.
Additional InformationIf the custom form has a new property and in the derived form changes its value is changed to something other than the default value before the project is saved, the non-default value will, as expected, be recorded in the lfm file.

However, after Lazarus is closed and then re-opened and the project is opened there will be an error message indicating that the (new) property is not recognized.

I have tested this using Lazarus v1.4.4 and v1.6 with the same result.
Tagscomponent, IDE
Fixed in Revisionr58838
Attached Files


Juha Manninen

2016-06-09 11:17

developer   ~0093092

Yes, I can reproduce this.
LFM streaming is flawed, writing the new properties works but reading not.

Juha Manninen

2018-09-03 07:08

developer   ~0110473

Fixed by code from Bal√°zs.

Issue History

Date Modified Username Field Change
2016-06-06 04:33 John Raycheba New Issue
2016-06-06 04:46 John Raycheba Tag Attached: component
2016-06-06 04:46 John Raycheba Tag Attached: IDE
2016-06-09 11:17 Juha Manninen LazTarget => -
2016-06-09 11:17 Juha Manninen Note Added: 0093092
2016-06-09 11:17 Juha Manninen Status new => confirmed
2018-09-03 07:08 Juha Manninen Fixed in Revision => r58838
2018-09-03 07:08 Juha Manninen Note Added: 0110473
2018-09-03 07:08 Juha Manninen Status confirmed => resolved
2018-09-03 07:08 Juha Manninen Resolution open => fixed
2018-09-03 07:08 Juha Manninen Assigned To => Juha Manninen