Maybe a note on the controls - the application was designed around for PowerMate, 5-way hatch switch or similar device. These need to generate following keyboard codes:
Apple + 4: push + turn left
Apple + 5: long push
Apple + 6: push + turn right
Apple + 7: turn left
Apple + 8: push (click)
Apple + 9: turn right
When you play around with the app on the computer, you can control it by using these shortcuts. These shortucts are assigned to the menu items (see the NIB in main app project) and cause messages to be sent to the application that distributes them to view and other GUI elements. By default for example click action sent to the button causes it to imitate a mouse click (and invoke connected action), turn left and right cause previous/next control to be highlighted etc. If you use another input device, that has more input channels/switches, you can add more actions to the menu and application, using the current ones as an example.
Using categories, it is easy to make almost any NSControl aware of these actions and controllable by the simple input element such as PowerMate - a good example can be found in the Online Services module, where turn left and turn right are used to scroll thru the NSTableView with list of cameras/URLs. Another example is JJStepper - a mutant between NSStepper and NSTextField that allows setting numerical (but in principle also alphanumerical) values using a rotating knob.
I will try to make an overview of the notifications that presently exist - this is quite important to allow collaboration of modules from other people, which should otherwise be easy, because of the standard API. I already have a template for new module project, will post it probably tmorrow.
BTW: the MP3 player is a bit messy - it uses AppleScript to control iTunes and reading status and storing current position does not always work. I will hopefully get some time to clean it up during my holidays in few weeks...
P.S. any new ideas on what modules we could make?