View Issue Details

IDProjectCategoryView StatusLast Update
0035864LazarusDatabase Componentspublic2019-07-23 16:18
ReporterMarco van de VoortAssigned ToJesus Reyes 
PrioritynormalSeverityminorReproducibilityhave not tried
Status assignedResolutionopen 
Platformwin32OSOS Version
Product Version2.2Product Buildfpc/lazarus trunk as of today 
Target VersionFixed in Version 
Summary0035864: tdblookupcombo misses published property dropdownrows
DescriptionThe fact that this property is missing makes dual maintenance of demo code between lazarus and Delphi hard.
http://docwiki.embarcadero.com/Libraries/Rio/en/Vcl.DBCtrls.TDBLookupComboBox.DropDownRows

Lazarus does seem to have dropdowncount, but that is no help since the main problem is opening forms between IDEs.
TagsNo tags attached.
Fixed in Revision
LazTarget-
WidgetsetWin32/Win64
Attached Files

Activities

Jesus Reyes

2019-07-23 06:18

developer   ~0117348

Dual maintenance rules out an importing time only solution of delphi projects, so mapping the property DropDownRows to DropDownCount is not solution in this case.

What would you think is the preferred solution?, I see two:

1. Reading the DropDownRows and updating the DropDownCount. This would be preferred but will work better on projects where main development IDE is Lazarus.
2. Remove the DropDownCount in DbLookupComobobox and publish DropDownRows. This can be done, but while breaking existing Lazarus projects can be alleviated, DropDownCount cannot be completly ruled out as is a public property, this would probably cause confusion. A minor problem is that while delphi set 7 as default value, Lazarus existing projects assume 8.

Marco van de Voort

2019-07-23 16:18

manager   ~0117357

I think (2) gives the best delphi compatibility and thus minimize headaches long term. Keeping *count around for a few cycles (deprecated if need be) will avoid immediate breakage on behalf of lazarus users.

Dual maintenance is mainly for demo projects. You want those to run out of the box, and not have Lazarus users have to fix umpteen issues manually. It also helps for Delphi users that do their first tests with Lazarus to not get overwhelmed.

Good solutions like this will not be possible for all cases, but IMHO we should at least try to. Thank you.

Issue History

Date Modified Username Field Change
2019-07-20 14:21 Marco van de Voort New Issue
2019-07-20 16:40 Marco van de Voort Description Updated View Revisions
2019-07-20 16:40 Marco van de Voort LazTarget => -
2019-07-20 16:40 Marco van de Voort Widgetset Win32/Win64 => Win32/Win64
2019-07-23 05:32 Jesus Reyes Assigned To => Jesus Reyes
2019-07-23 05:32 Jesus Reyes Status new => assigned
2019-07-23 06:18 Jesus Reyes Status assigned => feedback
2019-07-23 06:18 Jesus Reyes Note Added: 0117348
2019-07-23 16:18 Marco van de Voort Note Added: 0117357
2019-07-23 16:18 Marco van de Voort Status feedback => assigned