File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -187,6 +187,9 @@ TVersionGrid = class(TCustomControl)
187187 procedure MouseDown (Button: TMouseButton; Shift: TShiftState; X: Integer; Y: Integer); override;
188188 procedure MouseMove (Shift: TShiftState; X: Integer; Y: Integer); override;
189189 procedure MouseUp (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
190+ procedure KeyDown (var Key: Word; Shift: TShiftState); override;
191+
192+
190193
191194 procedure DoSelectionChanged ;
192195
@@ -1195,6 +1198,44 @@ function TVersionGrid.IsAtTop: boolean;
11951198 result := FVScrollPos = 0 ;
11961199end ;
11971200
1201+ procedure TVersionGrid.KeyDown (var Key: Word; Shift: TShiftState);
1202+ var
1203+ scrollPos : integer;
1204+ begin
1205+ inherited ;
1206+ case Key of
1207+ VK_DOWN : DoLineDown(false);
1208+ VK_UP : DoLineUp(false);
1209+ VK_PRIOR :
1210+ begin
1211+ ScrollPos := FVScrollPos - FSelectableRows;
1212+ if ScrollPos < 0 then
1213+ ScrollPos := 0 ;
1214+ DoPageUp(true,ScrollPos);
1215+ end ;
1216+ VK_NEXT :
1217+ begin
1218+ ScrollPos := FVScrollPos + FSelectableRows;
1219+ if ScrollPos > RowCount -1 then
1220+ ScrollPos := RowCount - 1 ;
1221+ DoPageDown(true, ScrollPos);
1222+ end ;
1223+ VK_HOME:
1224+ begin
1225+ ScrollPos := 0 ;
1226+ DoPageUp(true,ScrollPos);
1227+ end ;
1228+ VK_END :
1229+ begin
1230+ ScrollPos := RowCount - 1 ;
1231+ DoPageDown(true, ScrollPos);
1232+ end ;
1233+
1234+ end ;
1235+
1236+
1237+ end ;
1238+
11981239procedure TVersionGrid.Loaded ;
11991240begin
12001241 inherited ;
You can’t perform that action at this time.
0 commit comments