From 9e57b13d8f0d99672e30960282ef2c3c879ee3d6 Mon Sep 17 00:00:00 2001 From: blikblum Date: Sun, 26 May 2013 10:20:34 +0000 Subject: [PATCH] lcl: prevent change in dbcombobox when autoedit is false. Issue #24207 git-svn-id: trunk@41411 - --- lcl/include/dbcombobox.inc | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/lcl/include/dbcombobox.inc b/lcl/include/dbcombobox.inc index 26e405c8f9..36d76bbc5e 100644 --- a/lcl/include/dbcombobox.inc +++ b/lcl/include/dbcombobox.inc @@ -61,8 +61,19 @@ procedure TDBComboBox.Select; begin //avoid reseting text when calling select FDataLink.OnDataChange := nil; - FDataLink.Edit; - FDataLink.Modified; - FDataLink.OnDataChange := @DataChange; - inherited Select; + try + if FDataLink.Edit then + begin + FDataLink.Modified; + inherited Select; + end + else + begin + // if cannot modify, let it reset + FDatalink.Reset; + DataChange(Self); + end; + finally + FDataLink.OnDataChange := @DataChange; + end; end;