LCL, grids, fixed AutoAdvance when grid has goRowSelect option, reported by Barko

git-svn-id: trunk@12529 -
This commit is contained in:
jesus 2007-10-20 08:11:59 +00:00
parent 713a847fd8
commit 4c24b68ea9
2 changed files with 25 additions and 18 deletions

View File

@ -1760,8 +1760,7 @@ begin
doOnKeyDown;
if Key<>0 then begin
if dgTabs in Options then begin
GetDeltaMoveNext(ssShift in Shift, DeltaCol, DeltaRow);
if GetDeltaMoveNext(ssShift in Shift, DeltaCol, DeltaRow) then begin
if DeltaRow > 0 then begin
if doVKDown then
@ -1774,7 +1773,7 @@ begin
if (DeltaCol<>0) then
Col := Col + DeltaCol;
end;
Key := 0;
end;
end;
@ -1788,11 +1787,12 @@ begin
if (dgEditing in Options) and not EditorMode then
EditorMode:=true
else begin
GetDeltaMoveNext(ssShift in Shift, DeltaCol, DeltaRow);
if GetDeltaMoveNext(ssShift in Shift, DeltaCol, DeltaRow) then begin
if DeltaRow > 0 then
doVKDown;
if DeltaCol <> 0 then
Col := Col + DeltaCol;
end;
ResetEditor;
end;
end;

View File

@ -6261,6 +6261,13 @@ begin
if FAutoAdvance=aaNone then
exit; // quick case, no auto movement allowed
if [goRowSelect,goRelaxedRowSelect]*Options=[goRowSelect] then begin
if Inverse then
ACol := FixedCols
else
ACol := ColCount-1;
end;
// browse the grid in autoadvance order
while CalcNextStep do begin
ACol := ACol + DeltaCol;