RxDBGrid: workaround for fix navigation problem on calc footer rows

git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2925 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
alexs75
2014-03-27 12:36:50 +00:00
parent f95e48563a
commit cebbb30307

View File

@ -4044,7 +4044,7 @@ end;
procedure TRxDBGrid.CalcStatTotals; procedure TRxDBGrid.CalcStatTotals;
var var
//P: TBookmark; P: TBookmark;
//DS: TDataSet; //DS: TDataSet;
i, cnt: integer; i, cnt: integer;
APresent: boolean; APresent: boolean;
@ -4130,6 +4130,9 @@ begin
DHL:=THackDataLink(Datalink); DHL:=THackDataLink(Datalink);
DHS:=THackDataSet(DataSource.DataSet); DHS:=THackDataSet(DataSource.DataSet);
P := DHS.GetBookMark;
SaveState:=DHS.SetTempState(dsBrowse); SaveState:=DHS.SetTempState(dsBrowse);
SaveAfterScroll:=DHS.AfterScroll; SaveAfterScroll:=DHS.AfterScroll;
@ -4177,6 +4180,9 @@ begin
DHS.AfterScroll := SaveAfterScroll; DHS.AfterScroll := SaveAfterScroll;
DHS.BeforeScroll := SaveBeforeScroll; DHS.BeforeScroll := SaveBeforeScroll;
if DHS.CompareBookmarks(DHS.Bookmark, P)<>0 then
DHS.Bookmark:=P; //workaround for fix navigation problem
Dec(FInProcessCalc); Dec(FInProcessCalc);
if FInProcessCalc < 0 then if FInProcessCalc < 0 then
FInProcessCalc := 0; FInProcessCalc := 0;