Changeset 83d6249 in sasview for src/sas/qtgui
- Timestamp:
- Feb 16, 2017 8:06:17 AM (8 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:
- 2bb20a5, fca1f50
- Parents:
- 4c7dd9f
- Location:
- src/sas/qtgui
- Files:
-
- 3 added
- 5 edited
- 2 moved
Legend:
- Unmodified
- Added
- Removed
-
src/sas/qtgui/DataExplorer.py
r965fbd8 r83d6249 65 65 self._helpView = QtWebKit.QWebView() 66 66 67 # Fill in the perspectives combo 68 self.initPerspectives() 69 67 70 # Custom context menu 68 71 self.treeView.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) … … 125 128 self.cbgraph.setEnabled(len(PlotHelper.currentPlots()) > 0) 126 129 self.cmdAppend.setEnabled(len(PlotHelper.currentPlots()) > 0) 130 131 def initPerspectives(self): 132 """ 133 Populate the Perspective combobox and define callbacks 134 """ 135 self.cbFitting.currentIndexChanged.connect(self.updatePerspectiveCombo) 136 # Set the index so we see the default (Fitting) 137 self.updatePerspectiveCombo(0) 127 138 128 139 def loadFromURL(self, url): … … 389 400 self.cbgraph.setCurrentIndex(ind) 390 401 402 def updatePerspectiveCombo(self, index): 403 """ 404 Notify the gui manager about the new perspective chosen. 405 """ 406 self.communicator.perspectiveChangedSignal.emit(self.cbFitting.currentText()) 407 391 408 def newPlot(self): 392 409 """ -
src/sas/qtgui/GuiManager.py
r257bd57 r83d6249 29 29 30 30 # Perspectives 31 import Perspectives 31 32 from sas.qtgui.Perspectives.Invariant.InvariantPerspective import InvariantWindow 33 from sas.qtgui.Perspectives.Fitting.FittingPerspective import FittingWindow 32 34 from sas.qtgui.DataExplorer import DataExplorerWindow 33 35 … … 98 100 "_downloads", 99 101 "Tutorial.pdf")) 100 101 #========================================================== 102 # TEMP PROTOTYPE 103 # Add InvariantWindow to the workspace. 104 self.invariantWidget = InvariantWindow(self) 105 self._workspace.workspace.addWindow(self.invariantWidget) 106 107 # Default perspective 108 self._current_perspective = self.invariantWidget 102 # Current displayed perspective 103 self._current_perspective = None 104 105 # Invoke the initial perspective 106 self.perspectiveChanged("Fitting") 109 107 110 108 def addWidgets(self): … … 120 118 self.dockedFilesWidget = QtGui.QDockWidget("Data Explorer", self._workspace) 121 119 self.dockedFilesWidget.setWidget(self.filesWidget) 120 122 121 # Disable maximize/minimize and close buttons 123 122 self.dockedFilesWidget.setFeatures(QtGui.QDockWidget.NoDockWidgetFeatures) … … 143 142 self.KIESSIGCalculator = KiessigPanel(self) 144 143 self.SlitSizeCalculator = SlitSizeCalculator(self) 144 145 145 def statusBarSetup(self): 146 146 """ … … 173 173 """ 174 174 return self._workspace.workspace 175 176 def perspectiveChanged(self, perspective_name): 177 """ 178 Respond to change of the perspective signal 179 """ 180 # Close the previous perspective 181 if self._current_perspective: 182 self._current_perspective.close() 183 # Default perspective 184 self._current_perspective = Perspectives.PERSPECTIVES[str(perspective_name)](self) 185 self._workspace.workspace.addWindow(self._current_perspective) 186 self._current_perspective.show() 175 187 176 188 def updatePerspective(self, data): … … 322 334 self.communicate.updatePerspectiveWithDataSignal.connect(self.updatePerspective) 323 335 self.communicate.progressBarUpdateSignal.connect(self.updateProgressBar) 336 self.communicate.perspectiveChangedSignal.connect(self.perspectiveChanged) 324 337 325 338 def addTriggers(self): -
src/sas/qtgui/GuiUtils.py
r3bdbfcc r83d6249 233 233 # Current workspace chart's name changed 234 234 activeGraphName = QtCore.pyqtSignal(tuple) 235 236 # Current perspective changed 237 perspectiveChangedSignal = QtCore.pyqtSignal(str) 235 238 236 239 -
src/sas/qtgui/Perspectives/Fitting/FittingPerspective.py
r4c7dd9f r83d6249 3 3 from PyQt4 import QtCore 4 4 5 from UI. fitting import Ui_Dialog5 from UI.FittingUI import Ui_FittingUI 6 6 7 class prototype(QtGui.QDialog, Ui_Dialog): 8 def __init__(self): 9 super(prototype, self).__init__() 7 class FittingWindow(QtGui.QDialog, Ui_FittingUI): 8 name = "Fitting" # For displaying in the combo box 9 def __init__(self, manager=None, parent=None): 10 super(FittingWindow, self).__init__() 10 11 self._model_model = QtGui.QStandardItemModel() 11 12 self._poly_model = QtGui.QStandardItemModel() … … 146 147 if __name__ == "__main__": 147 148 app = QtGui.QApplication([]) 148 dlg = prototype()149 dlg = FittingWindow() 149 150 dlg.show() 150 151 sys.exit(app.exec_()) -
src/sas/qtgui/Perspectives/Fitting/UI/FittingUI.ui
r4c7dd9f r83d6249 1 1 <?xml version="1.0" encoding="UTF-8"?> 2 2 <ui version="4.0"> 3 <class> Dialog</class>4 <widget class="QDialog" name=" Dialog">3 <class>FittingUI</class> 4 <widget class="QDialog" name="FittingUI"> 5 5 <property name="geometry"> 6 6 <rect> … … 12 12 </property> 13 13 <property name="windowTitle"> 14 <string>Dialog</string> 14 <string>Fitting Perspective</string> 15 </property> 16 <property name="windowIcon"> 17 <iconset resource="../../../UI/main_resources.qrc"> 18 <normaloff>:/res/ball.ico</normaloff>:/res/ball.ico</iconset> 15 19 </property> 16 20 <layout class="QGridLayout" name="gridLayout_15"> … … 664 668 </layout> 665 669 </widget> 666 <resources/> 670 <resources> 671 <include location="../../../UI/main_resources.qrc"/> 672 </resources> 667 673 <connections/> 668 674 </ui> -
src/sas/qtgui/Perspectives/Invariant/InvariantPerspective.py
rb789967 r83d6249 39 39 # The controller which is responsible for managing signal slots connections 40 40 # for the gui and providing an interface to the data model. 41 name = "Invariant" # For displaying in the combo box 41 42 def __init__(self, manager=None, parent=None): 42 43 super(InvariantWindow, self).__init__(parent) … … 102 103 self.setupMapper() 103 104 104 def closeEvent(self, event):105 """106 Overwrite the default close method of QWidget107 """108 # No close on perspectives - one must always be active.109 event.ignore()105 #def closeEvent(self, event): 106 # """ 107 # Overwrite the default close method of QWidget 108 # """ 109 # # No close on perspectives - one must always be active. 110 # event.ignore() 110 111 111 112 def communicator(self): -
src/sas/qtgui/Perspectives/__init__.py
- Property mode changed from 100755 to 100644
rf721030 r83d6249 1 # Available perspectives. 2 # When adding a new perspective, this dictionary needs to be updated 3 4 from Fitting.FittingPerspective import FittingWindow 5 from Invariant.InvariantPerspective import InvariantWindow 6 7 PERSPECTIVES = { 8 FittingWindow.name: FittingWindow, 9 InvariantWindow.name: InvariantWindow, 10 }
Note: See TracChangeset
for help on using the changeset viewer.