From 3d7d9131e058d4a972cfcd22494f0782b972c3a1 Mon Sep 17 00:00:00 2001
From: Paul McCarthy <pauld.mccarthy@gmail.com>
Date: Mon, 24 Aug 2015 11:33:31 +0100
Subject: [PATCH] Tooltips for overlay display, and ortho/lightbox settings
 panels

---
 fsl/fsleyes/controls/canvassettingspanel.py | 16 ++++++++++------
 fsl/fsleyes/controls/overlaydisplaypanel.py |  7 +++++--
 fsl/fsleyes/tooltips.py                     |  2 ++
 3 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/fsl/fsleyes/controls/canvassettingspanel.py b/fsl/fsleyes/controls/canvassettingspanel.py
index f7461cd61..6a2f4ba6e 100644
--- a/fsl/fsleyes/controls/canvassettingspanel.py
+++ b/fsl/fsleyes/controls/canvassettingspanel.py
@@ -9,10 +9,11 @@ import wx
 
 import props
 
-import pwidgets.widgetlist as widgetlist
+import pwidgets.widgetlist  as widgetlist
 
-import fsl.data.strings    as strings
-import fsl.fsleyes.panel   as fslpanel
+import fsl.data.strings     as strings
+import fsl.fsleyes.panel    as fslpanel
+import fsl.fsleyes.tooltips as fsltooltips
 
 
 _CANVASPANEL_PROPS = [
@@ -89,7 +90,8 @@ class CanvasSettingsPanel(fslpanel.FSLEyesPanel):
             
             self.__widgets.AddWidget(
                 widget,
-                strings.properties[canvasPanel, dispProp.key],
+                displayName=strings.properties[canvasPanel, dispProp.key],
+                tooltip=fsltooltips.properties[canvasPanel, dispProp.key],
                 groupName='scene')
 
         opts = canvasPanel.getSceneOptions()
@@ -103,7 +105,8 @@ class CanvasSettingsPanel(fslpanel.FSLEyesPanel):
             
             self.__widgets.AddWidget(
                 widget,
-                strings.properties[opts, dispProp.key],
+                displayName=strings.properties[opts, dispProp.key],
+                tooltip=fsltooltips.properties[opts, dispProp.key],
                 groupName='scene') 
 
         for dispProp in panelProps:
@@ -115,7 +118,8 @@ class CanvasSettingsPanel(fslpanel.FSLEyesPanel):
             
             self.__widgets.AddWidget(
                 widget,
-                strings.properties[opts, dispProp.key],
+                displayName=strings.properties[opts, dispProp.key],
+                tooltip=fsltooltips.properties[opts, dispProp.key],
                 groupName=panelGroup)
 
         self.__widgets.Expand('scene')
diff --git a/fsl/fsleyes/controls/overlaydisplaypanel.py b/fsl/fsleyes/controls/overlaydisplaypanel.py
index ff639ab5f..c7c0057cd 100644
--- a/fsl/fsleyes/controls/overlaydisplaypanel.py
+++ b/fsl/fsleyes/controls/overlaydisplaypanel.py
@@ -18,6 +18,7 @@ import pwidgets.widgetlist               as widgetlist
 
 import fsl.utils.typedict                as td
 import fsl.data.strings                  as strings
+import fsl.fsleyes.tooltips              as fsltooltips
 import fsl.fsleyes.panel                 as fslpanel
 import fsl.fsleyes.actions.loadcolourmap as loadcmap
 import fsl.fsleyes.displaycontext        as displayctx
@@ -221,7 +222,6 @@ class OverlayDisplayPanel(fslpanel.FSLEyesPanel):
         self.__updateWidgets(display, 'display')
         self.__updateWidgets(opts,    'opts')
 
-
         self.__widgets.Expand('display', displayExpanded)
         self.__widgets.Expand('opts',    optsExpanded)
         
@@ -248,6 +248,8 @@ class OverlayDisplayPanel(fslpanel.FSLEyesPanel):
 
         dispProps = _DISPLAY_PROPS[target]
         labels    = [strings.properties[target, p.key] for p in dispProps]
+        tooltips  = [fsltooltips.properties.get((target, p.key), None)
+                     for p in dispProps]
 
         widgets = []
 
@@ -266,10 +268,11 @@ class OverlayDisplayPanel(fslpanel.FSLEyesPanel):
                 
             widgets.append(widget)
 
-        for label, widget in zip(labels, widgets):
+        for label, tooltip, widget in zip(labels, tooltips, widgets):
             self.__widgets.AddWidget(
                 widget,
                 label,
+                tooltip=tooltip, 
                 groupName=groupName)
 
         self.Layout()
diff --git a/fsl/fsleyes/tooltips.py b/fsl/fsleyes/tooltips.py
index b2c9f32e9..fb21d4466 100644
--- a/fsl/fsleyes/tooltips.py
+++ b/fsl/fsleyes/tooltips.py
@@ -152,6 +152,8 @@ properties = TypeDict({
 
     'SceneOpts.showCursor'         : 'Show/hide the cursor which highlights '
                                      'the current location.',
+    'SceneOpts.cursorColour'       : 'Colour of the location cursor.',
+    'SceneOpts.bgColour'           : 'Canvas background colour.',
     'SceneOpts.showColourBar'      : 'If the currently selected overlay is a '
                                      'volumetric image, show a colour bar '
                                      'depicting the colour/data display '
-- 
GitLab