def build(self): layout = qt.QVBoxLayout(self) layout.setMargin(0) layout.setSpacing(0) self.calbox = None self.calbut = None calibration = McaCalControlLine(self) self.calbox = calibration.calbox self.calbut = calibration.calbut self.calinfo = McaCalInfoLine(self) if qt.qVersion() < '4.0.0': self.calmenu = qt.QPopupMenu() self.calmenu.insertItem(QString("Edit"), self.__copysignal) self.calmenu.insertItem(QString("Compute"), self.__computesignal) self.calmenu.insertSeparator() self.calmenu.insertItem(QString("Load"), self.__loadsignal) self.calmenu.insertItem(QString("Save"), self.__savesignal) else: self.calmenu = qt.QMenu() self.calmenu.addAction(QString("Edit"), self.__copysignal) self.calmenu.addAction(QString("Compute"), self.__computesignal) self.calmenu.addSeparator() self.calmenu.addAction(QString("Load"), self.__loadsignal) self.calmenu.addAction(QString("Save"), self.__savesignal) layout.addWidget(calibration) layout.addWidget(self.calinfo) # ROI #roibox = qt.QHGroupBox(self) #roibox.setTitle(' ROI ') roibox = qt.QWidget(self) roiboxlayout = qt.QHBoxLayout(roibox) roiboxlayout.setMargin(0) roiboxlayout.setSpacing(0) #roibox.setAlignment(qt.Qt.AlignHCenter) self.roiwidget = McaROIWidget.McaROIWidget(roibox) self.roiwidget.fillfromroidict(roilist=self.roilist, roidict=self.roidict) self.fillfromroidict = self.roiwidget.fillfromroidict self.addroi = self.roiwidget.addroi roiboxlayout.addWidget(self.roiwidget) layout.addWidget(roibox) if qt.qVersion() > '4.0.0': layout.setStretchFactor(roibox, 1)
def _build(self): #self.layout= qt.QVBoxLayout(self) if QTVERSION < '4.0.0': self.list= qt.QListView(self, "ScanList") self.list.setSelectionMode(qt.QListView.Extended) self.mainTab = qt.QTabWidget(self) else: self.splitter = qt.QSplitter(self) self.splitter.setOrientation(qt.Qt.Vertical) self.list = qt.QTreeWidget(self.splitter) self.list.setSelectionMode(qt.QAbstractItemView.ExtendedSelection) self.mainTab = qt.QTabWidget(self.splitter) self.cntTable = SpecFileCntTable.SpecFileCntTable() self.mcaTable = SpecFileMcaTable.SpecFileMcaTable() self.mainTab.addTab(self.cntTable, str("Counters")) self.mainTab.addTab(self.mcaTable, str("MCA")) if QTVERSION < '4.0.0': self.mainTab.setCurrentPage(self.mainTab.indexOf(self.mcaTable)) else: self.mainTab.setCurrentWidget(self.mcaTable) autoBox = qt.QWidget(self) autoBoxLayout = qt.QHBoxLayout(autoBox) autoBoxLayout.setMargin(0) autoBoxLayout.setSpacing(0) self.autoOffBox = qt.QCheckBox(autoBox) self.autoOffBox.setText("Auto OFF") self.autoAddBox = qt.QCheckBox(autoBox) self.autoAddBox.setText("Auto ADD") self.autoReplaceBox = qt.QCheckBox(autoBox) self.autoReplaceBox.setText("Auto REPLACE") if self.autoReplace: self.autoAddBox.setChecked(False) self.autoReplaceBox.setChecked(True) else: self.autoAddBox.setChecked(True) self.autoReplaceBox.setChecked(False) if OBJECT3D: self.object3DBox = qt.QCheckBox(autoBox) self.object3DBox.setText("3D On") autoBoxLayout.addWidget(self.object3DBox) self.connect(self.mcaTable, qt.SIGNAL("McaDeviceSelected"), self.mcaDeviceSelected) if QTVERSION > '4.0.0': self.meshBox = qt.QCheckBox(autoBox) self.meshBox.setText("Mesh") self.meshBox.setToolTip("Consider selection as a regular mesh") autoBoxLayout.addWidget(self.meshBox) autoBoxLayout.addWidget(self.autoOffBox) autoBoxLayout.addWidget(self.autoAddBox) autoBoxLayout.addWidget(self.autoReplaceBox) self.forceMcaBox = qt.QCheckBox(autoBox) self.forceMcaBox.setText("Force MCA") autoBoxLayout.addWidget(self.forceMcaBox) if QTVERSION < '4.0.0': self.mainLayout.addWidget(self.list) self.mainLayout.addWidget(self.mainTab) else: self.mainLayout.addWidget(self.splitter) self.mainLayout.addWidget(autoBox) # --- list headers if QTVERSION < '4.0.0': self.list.addColumn("X") self.list.addColumn("S#") self.list.addColumn("Command") self.list.addColumn("Pts") self.list.addColumn("Mca") self.list.header().setResizeEnabled(0, 0) self.list.header().setResizeEnabled(0, 1) self.list.header().setResizeEnabled(1, 2) self.list.header().setResizeEnabled(0, 3) self.list.header().setResizeEnabled(0, 4) self.list.header().setClickEnabled(0,-1) self.list.setSorting(-1) # --- list selection options self.list.setAllColumnsShowFocus(1) # --- signal handling self.connect(self.list, qt.SIGNAL("selectionChanged()"), self.__selectionChanged) self.connect(self.list, qt.SIGNAL("contextMenuRequested(QListViewItem *, const QPoint &, int)"), self.__contextMenu) self.connect(self.list, qt.SIGNAL("doubleClicked(QListViewItem *)"), self.__doubleClicked) """ self.connect(self.cntTable, qt.PYSIGNAL('SpecCntTableSignal'), self._cntSignal) """ # --- context menu self.menu= qt.QPopupMenu(self.list) idd= self.menu.insertItem("Show scan header") self.menu.connectItem(idd, self.__showScanInfo) else: labels = ["X", "S#", "Command", "Points", "Nb. Mca"] ncols = len(labels) self.list.setColumnCount(ncols) self.list.setHeaderLabels(labels) #size=50 #self.list.header().resizeSection(0, size) #self.list.header().resizeSection(1, size) #self.list.header().resizeSection(2, 4 * size) #self.list.header().resizeSection(3, size) #self.list.header().resizeSection(4, size) self.list.header().setStretchLastSection(False) if QTVERSION < '4.2.0': self.list.header().setResizeMode(0, qt.QHeaderView.Stretch) self.list.header().setResizeMode(1, qt.QHeaderView.Stretch) self.list.header().setResizeMode(2, qt.QHeaderView.Interactive) self.list.header().setResizeMode(3, qt.QHeaderView.Stretch) self.list.header().setResizeMode(4, qt.QHeaderView.Stretch) else: self.list.header().setResizeMode(0, qt.QHeaderView.ResizeToContents) self.list.header().setResizeMode(1, qt.QHeaderView.ResizeToContents) self.list.header().setResizeMode(2, qt.QHeaderView.Interactive) self.list.header().setResizeMode(3, qt.QHeaderView.ResizeToContents) self.list.header().setResizeMode(4, qt.QHeaderView.ResizeToContents) # --- signal handling self.connect(self.list, qt.SIGNAL("itemSelectionChanged()"), self.__selectionChanged) self.list.setContextMenuPolicy(qt.Qt.CustomContextMenu) self.connect(self.list, qt.SIGNAL("customContextMenuRequested(const QPoint &)"), self.__contextMenu) self.connect(self.list, qt.SIGNAL("itemDoubleClicked(QTreeWidgetItem *, int)"), self.__doubleClicked) self.connect(self.cntTable, qt.SIGNAL('SpecCntTableSignal'), self._cntSignal) if QTVERSION > '4.2.0': self.list.setSortingEnabled(False) self.connect(self.list.header(), qt.SIGNAL("sectionDoubleClicked(int)"), self.__headerSectionDoubleClicked) if OBJECT3D: self.connect(self.object3DBox, qt.SIGNAL("clicked()"), self._setObject3DBox) if hasattr(self, 'meshBox'): self.connect(self.meshBox, qt.SIGNAL("clicked()"), self._setMeshBox) self.connect(self.autoOffBox, qt.SIGNAL("clicked()"), self._setAutoOff) self.connect(self.autoAddBox, qt.SIGNAL("clicked()"), self._setAutoAdd) self.connect(self.autoReplaceBox, qt.SIGNAL("clicked()"), self._setAutoReplace) self.connect(self.forceMcaBox, qt.SIGNAL('clicked()'), self._setForcedMca) if QTVERSION < '4.0.0': self.connect(self.mainTab, qt.SIGNAL('currentChanged(QWidget*)'), self._tabChanged) else: self.connect(self.mainTab, qt.SIGNAL('currentChanged(int)'), self._tabChanged) self.disableMca = 0 #(type=="scan") self.disableScan = 0 #(type=="mca") # --- context menu self.data= None self.scans= []
def initMenuBar(self): if self.options["MenuFile"]: if QTVERSION < '4.0.0': self.menuFile = qt.QPopupMenu(self.menuBar()) idx = self.menuFile.insertItem(self.Icons["fileopen"], QString("&Open"), self.onOpen, qt.Qt.CTRL + qt.Qt.Key_O) self.menuFile.setWhatsThis(idx, HelpDict["fileopen"]) idx = self.menuFile.insertItem(self.Icons["filesave"], "&Save", self.onSave, qt.Qt.CTRL + qt.Qt.Key_S) self.menuFile.setWhatsThis(idx, HelpDict["filesave"]) self.menuFile.insertItem("Save &as", self.onSaveAs) self.menuFile.insertSeparator() idx = self.menuFile.insertItem(self.Icons["fileprint"], "&Print", self.onPrint, qt.Qt.CTRL + qt.Qt.Key_P) self.menuFile.setWhatsThis(idx, HelpDict["fileprint"]) self.menuFile.insertSeparator() self.menuFile.insertItem("&Quit", qt.qApp, qt.SLOT("closeAllWindows()"), qt.Qt.CTRL + qt.Qt.Key_Q) self.menuBar().insertItem('&File', self.menuFile) self.onInitMenuBar(self.menuBar()) else: #self.menubar = qt.QMenuBar(self) self.menuFile = qt.QMenu() self.menuFile.addAction(self.actionOpen) self.menuFile.addAction(self.actionSaveAs) self.menuFile.addAction(self.actionSave) self.menuFile.addSeparator() self.menuFile.addAction(self.actionPrint) self.menuFile.addSeparator() self.menuFile.addAction(self.actionQuit) self.menuFile.setTitle("&File") self.menuBar().addMenu(self.menuFile) self.onInitMenuBar(self.menuBar()) if self.options["MenuTools"]: if QTVERSION < '4.0.0': self.menuTools = qt.QPopupMenu() self.menuTools.setCheckable(1) self.connect(self.menuTools, qt.SIGNAL("aboutToShow()"), self.menuToolsAboutToShow) self.menuBar().insertItem("&Tools", self.menuTools) else: self.menuTools = qt.QMenu() #self.menuTools.setCheckable(1) self.connect(self.menuTools, qt.SIGNAL("aboutToShow()"), self.menuToolsAboutToShow) self.menuTools.setTitle("&Tools") self.menuBar().addMenu(self.menuTools) if self.options["MenuWindow"]: if QTVERSION < '4.0.0': self.menuWindow = qt.QPopupMenu() self.menuWindow.setCheckable(1) self.connect(self.menuWindow, qt.SIGNAL("aboutToShow()"), self.menuWindowAboutToShow) self.menuBar().insertItem("&Window", self.menuWindow) else: self.menuWindow = qt.QMenu() #self.menuWindow.setCheckable(1) self.connect(self.menuWindow, qt.SIGNAL("aboutToShow()"), self.menuWindowAboutToShow) self.menuWindow.setTitle("&Window") self.menuBar().addMenu(self.menuWindow) if self.options["MenuHelp"]: if QTVERSION < '4.0.0': self.menuHelp = qt.QPopupMenu(self) self.menuHelp.insertItem("&About", self.onAbout) self.menuHelp.insertItem("About &Qt", self.onAboutQt) self.menuBar().insertSeparator() self.menuBar().insertItem("&Help", self.menuHelp) else: self.menuHelp = qt.QMenu() self.menuHelp.addAction("&About", self.onAbout) self.menuHelp.addAction("About &Qt", self.onAboutQt) self.menuBar().addSeparator() self.menuHelp.setTitle("&Help") self.menuBar().addMenu(self.menuHelp)
def initToolBar(self): if self.options["FileToolBar"]: if QTVERSION < '4.0.0': self.fileToolBar = qt.QToolBar(self, "filetoolbar") self.fileToolBar.setLabel("File Operations") self.onInitFileToolBar(self.fileToolBar) fileOpen = qt.QToolButton(self.Icons["fileopen"], "Open", QString(""), self.onOpen, self.fileToolBar, "open") qt.QWhatsThis.add(fileOpen, HelpDict["fileopen"]) fileSave = qt.QToolButton(self.Icons["filesave"], "Save As", QString(""), self.onSaveAs, self.fileToolBar, "save") qt.QWhatsThis.add(fileSave, HelpDict["filesave"]) filePrint = qt.QToolButton(self.Icons["fileprint"], "Print", QString(""), self.onPrint, self.fileToolBar, "print") qt.QWhatsThis.add(filePrint, HelpDict["fileprint"]) self.fileToolBar.addSeparator() qt.QWhatsThis.whatsThisButton(self.fileToolBar) else: self.fileToolBar = self.addToolBar("filetoolbar") self.fileToolBar.addAction(self.actionOpen) self.fileToolBar.addAction(self.actionSaveAs) self.fileToolBar.addAction(self.actionPrint) self.fileToolBar.addSeparator() self.onInitToolBar() if self.options["WinToolBar"]: if QTVERSION < '4.0.0': self.winToolBar = qt.QToolBar(self, "wintoolbar") self.winToolBar.setLabel("Window resize") self.onInitWinToolBar(self.winToolBar) FullScreen = qt.QToolButton(self.Icons["window_fullscreen"], "Full Screen", QString(""), self.windowFullScreen, self.winToolBar, "fullscreen") qt.QWhatsThis.add(FullScreen, HelpDict["fullscreen"]) self.winToolButton= qt.QToolButton(self.Icons["window_nofullscreen"],\ "Tile", QString(""), self.onWinToolAction, self.winToolBar, "wintile") qt.QWhatsThis.add(self.winToolButton, HelpDict["nofullscreen"]) self.winToolMenu = qt.QPopupMenu(self.winToolButton) self.winToolMenu.setCheckable(1) self.winToolMenuText = [ "Cascade", "Tile", "Tile Horizontally", "Tile Vertically" ] self.winToolMenuIndex = [] for text in self.winToolMenuText: self.winToolMenuIndex.append( self.winToolMenu.insertItem(text, self.onWinToolMenu)) self.winToolMenu.setItemChecked(self.winToolMenuIndex[1], 1) self.winToolMenuAction = self.windowTile self.winToolButton.setPopup(self.winToolMenu) self.winToolButton.setPopupDelay(0) else: self.winToolBar = self.addToolBar("wintoolbar")