Analysis
(The purpose of the analysis is to give as much as possible of the needed information for designing and implementing the task.)
Overview
- Allow the user to use keyboard combinations to trigger functionality in the application as well as combinations between keyboard and mouse movement or buttons. Consider the opportunity for the user to add, edit or delete the set of shortcuts combination. Also keep in mind that the same keyboard shortcut could trigger different functionality depending on what is on focus or what is selected.
- Review http://spreadsheets.google.com/ccc?key=p-0Oq38E1aysuTs69KE68Nw for detailed list of default keyboard shortcuts and key combination. Please be aware that this document could be updated.
Task requirements
- Choose the library that should be used and integrate it in the project.
- Create a prototype that allows different keyboard combinations to trigger functionality.
Task result
- The result should be code.
Implementation idea
Create new package with understandable name. Try to centralize the control of this functionality via singleton manager, mediator or some other design pattern that you think is appropriate here. Keep in mind that hard coding any key combinations is not a good idea. Understanding the scope of this task is critical, it might affect the entire application architecture.
Related
How to demo
- Start the application
- Test different shortcuts (for example Ctrl+N to create new book, Ctrl+O to open file, etc.)
Design
Implementation
(Implementation results should be described and linked here (from the wiki or the repository))
Testing
Comments
(Write comments for this or later revisions here.)