add an option to InputRoll for "Selection when paging", as a bit of a hack to revert Tastudio back to its old PgUp/Dn behavior, while still keeping the current behavior for other input roll usages (as it makes more sense for traditional listview behavior). Fixes #2074
This commit is contained in:
parent
4343414937
commit
cb575d36b4
|
@ -376,6 +376,14 @@ namespace BizHawk.Client.EmuHawk
|
||||||
[Category("Behavior")]
|
[Category("Behavior")]
|
||||||
public int SeekingCutoffInterval { get; set; }
|
public int SeekingCutoffInterval { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Gets or sets a value indicating whether pressing page up/down will cause
|
||||||
|
/// the current selection to change
|
||||||
|
/// </summary>
|
||||||
|
[DefaultValue(false)]
|
||||||
|
[Category("Behavior")]
|
||||||
|
public bool ChangeSelectionWhenPaging { get; set; } = true;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns all columns including those that are not visible
|
/// Returns all columns including those that are not visible
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
@ -1351,6 +1359,8 @@ namespace BizHawk.Client.EmuHawk
|
||||||
}
|
}
|
||||||
// Scroll
|
// Scroll
|
||||||
else if (!e.Control && !e.Alt && !e.Shift && e.KeyCode == Keys.PageUp) // Page Up
|
else if (!e.Control && !e.Alt && !e.Shift && e.KeyCode == Keys.PageUp) // Page Up
|
||||||
|
{
|
||||||
|
if (ChangeSelectionWhenPaging)
|
||||||
{
|
{
|
||||||
var selectedRow = SelectedRows.Any() ? SelectedRows.First() : FirstVisibleRow;
|
var selectedRow = SelectedRows.Any() ? SelectedRows.First() : FirstVisibleRow;
|
||||||
var increment = LastVisibleRow - FirstVisibleRow;
|
var increment = LastVisibleRow - FirstVisibleRow;
|
||||||
|
@ -1365,7 +1375,14 @@ namespace BizHawk.Client.EmuHawk
|
||||||
SelectRow(newSelectedRow, true);
|
SelectRow(newSelectedRow, true);
|
||||||
Refresh();
|
Refresh();
|
||||||
}
|
}
|
||||||
|
else if (FirstVisibleRow > 0)
|
||||||
|
{
|
||||||
|
LastVisibleRow = FirstVisibleRow;
|
||||||
|
}
|
||||||
|
}
|
||||||
else if (!e.Control && !e.Alt && !e.Shift && e.KeyCode == Keys.PageDown) // Page Down
|
else if (!e.Control && !e.Alt && !e.Shift && e.KeyCode == Keys.PageDown) // Page Down
|
||||||
|
{
|
||||||
|
if (ChangeSelectionWhenPaging)
|
||||||
{
|
{
|
||||||
var selectedRow = SelectedRows.Any() ? SelectedRows.First() : FirstVisibleRow;
|
var selectedRow = SelectedRows.Any() ? SelectedRows.First() : FirstVisibleRow;
|
||||||
var increment = LastVisibleRow - FirstVisibleRow;
|
var increment = LastVisibleRow - FirstVisibleRow;
|
||||||
|
@ -1380,6 +1397,11 @@ namespace BizHawk.Client.EmuHawk
|
||||||
SelectRow(newSelectedRow, true);
|
SelectRow(newSelectedRow, true);
|
||||||
Refresh();
|
Refresh();
|
||||||
}
|
}
|
||||||
|
else if (LastVisibleRow < RowCount)
|
||||||
|
{
|
||||||
|
FirstVisibleRow = LastVisibleRow;
|
||||||
|
}
|
||||||
|
}
|
||||||
else if (AllowMassNavigationShortcuts && !e.Control && !e.Alt && !e.Shift && e.KeyCode == Keys.Home) // Home
|
else if (AllowMassNavigationShortcuts && !e.Control && !e.Alt && !e.Shift && e.KeyCode == Keys.Home) // Home
|
||||||
{
|
{
|
||||||
DeselectAll();
|
DeselectAll();
|
||||||
|
|
|
@ -880,6 +880,7 @@ namespace BizHawk.Client.EmuHawk
|
||||||
//
|
//
|
||||||
// TasView
|
// TasView
|
||||||
//
|
//
|
||||||
|
this.TasView.ChangeSelectionWhenPaging = false;
|
||||||
this.TasView.InputPaintingMode = true;
|
this.TasView.InputPaintingMode = true;
|
||||||
this.TasView.CellWidthPadding = 3;
|
this.TasView.CellWidthPadding = 3;
|
||||||
this.TasView.GridLines = true;
|
this.TasView.GridLines = true;
|
||||||
|
|
Loading…
Reference in New Issue