diff --git a/frappy/gui/modulewidget.py b/frappy/gui/modulewidget.py
index b8c3197..5731a7a 100644
--- a/frappy/gui/modulewidget.py
+++ b/frappy/gui/modulewidget.py
@@ -123,6 +123,7 @@ class AnimatedLabelHandthrough(QWidget):
class ModuleWidget(QWidget):
plot = pyqtSignal(str)
plotAdd = pyqtSignal(str)
+ paramDetails = pyqtSignal(str, str)
def __init__(self, node, name, parent=None):
super().__init__(parent)
loadUi(self, 'modulewidget.ui')
@@ -285,7 +286,7 @@ class ModuleWidget(QWidget):
l.addWidget(nameLabel, row,0,1,1)
l.addWidget(display, row,1,1,5)
l.addWidget(unitLabel, row,6)
- self._addPlotButtons(param, row)
+ self._addButtons(param, row)
def _addRWParam(self, param, row):
props = self._node.getProperties(self._name, param)
@@ -316,9 +317,9 @@ class ModuleWidget(QWidget):
l.addWidget(inputEdit, row,4,1,2)
l.addWidget(unitLabel2, row,6,1,1)
l.addWidget(submitButton, row, 7)
- self._addPlotButtons(param, row)
+ self._addButtons(param, row)
- def _addPlotButtons(self, param, row):
+ def _addButtons(self, param, row):
if param == 'status':
return
plotButton = QToolButton()
@@ -328,17 +329,24 @@ class ModuleWidget(QWidget):
plotAddButton.setIcon(QIcon(':/icons/plot-add'))
plotAddButton.setToolTip('Plot With...')
+ detailsButton= QToolButton()
+ detailsButton.setIcon(QIcon(':/icons/plot-add'))
+ detailsButton.setToolTip('show parameter details')
+
plotButton.clicked.connect(lambda: self.plot.emit(param))
plotAddButton.clicked.connect(lambda: self.plotAdd.emit(param))
+ detailsButton.clicked.connect(lambda: self.showParamDetails(param))
self._addbtns.append(plotAddButton)
plotAddButton.setDisabled(True)
self._paramWidgets[param].append(plotButton)
self._paramWidgets[param].append(plotAddButton)
+ self._paramWidgets[param].append(detailsButton)
l = self.moduleDisplay.layout()
l.addWidget(plotButton, row, 8)
l.addWidget(plotAddButton, row, 9)
+ l.addWidget(detailsButton, row, 10)
def _addCommands(self, startrow):
cmdicons = {
@@ -401,6 +409,9 @@ class ModuleWidget(QWidget):
for group in self._groups:
self._setGroupHidden(group, show)
+ def showParamDetails(self, param):
+ self.paramDetails.emit(self._name, param)
+
def _button_pressed(self, param):
target = self._paramInputs[param].text()
try:
diff --git a/frappy/gui/nodewidget.py b/frappy/gui/nodewidget.py
index 6f9fcd5..3b7c78c 100644
--- a/frappy/gui/nodewidget.py
+++ b/frappy/gui/nodewidget.py
@@ -148,12 +148,14 @@ class NodeWidget(QWidget):
self.plotParam(module, param))
widget.plotAdd.connect(lambda param, module=module:
self._plotPopUp(module, param))
+ widget.paramDetails.connect(self.showDetailedParam)
widget.showDetails(self.detailed)
self.noPlots.connect(widget.plotsPresent)
self._modules[module] = widget
self._detailedParams[module] = {}
for param in node.getParameters(module):
view = ParameterView(node, module, param)
+ view.setWindowTitle('%s:%s:%s - Properties' % (self._node.equipmentId, module, param))
self._detailedParams[module][param] = view
viewLayout.addWidget(widget)
@@ -208,6 +210,9 @@ class NodeWidget(QWidget):
if settings.value('highlightanimation', True, bool):
widget.triggerAnimation()
+ def showDetailedParam(self, module, param):
+ self._detailedParams[module][param].show()
+
def _treeContextMenu(self, pos):
index = self.tree.indexAt(pos)
if not index.isValid():
diff --git a/frappy/gui/ui/paramview.ui b/frappy/gui/ui/paramview.ui
index 9234e45..c2c9636 100644
--- a/frappy/gui/ui/paramview.ui
+++ b/frappy/gui/ui/paramview.ui
@@ -6,56 +6,68 @@
0
0
- 100
- 100
+ 387
+ 190
Form
-
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 40
-
-
-
-
- -
-
+
+
-
+
-
-
+
+ 12
75
- false
true
+ true
- Parameter name:
+ <html><head/><body><p><span style=" font-size:12pt; font-weight:600; text-decoration: underline;">TextLabel</span></p></body></html>
-
-
- -
-
-
- TextLabel
+
+ Qt::RichText
+
+
+ Qt::AlignCenter
- -
+
-
+
+
+ Qt::Vertical
+
+
+ QSizePolicy::Fixed
+
+
+
+ 20
+ 10
+
+
+
+
+ -
+
+
+ 0
+ 0
+
+
- Properties
+
+
+
+ Qt::AlignCenter
@@ -76,22 +88,6 @@
- -
-
-
- Qt::Vertical
-
-
- QSizePolicy::Fixed
-
-
-
- 20
- 20
-
-
-
-