I would like to add multi-key/click functionality to my Flex app. There are a couple of slightly different examples of what I mean:
1. Detect when a user is holding down the 'r' key while clicking a button. 2. Detect when a certain component has focus and the user types the letters 'd' 's' in succession within a few seconds of each other. I noticed there are properties in the MouseEvent class to detect things like shift,ctrl and alt keys but I need to detect more than just those. Additionally those properties don't exist in other event classes like ItemClickEvent. What I have done so far is simply create a state object at the application level that captures all keyboard/mouse events and sets the state of itself based on the events. Individual components can check the current state at any time to determine which keys/mouse actions are currently active. I don't particularly like this implementation for many reasons and was hoping someone knew of a pattern to use considering many applications support such functionality (Eclipse comes to mind). Thanks!

