ManyMouse
June 26th, 2005: Initial source released to the world!
ManyMouse is a library that abstracts the handling of
multiple mice input into a tiny, cross-platform API. It is meant
to be used with games and non-traditional applications with unique
input needs. On most platforms, it can at least make all USB
mice available, but in many cases can make serial mice and built-in
laptop trackpads available too.
Places ManyMouse is known to be used:
What works:
- Modern Unix systems through X11's XInput2 extension.
- Linux 2.4/2.6/etc through the "evdev" kernel interface.
- MacOS X 10.0 through 10.4 through HID Utilities.
- MacOS X 10.5 and later through Leopard's improved HID Manager API.
- Windows XP and later through the WM_INPUT/RawInput API.
- Compiles/runs on Linux (x86/x86-64 tested, gcc2+).
- Compiles/runs on MacOS X (PowerPC/Intel/x86-64 tested, gcc3+).
- Compiles/runs on Windows (x86 tested, msvc7+).
- May compile and run elsewhere with little to no modification.
Success stories and patches are
welcome.
What doesn't work:
- API is still evolving.
- Contributions of other ports are, of course,
welcome.
License:
- ManyMouse is licensed under the
zlib license.
This means you can statically link it into a closed-source application
and otherwise manipulate it however you like, without a warranty.
I appreciate credit when you use it, but don't require it. I find
this code useful, and hope you will, too.
Documentation:
- Just about everything you need to know is
here.
Downloads:
Page maintained by
Ryan C. Gordon.