How to Invert Scroll Wheel in Applications Using AutoHotkey

autohotkeyscroll-wheel

I want to be able to modify the scrolling/middle click behavior for individual apps on Windows 7, so that the scroll to zoom direction is always consistent across apps. This script makes the middle button act as a hand tool in Adobe Acrobat, for instance:

; Hand tool with middle button in Adobe Reader
#IfWinActive ahk_class AdobeAcrobat
Mbutton::
#IfWinActive ahk_class AcrobatSDIWindow
Mbutton::
Send {Space down}{LButton down}  ; Hold down the left mouse button.
KeyWait Mbutton  ; Wait for the user to release the middle button.
Send {LButton up}{Space up}  ; Release the left mouse button.
return
#IfWinActive

(It would be great if this could be adapted to allow "throwing" the document, too, like in Android or iPhone interfaces, but I don't know if it's possible to control scrolling that precisely)

How do I invert the scroll wheel–>zoom direction?

Best Answer

Found an answer here: Topic: mouse wheel zoom direction. This will swap the scroll direction in Firefox:

#IfWinActive, ahk_class MozillaUIWindowClass
WheelDown::WheelUp
WheelUp::WheelDown

Apparently to get it to work for multiple apps, you'd need to create a window group.

Unfortunately this would affect things like list boxes inside those apps, too. AutoHotkey can tell what "ClassNN" you're hovering over inside of an app, so that might help narrow it down, but I'm not sure how to use that yet.