QT5 -- 1 of 3

Porting the codebase to QT 5 (5.2) to get the
latest bug fixes, performance and improved platform
support.

This first part is to fixup the codebase to compile
on Qt 5, but some aspects have been broken (video).

The second part is to migrate from Qwt 6.0.1 to the
latest Qwt for multiaxis support.

The third part will be to fixup any platform specific
issues or issues identified at runtime.
QT5 -- remove old qwt
QT5 -- Add Qwt 6.1-multiaxes
QT5 -- QWT 6.1 canvas fixup
QT5 -- 2 of 3

Fixup all the GC code to use the QWT 6.1 code.
It needed canvas() to be patched to return a
QwtPlotCanvas and not a QWidget.

We could probably get round that with a cast.

When we switch to QWT 6.2 with the multiaxis
support formally baked in we can fix the code
as needed.

Now compiles and links without issues.
QT5 -- Part 3 of 3

Fixup crashes and major issues created by porting
to QT5. These have included;

* Fix CP plot log scale
* AllPlot axes and tooltip
* DBAccess prepare/bind bug
* LTMSettings crash
* LTMWindow zoomer/picker crash
* LTMPlot axes hack

There are still issues remaining but we can start
working through them at leisure -- the product now
builds and runs.
QT5 -- Fixups for Mac build

Remember to make distclean too.

Mac currently looks terrible -- the unified toolbar
is gone and its all a bit of a mess!
Cut and paste-paste error in --help output
QT5 -- Windows Build Fixups

Fix errors on Win32

* FLOAT reserved word from yacc grammars
* toAscii() becomes toLatin1()
* ->winId() returns int (BROKEN)
QT5 -- Enable build on 4.8.4 -OR- 5.2.0

New strategy to enable build on QT5 or QT4.8 is quite
simple to enact as most of the fixes for QT5 can be
applied to earlier releases.

This patch fixes up some of the special cases for QT5 so
they will continue to build on earlier releases.
QT5 -- Fix model reset on 4.8.x

Using resetInternalData() does not do the same thing
in 4.8 models as 5.2.
Model reset fixup to use begin/endResetModel

Which is how you are supposed to reset a model and works
on QT 4 as well as QT 5.
REGRESS: Remove translateMetrics() from LTMPlot

This is a regression to remove the metric translation
functionality from LTMPlot.

WE WILL REINTRODUCE BEFORE RELEASE!

It has been regressed because;

1. It crashes on QT5 with Win32

2. It has significant performance penalties;

   It really should not instantiate an LTMTool object
   (Ale did discuss this with me and I gave it the go
   ahead, so my bad).

3. It should be executed on applySettings() not on
   each refreshPlot().

4. It has a bug regarding uunits being lost and breaking
   sharing of a common axis.
QT5 -- Mac fixups for building with 4.8.4

.. missed off earlier commits.
Don't set frameworks in QWT

.. makes it possible to build the examples
.. but we still don't build them by default
Fix #if in VideoWindow

.. wrong logic in #if for Linux and Qt5 in both
   the header and source.
Updated Tacx Satori Virtual Power values
Fix AllPlot Y-Axes

Now hide/show appropriately and are painted correctly.

There is still a problem with the x-axis disappearing
but this should be straight forward to resolve.
Fix LTM chart axes

.. using QwtAxisId type instead of an int cured most ills.
Fix LTM plot x-axis