Changeset 6b0c2f6 in sasview for src/sas/qtgui/Perspectives/Fitting/FittingWidget.py
- Timestamp:
- Dec 24, 2017 10:42:41 AM (6 years ago)
- Branches:
- ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc
- Children:
- 2109350
- Parents:
- 378e808
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/sas/qtgui/Perspectives/Fitting/FittingWidget.py
r378e808 r6b0c2f6 84 84 Main widget for selecting form and structure factor models 85 85 """ 86 constraintAddedSignal = QtCore.pyqtSignal(list) 86 87 def __init__(self, parent=None, data=None, tab_id=1): 87 88 … … 456 457 # Respond to change in parameters from the UI 457 458 self._model_model.itemChanged.connect(self.onMainParamsChange) 459 self.constraintAddedSignal.connect(self.modifyViewOnConstraint) 458 460 self._poly_model.itemChanged.connect(self.onPolyModelChange) 459 461 self._magnet_model.itemChanged.connect(self.onMagnetModelChange) … … 510 512 511 513 # Define the callbacks 512 self.actionConstrain.triggered.connect(self.add Constraint)513 self.actionMutualMultiConstrain.triggered.connect(self.showMultiConstrain )514 self.actionConstrain.triggered.connect(self.addSimpleConstraint) 515 self.actionMutualMultiConstrain.triggered.connect(self.showMultiConstraint) 514 516 self.actionSelect.triggered.connect(self.selectParameters) 515 517 self.actionDeselect.triggered.connect(self.deselectParameters) 516 518 return menu 517 519 518 def showMultiConstrain (self):520 def showMultiConstraint(self): 519 521 """ 520 522 Show the constraint widget and receive the expression 521 523 """ 522 524 from sas.qtgui.Perspectives.Fitting.MultiConstraint import MultiConstraint 523 params_list = [s.data() for s in self.lstParams.selectionModel().selectedRows()] 525 from .Constraints import Constraint 526 selected_rows = self.lstParams.selectionModel().selectedRows() 527 528 params_list = [s.data() for s in selected_rows] 524 529 mc_widget = MultiConstraint(self, params=params_list) 525 530 mc_widget.exec_() 526 constraint = mc_widget.txtConstraint.text() 531 constraint = Constraint() 532 c_text = mc_widget.txtConstraint.text() 527 533 # Pass the constraint to the parser 534 528 535 self.communicate.statusBarUpdateSignal.emit('Constraints added') 536 # Change the colour of the row 529 537 pass 530 538 531 def addConstraint(self): 539 def modifyViewOnConstraint(self, row): 540 """ 541 Add visual cues that the parameter is constrained 542 """ 543 value = self._model_model.item(row, 1).text() 544 # Set min/max to the value constrained 545 self._model_model.item(row,2).setText(value) 546 self._model_model.item(row,3).setText(value) 547 font = QtGui.QFont() 548 font.setItalic(True) 549 brush = QtGui.QBrush(QtGui.QColor('blue')) 550 self._model_model.blockSignals(True) 551 # Modify font and foreground of affected rows 552 for column in range(0, self._model_model.columnCount()): 553 self._model_model.item(row, column).setForeground(brush) 554 self._model_model.item(row, column).setFont(font) 555 self._model_model.item(row, column).setEditable(False) 556 self._model_model.blockSignals(False) 557 558 def addSimpleConstraint(self): 532 559 """ 533 560 Adds a constraint on a single parameter. 534 561 """ 562 from .Constraints import Constraint 563 for row in self.selectedParameters(): 564 param = self._model_model.item(row, 0).text() 565 value = self._model_model.item(row, 1).text() 566 constraint = Constraint(param=param, value=value) 567 item = QtGui.QStandardItem() 568 item.setData(constraint) 569 self._model_model.item(row, 1).setChild(0, item) 570 #self.constraintAddedSignal.emit([row]) 571 self.modifyViewOnConstraint(row) 535 572 self.communicate.statusBarUpdateSignal.emit('Constraint added') 536 573 pass
Note: See TracChangeset
for help on using the changeset viewer.