Remove unused FindCTK.cmake module

Since CTK targets are exported into a CTKConfig.cmake file, there is
no need for such module. It would simply add extra maintenance work
without real advantage.

See #397
Popup widget position recalculated if parent widget resized

The ctkPopupWidget resides in its own window that should follow the
application window while it is being moved or resized. (This matters
only if the pop-up widget is pinned to the application window,
otherwise it is not visible during moving or resizing.)

This commit corrects the calculation of the new window position.

Fixes #411.
ENH: replaced query results tree view with DICOM table manager and added the ability to retrieve selection of individual studies
Fix ctkSliderWidget and ctkRangeRidget valueChanged signal

The issue was only when slider tracking is false.

Thanks to magro11 for the bug report & fix
Closes #444
Merge branch '444-fix-slider-valueChanged-with-no-tracking'

* 444-fix-slider-valueChanged-with-no-tracking:
  Fix ctkSliderWidget and ctkRangeRidget valueChanged signal
Merge pull request #437 from mehrtash/435-fix-retrieve-button

#435 ENH: replaced query results tree view with DICOM table manager in ctkDICOMQueryRetrieveWidget
Replace Qt::ToolTip popup window flag with Qt::Tool

Closes #417
Merge branch '417-popup-position'

* 417-popup-position:
  Replace Qt::ToolTip popup window flag with Qt::Tool
Fix popup offset when top-level widget is moved on mac

See issue #416
Merge branch '416-popup-offset-on-mac'

* 416-popup-offset-on-mac:
  Fix popup offset when top-level widget is moved on mac
Merge branch '411-ctkPopupWidget-put-in-wrong-position-on-resize-or-move' of https://github.com/NifTK/CTK into NifTK-411-ctkPopupWidget-put-in-wrong-position-on-resize-or-move

Conflicts:
	Libs/Widgets/ctkPopupWidget.cpp
Fix ctkDirectoryButton file dialog for AcceptSave mode

In AcceptSave mode, the file dialog shall not accept non-writable folders.
2 mechanisms are in place:
 * a custom QSortFilterProxyModel for display information
 * a smart file dialog that does not allow non-writable folder to be selected
It still fails on Windows for some reasons.

Closes #365
Merge branch '365-reject-non-writable-folders'

* 365-reject-non-writable-folders:
  Fix ctkDirectoryButton file dialog for AcceptSave mode
Disable decimal synchronization by default in ctkSliderWidget

This can lead to unwanted behavior. It should be a conscious choice to
enable the synchronization of decimals
See issue 3642 in na-mic bug tracker
Merge branch '3642-disable-synchronize-decimals'

* 3642-disable-synchronize-decimals:
  Disable decimal synchronization by default in ctkSliderWidget
Fix ctkPushButton text alignment with no icon

The issue was NOT showing up with Mac style.
Closes #445
Merge branch '445-fix-ctkPushButton-text-alignment'

* 445-fix-ctkPushButton-text-alignment:
  Fix ctkPushButton text alignment with no icon
Emit ctkSearchBox::textEdited() signal when clear icon is clicked

Closes #447
Merge branch '447-make-ctkSearchBox-emits-textEdited-signal-on-clear'

* 447-make-ctkSearchBox-emits-textEdited-signal-on-clear:
  Emit ctkSearchBox::textEdited() signal when clear icon is clicked
Ensure CTK_ENABLE_Python_Wrapping remain set when CTK_BUILD_ALL is ON

When CTK was configured with CTK_BUILD_ALL or CTK_BUILD_ALL_LIBRARIES, all
expected options were properly set after the first configuration. It's
after configuring the project a second time (without changing any options)
that problems appeared.

Example
=======

Before this commit, the option CTK_ENABLE_Python_Wrapping was
disabled after configuring a second time.

$ git clone git://github.com/commontk/CTK
$ mkdir CTK-build
$ cd CTK-build
$ cmake -DCTK_BUILD_ALL_LIBRARIES:BOOL=ON -DCTK_ENABLE_Python_Wrapping:BOOL=ON ../CTK

[...]

$ cmake .
Full support for [CTK_ENABLE_Python_Wrapping] disabled

Details
=======

The highlevel option (CTK_ENABLE_*) were set before the regular toolkit
options (CTK_LIB_*, CTK_APP_*, CTK_PLUGIN_*). If configured again and if associated expression
evaluated to false, the high-level option was forced to OFF.

For example, the option CTK_ENABLE_Python_Wrapping was depending on
CTK_LIB_Scripting/Python/Core. On following configuration, if CTK_LIB_Scripting/Python/Core
was false, CTK_ENABLE_Python_Wrapping was forced to OFF. This behavior was observed.

Since setting CTK_BUILD_ALL or CTK_BUILD_ALL_* options are NOT forcing  any variables in the
cache [1], when option like CTK_LIB_Scripting/Python/Core were specified, they were set to ON in
the current scope. On the following configuration, the code allowing to
specify the CTK_ENABLE_Python_Wrapping was forcing the option CTK_ENABLE_Python_Wrapping to be OFF
since CTK_LIB_Scripting/Python/Core was also OFF.

By moving the definition of the high level variables after the definition of the CTK_LIB_*,
CTK_APP_* and CTK_PLUGIN_* variables, we ensure that these same variables will be set in the current
scope when on of the CTK_BUILD_ALL_* option are enabled, doing so will then ensure that the highlevel
option are not forced to false when not required.

Finally, let's also not that high-level option like CTK_ENABLE_Widgets were not impacted by that issue
because they were dependent on option being already systematically forced in the cache. Preventing
the option from being forced into the cache in the "ctk_option" macro ensure that no variables is set
in the cache when either high level or build all options are set.

[1] The existing cache variable are "shadowed", it allows to keep the state
of the CTK_LIB_*, CTK_APP_*, CTK_PLUGIN_* variables untouched while trying to build the complete tree.

See #258