Skip to content

Commit 104e9c9

Browse files
authored
Merge pull request #31 from larry-xue/master
Add enableShiftScroll setting and related functionality
2 parents f41ec45 + f4152be commit 104e9c9

6 files changed

Lines changed: 16 additions & 5 deletions

File tree

WtProgram/GroupPlugins/MouseScrollPlugin.fs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,15 @@ open System.Runtime.InteropServices
55
type MouseScrollPlugin() as this =
66

77
member this.wtGroup = Services.get<WindowGroup>()
8+
member this.settings = Services.get<ISettings>()
89

910
member this.onMouseLL(msg, pt, data:IntPtr) =
1011
match msg with
1112
| WindowMessages.WM_MOUSEWHEEL ->
1213
let wheelDelta = data.hiword
13-
let doSwitch =
14-
if Win32Helper.IsKeyPressed(VirtualKeyCodes.VK_SHIFT) then
14+
let enableShiftScroll = this.settings.getValue("enableShiftScroll") :?> bool
15+
let doSwitch =
16+
if enableShiftScroll && Win32Helper.IsKeyPressed(VirtualKeyCodes.VK_SHIFT) then
1517
this.wtGroup.isPointInGroup(pt)
1618
else
1719
this.wtGroup.isPointInTs(pt)
@@ -23,4 +25,4 @@ type MouseScrollPlugin() as this =
2325

2426
interface IPlugin with
2527
member x.init() =
26-
this.wtGroup.mouseLL.Add this.onMouseLL
28+
this.wtGroup.mouseLL.Add this.onMouseLL

WtProgram/ManagerViewService/Views/BehaviorView.fs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
namespace Bemo
1+
namespace Bemo
22
open System
33
open System.Drawing
44
open System.IO
@@ -97,6 +97,7 @@ type HotKeyView() =
9797
let fields = fields.prependList(List2([
9898
("enableCtrlNumberHotKey", settingsCheckbox "enableCtrlNumberHotKey")
9999
("enableHoverActivate", settingsCheckbox "enableHoverActivate")
100+
("enableShiftScroll", settingsCheckbox "enableShiftScroll")
100101
]))
101102

102103
"Switch Tabs", UIHelper.form fields
@@ -127,4 +128,3 @@ type HotKeyView() =
127128
member x.key = SettingsViewType.HotKeySettings
128129
member x.title = resources.GetString("Behavior")
129130
member x.control = table :> Control
130-

WtProgram/Properties/Resources.ja-JP.resx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,9 @@
168168
<data name="enableHoverActivate" xml:space="preserve">
169169
<value>マウスホバーでタブを有効にする</value>
170170
</data>
171+
<data name="enableShiftScroll" xml:space="preserve">
172+
<value>タブ切り替えに Shift+スクロール を使用可能にする</value>
173+
</data>
171174
<data name="autoHide" xml:space="preserve">
172175
<value>最大化時にタブを自動的に隠す</value>
173176
</data>

WtProgram/Properties/Resources.resx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,9 @@
168168
<data name="enableHoverActivate" xml:space="preserve">
169169
<value>Enable mouse hover to activate tab</value>
170170
</data>
171+
<data name="enableShiftScroll" xml:space="preserve">
172+
<value>Enable Shift+Scroll to switch tabs</value>
173+
</data>
171174
<data name="autoHide" xml:space="preserve">
172175
<value>Auto hide tab when maximized</value>
173176
</data>

WtProgram/Settings.fs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ type Settings(isStandAlone) as this =
131131
enableCtrlNumberHotKey = settingsJson.getBool("enableCtrlNumberHotKey").def(true)
132132
enableHoverActivate = settingsJson.getBool("enableHoverActivate").def(false)
133133
autoHide = settingsJson.getBool("autoHide").def(true)
134+
enableShiftScroll = settingsJson.getBool("enableShiftScroll").def(true)
134135
version = settingsJson.getString("version").def(String.Empty)
135136
alignment = settingsJson.getString("alignment").def("Center")
136137
tabAppearance =
@@ -177,6 +178,7 @@ type Settings(isStandAlone) as this =
177178
settingsJson.setBool("enableCtrlNumberHotKey", settings.enableCtrlNumberHotKey)
178179
settingsJson.setBool("enableHoverActivate", settings.enableHoverActivate)
179180
settingsJson.setBool("autoHide", settings.autoHide)
181+
settingsJson.setBool("enableShiftScroll", settings.enableShiftScroll)
180182
settingsJson.setStringArray("includedPaths", settings.includedPaths.items)
181183
settingsJson.setStringArray("excludedPaths", settings.excludedPaths.items)
182184
settingsJson.setStringArray("autoGroupingPaths", settings.autoGroupingPaths.items)

WtProgram/Shared/ProgramTypes.fs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ type SettingsRec = {
3333
combineIconsInTaskbar: bool
3434
enableHoverActivate: bool
3535
autoHide: bool
36+
enableShiftScroll: bool
3637
alignment: string
3738
}
3839

0 commit comments

Comments
 (0)