Remove whitespace
Add and set EngineKeyDistance ControlObject in keycontrol.cpp
Compute distance to the nearest key and return it along with the key in a QPair object
Display the distance to the nearest key WKey widget. Currently it is displaying the same value for both loaded tracks. Haven't figured out how to solve this
Modify WKey constructor to take a const char* as a first parameter
Implement parseEngineKey method to create a WKey widget
Locale: add (locale) beside language names
Locale: use country name instead locale code
Locale: remove findData()
Locale: sort language list
Locale: add SystemDefaulLanguage at the top of language list
Locale: add en_us on the list
Change playposition range back to 0-1. Fixes Bug #1201972.
Use a ControlPotmeter instead of a ControlObject for visual_key_distance and store the cent difference as a double
Merge pull request #220 from rryan/playposition-range

Change playposition range back to 0-1. Fixes Bug #1201972.
Only redraw timerListener widgets when waveform updates if they have changed state since the last paint.
Support resizing WSliderComposed.
better state-change detection for the listener widgets
Eliminate unnecessary widget renders from control changes.

Instead of re-rendering on every control change (via
WWidget::onConnectedControlChanged), check for changes in what we would render
first.

Updated: WDisplay, WKnob, WKnobComposed, WSliderComposed, WStatusLight
Left unchanged: WWaveformViewer, WPushButton, WOverview, WVuMeter
Merge pull request #221 from ywwg/repaint-fixes

Only redraw timerListener widgets when waveform updates if they have cha...