You've already forked lazarus-ccr
RxDBGrid - continue work on calc footer
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@2713 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@ -43,12 +43,25 @@ var
|
||||
SaveState:TDataSetState;
|
||||
SavePos:integer;
|
||||
SaveActiveRecord:integer;
|
||||
|
||||
SaveAfterScroll:TDataSetNotifyEvent;
|
||||
SaveBeforeScroll:TDataSetNotifyEvent;
|
||||
begin
|
||||
if not Assigned(ADataSet) then exit;
|
||||
if not Assigned(AGrid) then
|
||||
begin
|
||||
SavePos:=SavePos;
|
||||
exit;
|
||||
end;
|
||||
DHL:=THackDataLink(THackRxDBGrid(AGrid).Datalink);
|
||||
DHS:=THackDataSet(ADataSet);
|
||||
SaveState:=DHS.SetTempState(dsBrowse);
|
||||
|
||||
SaveAfterScroll:=ADataSet.AfterScroll;
|
||||
SaveBeforeScroll:=ADataSet.BeforeScroll;
|
||||
ADataSet.AfterScroll:=nil;
|
||||
ADataSet.BeforeScroll:=nil;
|
||||
|
||||
SaveActiveRecord:=DHL.ActiveRecord;
|
||||
DHL.ActiveRecord:=0;
|
||||
SavePos:=ADataSet.RecNo;
|
||||
@ -80,6 +93,8 @@ begin
|
||||
DHL.ActiveRecord:=SaveActiveRecord;
|
||||
DHS.RestoreState(SaveState);
|
||||
|
||||
ADataSet.AfterScroll := SaveAfterScroll;
|
||||
ADataSet.BeforeScroll := SaveBeforeScroll;
|
||||
{ RS:=THackZeosDS(ADataSet).ResultSet;
|
||||
CurRow:=RS.GetRow;
|
||||
RS.First;
|
||||
|
@ -2884,7 +2884,6 @@ var
|
||||
S: string;
|
||||
Pos: integer;
|
||||
begin
|
||||
inherited LinkActive(Value);
|
||||
if Value then
|
||||
begin
|
||||
S := DataSource.DataSet.ClassName;
|
||||
@ -2892,8 +2891,18 @@ begin
|
||||
FSortEngine := RxDBGridSortEngineList.Objects[Pos] as TRxDBGridSortEngine
|
||||
else
|
||||
FSortEngine := nil;
|
||||
end;
|
||||
|
||||
inherited LinkActive(Value);
|
||||
if not Value then
|
||||
{ begin
|
||||
S := DataSource.DataSet.ClassName;
|
||||
if RxDBGridSortEngineList.Find(S, Pos) then
|
||||
FSortEngine := RxDBGridSortEngineList.Objects[Pos] as TRxDBGridSortEngine
|
||||
else
|
||||
FSortEngine := nil;
|
||||
end
|
||||
else
|
||||
else}
|
||||
begin
|
||||
FSortEngine := nil;
|
||||
if SelectedRows.Count > 0 then
|
||||
@ -3538,18 +3547,18 @@ end;
|
||||
|
||||
procedure TRxDBGrid.UpdateActive;
|
||||
begin
|
||||
{ if FInProcessCalc > 0 then
|
||||
exit;}
|
||||
if FInProcessCalc > 0 then
|
||||
exit;
|
||||
inherited UpdateActive;
|
||||
{ if FInProcessCalc < 0 then
|
||||
if FInProcessCalc < 0 then
|
||||
begin
|
||||
FInProcessCalc := 0;
|
||||
UpdateFooterRowOnUpdateActive;
|
||||
end
|
||||
else
|
||||
{ else
|
||||
if FFooterOptions.Active and (FFooterOptions.RowCount > 0) then
|
||||
UpdateFooterRowOnUpdateActive;
|
||||
}
|
||||
UpdateFooterRowOnUpdateActive;}
|
||||
|
||||
// UpdateRowsHeight;
|
||||
end;
|
||||
|
||||
@ -4375,8 +4384,8 @@ begin
|
||||
exit;
|
||||
|
||||
inherited LayoutChanged;
|
||||
if DatalinkActive and (FInProcessCalc = 0) and (Datalink.DataSet.State = dsBrowse) then
|
||||
CalcStatTotals;
|
||||
{ if DatalinkActive and (FInProcessCalc = 0) and (Datalink.DataSet.State = dsBrowse) then
|
||||
CalcStatTotals;}
|
||||
end;
|
||||
|
||||
procedure TRxDBGrid.SetFocus;
|
||||
|
Reference in New Issue
Block a user