mrview: Various changes to fixel tool

- Fixel lengths can now be scaled by amplitude parameter, as well as fixed length ('unity') and the associated value.
- Fix ambiguous enum MR::GUI::MRView::Tool::ColourType (defined differently in two different locations).
- Fix segmentation fault when selecting multiple input fixel files with different colour maps.
- Disable GUI features relating to fixel colour bar & intensity scaling if selected input file(s) is/are not currently set to colour by value.
- Initial position of line thickness slider corresponds with initial line thickness.
Tweak appearance of fixel tool

Grouped colourmap menu and intensity scaling buttons together, and enable/disable the group depending on whether any of the currently selected files are using colour by value.
Prepend colour combobox with 'colour by'.
Rearranged Tool::Vector class members to be in same order as constructed and displayed.
New QT widget class ComboBoxWithErrorMsg

This new class derives from QComboBox.
When no item in the combo box adequately describes the current selection (e.g. multiple input files are selected, and each has a different value for that parameter), this class appends an extra item to the end of the drop-down list (with a custom string); this extra item is then deleted once a valid selection is made (either by code or user).
This is used in the fixel tool to indicate when the colouring / length-scaling properties are different between the currently selected files.
mrview: Fix fixel tool threshold tristate handling

Previously, if multiple input files were selected, and the state of a threshold varied between the selected files, the check box would become tristate, which would later cause unwanted behaviour.
This change allows for a tristate in this case, but explicitly reverts to boolean in all other cases, and threshold status of input files is preserved through multi-file selection unless the user activates the check box.
Changed deadzone behaviour of AdjustButton class

Previously, an initial vertical movement of more than 4 pixels would engage the mouse-dragging behaviour until the mouse button was released.
Now, this threshold has been doubled to 8 pixels; and if the mouse returns back to within this distance of the click point, the button value will return to the initial value from when the mouse button was first clicked.
Merge pull request #77 from jdtournier/fixel_tool

Merge fixel_tool branch