SteerMouse can assign various functions to buttons that Apple's software does not allow, including double-clicks, modifier clicks, application switching, assignment of shortcut keys, "snap to cursor movement, which moves the cursor to target (such as an OK button), and more.