Merge pull request #5297 from Saticmotion/betterScrolling

Better scrolling
This commit is contained in:
Paul Chote
2014-05-17 17:43:38 +12:00
14 changed files with 69 additions and 57 deletions

View File

@@ -164,14 +164,13 @@ namespace OpenRA.Mods.RA.Widgets
public override bool HandleMouseInput(MouseInput mi)
{
// Eat mouse-up events
if (mi.Event != MouseInputEvent.Down)
if (mi.Event != MouseInputEvent.Scroll && mi.Event != MouseInputEvent.Down)
return true;
if (mi.Button == MouseButton.WheelDown)
if (mi.Event == MouseInputEvent.Scroll && mi.ScrollDelta < 0)
return ChangeTab(false);
if (mi.Button == MouseButton.WheelUp)
if (mi.Event == MouseInputEvent.Scroll && mi.ScrollDelta > 0)
return ChangeTab(true);
var action = tabs.Where(a => a.First.Contains(mi.Location))

View File

@@ -290,6 +290,7 @@ namespace OpenRA.Mods.RA.Widgets.Logic
BindCheckboxPref(panel, "CLASSICORDERS_CHECKBOX", gs, "UseClassicMouseStyle");
BindCheckboxPref(panel, "EDGESCROLL_CHECKBOX", gs, "ViewportEdgeScroll");
BindSliderPref(panel, "SCROLLSPEED_SLIDER", gs, "ViewportEdgeScrollStep");
BindSliderPref(panel, "UI_SCROLLSPEED_SLIDER", gs, "UIScrollSpeed");
var mouseScrollDropdown = panel.Get<DropDownButtonWidget>("MOUSE_SCROLL");
mouseScrollDropdown.OnMouseDown = _ => ShowMouseScrollDropdown(mouseScrollDropdown, gs);
@@ -348,6 +349,7 @@ namespace OpenRA.Mods.RA.Widgets.Logic
gs.MouseScroll = dgs.MouseScroll;
gs.ViewportEdgeScroll = dgs.ViewportEdgeScroll;
gs.ViewportEdgeScrollStep = dgs.ViewportEdgeScrollStep;
gs.UIScrollSpeed = dgs.UIScrollSpeed;
foreach (var f in ks.GetType().GetFields())
{
@@ -357,6 +359,7 @@ namespace OpenRA.Mods.RA.Widgets.Logic
}
panel.Get<SliderWidget>("SCROLLSPEED_SLIDER").Value = gs.ViewportEdgeScrollStep;
panel.Get<SliderWidget>("UI_SCROLLSPEED_SLIDER").Value = gs.UIScrollSpeed;
};
}