Пример #1
0
 def backmove(self):
     if not self.path:
         return
     else:
         for i in range(2):
             n = self.path[-1][0]
             m = self.path[-1][1]
             self.path.pop()
             self.list[n][m] = (float(self.x), float(self.y), NON_FLAG)
             if self.chessArr[n][m] != None:
                 sip.delete(self.chessArr[n][m])
                 self.chessArr[n][m] = None
         # #改变之前棋子的图案
         # if self.path:
         #     for i in range(2):
         #         n = self.path[-i - 1][0]
         #         m = self.path[-i - 1][1]
         #         x = float(n * self.gridWidth + self.limit)
         #         y = float(m * self.gridWidth + self.limit)
         #         color = self.list[n][m][2]
         #         if self.chessArr[n][m] != None:
         #             sip.delete(self.chessArr[n][m])
         #             self.chessArr[n][m] = None
         #         self.chessArr[n][m] = QtGui.QGraphicsView(self.chessBoard)
         #         self.chessArr[n][m].setGeometry(QtCore.QRect(32, 32, 32, 32))
         #         if color == WHITE_FLAG:
         #             self.chessArr[n][m].setStyleSheet(_fromUtf8("background-image: url(:/images/white.png);"))
         #         else:
         #             self.chessArr[n][m].setStyleSheet(_fromUtf8("background-image: url(:/images/black.png);"))
         #         self.chessArr[n][m].setFrameShape(QtGui.QFrame.NoFrame)
         #         self.chessArr[n][m].show()
         #         self.chessArr[n][m].move(x, y)
         self.chessBoard.update()
Пример #2
0
    def _display(self):
        """
        Rebuild the speaker panel from scratch. Existing buttons and stuff
        will be destroyed before new ones are created.
        """

        self.btn2spkr = {}
        self.spkr2btn = {}
        sip.delete(self.widget())
        widget = QtGui.QWidget()
        layout = QtGui.QVBoxLayout(widget)
        buttonGroup = QtGui.QButtonGroup(widget)
        buttonGroup.buttonClicked.connect(self._setSelectedSpeaker)
        for spkr in self._getSpeakerList():
            if spkr is None:
                label = 'None'
            else:
                label = self._speakerInfoString(spkr)
            button = QtGui.QRadioButton(label, widget)
            if self.selectedSpeaker == spkr: button.setChecked(True)
            buttonGroup.addButton(button)
            self.btn2spkr[button] = self.spkrs[spkr][-1]
            self.spkr2btn[spkr] = button
            color = self.colorMap(spkr)
            palette = button.palette()
            palette.setColor(QtGui.QPalette.Button, QtGui.QColor(color))
            button.setPalette(palette)
            button.setAutoFillBackground(True)
            layout.addWidget(button)
        self.bgpSpkrs = buttonGroup
        layout.setMargin(1)
        layout.setSpacing(1)
        layout.addStretch()
        self.setWidget(widget)
Пример #3
0
def main():
    import sip
    from PyQt4.QtGui import QApplication
    from Orange.classification import logistic_regression, svm
    from Orange.evaluation import testing

    app = QApplication([])
    w = OWLiftCurve()
    w.show()
    w.raise_()

    data = Orange.data.Table("ionosphere")
    results = testing.CrossValidation(
        data,
        [logistic_regression.LogisticRegressionLearner(penalty="l2"),
         logistic_regression.LogisticRegressionLearner(penalty="l1"),
         svm.SVMLearner(probability=True),
         svm.NuSVMLearner(probability=True)
         ],
        store_data=True
    )
    results.fitter_names = ["LR l2", "LR l1", "SVM", "Nu SVM"]
    w.set_results(results)
    rval = app.exec_()

    sip.delete(w)
    del w
    app.processEvents()
    del app
    return rval
Пример #4
0
 def move_itemsAcross(self):
     """ Create new tree items and populate the target tree
     """
     targetItems = []
     for item in self.dragItems:
         i = h5Item([str(item[1])])
         i.path = item[0]
         i.listIndex = item[2]
         i.originalIndex = item[3]
         targetItems.append(i)             
     parentIndex = self.ui.workingDataTree.indexFromItem(self.dragTargetParent)
     for row in np.arange(0, len(self.dragItems)):
         index = self.ui.workingDataTree.model().index(self.dragTargetRow+row, 0, parentIndex)        
         temp_item = self.ui.workingDataTree.itemFromIndex(QtCore.QModelIndex(index))
         sip.delete(temp_item)        
         if parentIndex.isValid():
             self.make_nameUnique(self.dragTargetParent, targetItems[row], targetItems[row].text(0))
             self.dragTargetParent.insertChild(index.row(), targetItems[row])
             originalParentWidget = self.ui.fileDataTree.itemFromIndex(QtCore.QModelIndex(targetItems[row].originalIndex))
             h5.populate_h5dragItems(self, originalParentWidget, targetItems[row])
         else:
             self.make_nameUnique(self.ui.workingDataTree.invisibleRootItem(), targetItems[row], targetItems[row].text(0))
             self.ui.workingDataTree.insertTopLevelItem(index.row(), targetItems[row])     
             originalParentWidget = self.ui.fileDataTree.itemFromIndex(QtCore.QModelIndex(targetItems[row].originalIndex))
             h5.populate_h5dragItems(self, originalParentWidget, targetItems[row])
Пример #5
0
 def plotAttribute(self):
     """Plots the selected attribute."""
     sip.delete(self.contactPlotter)
     self.contactPlotter = ContactPlotter(None, width=4, height=2, dpi=70)
     if self.attributeBox.currentText() == "Score":
         self.contactPlotter.plot_contact_figure(self.contact)
     self.plotGridLayout.addWidget(self.contactPlotter)
Пример #6
0
def main():
    import sip
    from AnyQt.QtWidgets import QApplication
    from Orange.classification import (LogisticRegressionLearner, SVMLearner,
                                       NuSVMLearner)

    app = QApplication([])
    w = OWCalibrationPlot()
    w.show()
    w.raise_()

    data = Orange.data.Table("ionosphere")
    results = Orange.evaluation.CrossValidation(
        data,
        [LogisticRegressionLearner(penalty="l2"),
         LogisticRegressionLearner(penalty="l1"),
         SVMLearner(probability=True),
         NuSVMLearner(probability=True)
         ],
        store_data=True
    )
    results.learner_names = ["LR l2", "LR l1", "SVM", "Nu SVM"]
    w.set_results(results)
    rval = app.exec_()

    sip.delete(w)
    del w
    app.processEvents()
    del app
    return rval
Пример #7
0
    def __init__(self, parent=None):
        super(QtWidgets.QWidget, self).__init__(parent)
        self.setupUi(self)

        self.state = True
        self.name = None
        self.psf, self. dcd = "", ""
        self.allSasas = []
        self.totalFramesToProcess = 0

        sip.delete(self.sasaProgressBar)
        self.sasaProgressBar = PbWidget(total=100)
        self.sasaProgressBar.setProperty("value", 0)
        self.sasaProgressBar.setTextVisible(True)
        self.sasaProgressBar.setInvertedAppearance(False)
        self.sasaProgressBar.setObjectName("sasaProgressBar")
        self.previewPlot = SimplePlotter(None, width=4, height=2, dpi=70)
        self.graphGridLayout.addWidget(self.previewPlot)
        self.gridLayout.addWidget(self.sasaProgressBar, 8, 1, 1, 2)
        self.calcSasaButton.clicked.connect(self.calculateSasa)
        self.loadDataButton.clicked.connect(self.loadData)
        self.clearDataButton.clicked.connect(self.clearData)
        self.savePlotButton.clicked.connect(self.savePlot)
        self.exportDataButton.clicked.connect(self.exportData)
        self.topoloader = TopoTrajLoaderDialog()
Пример #8
0
 def delete(self):
     """
     Remove this part from our score.
     """
     del self.l.part
     sip.delete(self.w)
     sip.delete(self.l)
Пример #9
0
 def removeWord(self):
     item = self.lbox.currentItem()
     if item:
         word = unicode(item.text())
         self.lbox.removeItemWidget(item)
         sip.delete(item)
         del self.pwl[word]
Пример #10
0
 def _request_page(self):
     self.n += 1
     print('Попытка:', self.n)
     sip.delete(self.page)
     self.page = QWebPage(self)
     self.page.loadFinished.connect(self._check_goods)
     self.page.mainFrame().load(QUrl(self.url))
Пример #11
0
def test(argv=sys.argv):
    app = QApplication(list(argv))
    argv = app.arguments()

    if len(argv) > 1:
        filename = argv[1]
    else:
        filename = "iris"

    import sip
    import Orange.distance

    w = OWDistanceMap()
    w.show()
    w.raise_()
    data = Orange.data.Table(filename)
    dist = Orange.distance.Euclidean(data)
    w.set_distances(dist)
    w.handleNewSignals()
    rval = app.exec_()
    w.set_distances(None)
    w.saveSettings()
    w.onDeleteWidget()
    sip.delete(w)
    del w
    return rval
Пример #12
0
 def clearLayout(self):
     if self.layout() is not None:
         old_layout = self.layout()
         for i in reversed(range(old_layout.count())):
             old_layout.itemAt(i).widget().setParent(None)
         import sip
         sip.delete(old_layout)
Пример #13
0
def test_main(argv=None):
    import sys
    import sip

    argv = sys.argv[1:] if argv is None else argv
    if argv:
        filename = argv[0]
    else:
        filename = "iris"

    data = Orange.data.Table(filename)

    app = QApplication([])
    w = OWLinearProjection()
    w.set_data(data)
    w.set_subset_data(data[::10])
    w.handleNewSignals()
    w.show()
    w.raise_()
    r = app.exec()
    w.set_data(None)
    w.saveSettings()
    sip.delete(w)
    del w
    return r
Пример #14
0
    def selection_changed(self):
        selected = [obj.text() for obj in self.note_list.selectedItems()]
        to_del = []

        if len(selected) > len(self.selected_notes):  # Something was added
            for note in selected:
                if note not in self.selected_notes:
                    cb = QtWidgets.QComboBox()
                    cb.addItems(["1/4", "1/2"] + list(map(str, range(1, 11))))
                    cb.setCurrentIndex(2)

                    item = QtWidgets.QTreeWidgetItem(self.selected_notes_report, [note, "1"])
                    self.selected_notes_report.setItemWidget(item, 1, cb)
                    item.setFlags(QtCore.Qt.ItemIsEditable | QtCore.Qt.ItemIsEnabled)
                    self.selected_notes[note] = item
        else:
            for note in self.selected_notes:
                if note not in selected:
                    to_del.append(note)

        for note in to_del:
            item = self.selected_notes[note]
            del self.selected_notes[note]
            sip.delete(item)

        self.note_list.search_input.clear()
        self.note_list.search_input.setFocus(True)
Пример #15
0
	def init_backend_settings(self, force=False):

		"""
		(Re-)initialize the backend settings controls

		Keywords arguments:
		force -- indicates if the initialization should occur even if the
				 controls are not shown (default=False)
		"""

		if force or self.ui.group_backend_settings.isChecked():
			for backend_type in ["canvas", "keyboard", "mouse", "synth", \
				"sampler"]:
				backend = self.main_window.experiment.get("%s_backend" \
					% backend_type)
				exec("from openexp._%s.%s import %s as _backend" % ( \
					backend_type, backend, backend))
				group = eval("self.ui.group_%s" % backend_type)
				layout = eval("self.ui.layout_%s" % backend_type)
				label = eval("self.ui.label_%s" % backend_type)

				# Horribly ugly wayo clear the previous settings
				while layout.count() > 1:
					w = layout.itemAt(1)
					layout.removeItem(w)
					w.widget().hide()
					sip.delete(w)

				if not hasattr(_backend, "settings") or _backend.settings == \
					None:
					label.setText("No settings for %s" % backend)
				else:
					label.setText("Settings for %s:" % backend)
					layout.addWidget(settings_widget( \
						self.main_window.experiment, _backend.settings, self))
Пример #16
0
    def refresh(self):                
        error = self.getter.getError()        
        episodes = self.getter.getData()
        
        if self.widget:
            sip.delete(self.widget)
            self.widget = None
        
        self.widget = QGraphicsWidget(self)
        
        self.wlayout = QGraphicsLinearLayout(Qt.Vertical, self.widget)
        self.wlayout.setSpacing(5)
        self.widget.setLayout(self.wlayout)
        
        size = 0

        if error == 0:
            if len(episodes):
                for e in episodes:
                    ep = EpisodeWidget(e, self.searchEngines, self.widget)
                    self.wlayout.addItem(ep)
                    size = size + ep.size().height()
                self.setWidget(self.widget)
            else: 
                self.showInfo('No episodes.')
        elif error == EpisodeGetter.ERROR_CONNECTION:
            self.showInfo('Error getting episodes.')
        elif error == EpisodeGetter.ERROR_CREDENTIALS:
            self.showInfo('Wrong credentials.')
        else:
            self.showInfo('Unknown error.')
        
        sip.delete(self.getter)
        self.initGetter()
Пример #17
0
def main():
    import gc
    import sip
    from AnyQt.QtWidgets import QApplication
    from Orange.classification import (LogisticRegressionLearner, SVMLearner,
                                       NuSVMLearner)

    app = QApplication([])
    w = OWROCAnalysis()
    w.show()
    w.raise_()

#     data = Orange.data.Table("iris")
    data = Orange.data.Table("ionosphere")
    results = Orange.evaluation.CrossValidation(
        data,
        [LogisticRegressionLearner(),
         LogisticRegressionLearner(penalty="l1"),
         SVMLearner(probability=True),
         NuSVMLearner(probability=True)],
        k=5,
        store_data=True,
    )
    results.learner_names = ["Logistic", "Logistic (L1 reg.)", "SVM", "NuSVM"]
    w.set_results(results)

    rval = app.exec_()
    w.deleteLater()
    sip.delete(w)
    del w
    app.processEvents()
    sip.delete(app)
    del app
    gc.collect()
    return rval
Пример #18
0
 def clear(self):
     for c in self:
         self.libraries.l.removeWidget(c)
         c.setParent(None)
         c.restriction_changed.disconnect()
         sip.delete(c)
     self._items = []
Пример #19
0
    def clear(self):
        cards = self.cardPanel.children()
        for card in cards:
            sip.delete(card)

        self.cardPanel.setGeometry(0, 0, self.width(), self.height())
        self.cardcount = 0
Пример #20
0
	def __init__(self, main_window):
	
		self.main_window = main_window
		QtGui.QWidget.__init__(self, main_window)
		self.ui = Ui_widget_backend_settings()
		self.ui.setupUi(self)
		self.main_window.theme.apply_theme(self)
		self.tab_name = '__backend_settings__'
		
		for backend_type in ["canvas", "keyboard", "mouse", "synth", \
			"sampler"]:
			backend = self.main_window.experiment.get("%s_backend" \
				% backend_type)
			backend_module = __import__(u'openexp._%s.%s' % (backend_type, \
				backend), fromlist=[u'dummy'])
			_backend = getattr(backend_module, backend)
			group = getattr(self.ui, u'group_%s' % backend_type)
			layout = getattr(self.ui, u'layout_%s' % backend_type)
			label = getattr(self.ui, u'label_%s' % backend_type)
			# Horribly ugly way to clear the previous settings
			while layout.count() > 1:
				w = layout.itemAt(1)
				layout.removeItem(w)
				w.widget().hide()
				sip.delete(w)

			if not hasattr(_backend, "settings") or _backend.settings == \
				None:
				label.setText(_("No settings for %s") % backend)
			else:
				label.setText(_("Settings for %s:") % backend)
				layout.addWidget(settings_widget( \
					self.main_window.experiment, _backend.settings, self))
Пример #21
0
def main(argv=None):
    import sys
    import sip

    argv = sys.argv[1:] if argv is None else argv
    if argv:
        filename = argv[0]
    else:
        filename = "heart_disease"

    data = Table(filename)

    app = QApplication([])
    w = OWRadviz()
    w.set_data(data)
    w.set_subset_data(data[::10])
    w.handleNewSignals()
    w.show()
    w.raise_()
    r = app.exec()
    w.set_data(None)
    w.saveSettings()
    sip.delete(w)
    del w
    return r
Пример #22
0
    def __init__(self, parent=None, title=None, description=None,
                 working_directory=None, workspace_units=None):
        settings = QSettings()

        self.__working_directory = (
            working_directory or
            settings.value("output/default-working-directory",
                           os.path.expanduser("~/Oasys"), type=str))

        if not os.path.exists(self.__working_directory):
            os.makedirs(self.__working_directory, exist_ok=True)

        #QSettings().setValue("output/default-units", 1)

        self.__workspace_units = (
            workspace_units or
            settings.value("output/default-units", 1, type=int))

        super().__init__(parent, title=title, description=description)

        # Replace the signal manager from.
        self.signal_manager.setParent(None)
        self.signal_manager.deleteLater()
        sip.delete(self.signal_manager)
        sip.delete(self.widget_manager)

        self.set_loop_flags(Scheme.AllowLoops)
        self.signal_manager = OASYSSignalManager(self)
        self.widget_manager = OASYSWidgetManager()
        self.widget_manager.set_scheme(self)
Пример #23
0
def qt():
    application = QApplication([])
    yield application
    application.exit()
    # If we don't force deletion of the C++ wrapped object, it causes the test suite to eventually crash
    # Never ever remove this!!
    sip.delete(application)
Пример #24
0
 def move_itemsAcross(self, source, modifiers):
     """ Create new tree items and populate the target tree. Originally made 
     for moving items from fileDataTree to workingDataTree, but then modified
     to copy items when the move is internal in workingDataTree and Ctrl is 
     pressed.
     """
     if (source==self.ui.workingDataTree) and (modifiers==QtCore.Qt.ControlModifier):
       # Copy internally
       #print 'copying'
       targetItems = []
       for item in self.copyItems:
         i = h5Item([str(item.text(0))])
         i.data = item.data
         targetItems.append(i)             
       parentIndex = self.ui.workingDataTree.indexFromItem(self.dragTargetParent)
       for row in np.arange(0, len(self.copyItems)):
         index = self.ui.workingDataTree.model().index(self.dragTargetRow+row, 0, parentIndex)        
         temp_item = self.ui.workingDataTree.itemFromIndex(QtCore.QModelIndex(index))
         sip.delete(temp_item)        
         if parentIndex.isValid():
             self.make_nameUnique(self.dragTargetParent, targetItems[row], targetItems[row].text(0))
             self.dragTargetParent.insertChild(index.row(), targetItems[row])
             originalParentWidget = self.copyItems[row]
             h5.populate_h5copyItems(self, originalParentWidget, targetItems[row])
         else:
             self.make_nameUnique(self.ui.workingDataTree.invisibleRootItem(), targetItems[row], targetItems[row].text(0))
             self.ui.workingDataTree.insertTopLevelItem(index.row(), targetItems[row])     
             originalParentWidget = self.copyItems[row]
             h5.populate_h5copyItems(self, originalParentWidget, targetItems[row])       
     elif source==self.ui.workingDataTree:
       pass
     else:
       # Move across
       #print 'moving'
       targetItems = []
       for item in self.dragItems:
         i = h5Item([str(item[1])])
         i.path = item[0]
         i.listIndex = item[2]
         i.originalIndex = item[3]
         i.data = item[4]
         i.attrs = item[5]
         #item = i[0]
         #item.originalIndex = i[1]
         targetItems.append(i)             
       parentIndex = self.ui.workingDataTree.indexFromItem(self.dragTargetParent)
       for row in np.arange(0, len(self.dragItems)):
         index = self.ui.workingDataTree.model().index(self.dragTargetRow+row, 0, parentIndex)        
         temp_item = self.ui.workingDataTree.itemFromIndex(QtCore.QModelIndex(index))
         sip.delete(temp_item)        
         if parentIndex.isValid():
             self.make_nameUnique(self.dragTargetParent, targetItems[row], targetItems[row].text(0))
             self.dragTargetParent.insertChild(index.row(), targetItems[row])
             originalParentWidget = self.ui.fileDataTree.itemFromIndex(QtCore.QModelIndex(targetItems[row].originalIndex))
             h5.populate_h5dragItems(self, originalParentWidget, targetItems[row])
         else:
             self.make_nameUnique(self.ui.workingDataTree.invisibleRootItem(), targetItems[row], targetItems[row].text(0))
             self.ui.workingDataTree.insertTopLevelItem(index.row(), targetItems[row])     
             originalParentWidget = self.ui.fileDataTree.itemFromIndex(QtCore.QModelIndex(targetItems[row].originalIndex))
             h5.populate_h5dragItems(self, originalParentWidget, targetItems[row])
Пример #25
0
def main(argv=None):
    import sip
    if argv is None:
        argv = sys.argv
    argv = list(argv)
    app = QtGui.QApplication(argv)

    w = OWScatterMap()
    w.show()
    w.raise_()

    if len(argv) > 1:
        filename = argv[1]
    else:
        filename = "adult"

    data = Orange.data.Table(filename)

    w.set_data(data)
    rval = app.exec_()

    w.set_data(None)
    w.onDeleteWidget()

    sip.delete(w)
    del w
    app.processEvents()
    return rval
Пример #26
0
	def __init__(self, main_window):

		super(backend_settings, self).__init__(main_window,
			ui=u'widgets.backend_settings')
		self.tab_name = u'__backend_settings__'

		for backend_type in backend._backend_types:
			try:
				_backend = backend.get_backend_class(self.experiment,
					backend_type)
			except:
				_backend = None
				
			layout = getattr(self.ui, u'layout_%s' % backend_type)
			label = getattr(self.ui, u'label_%s' % backend_type)
			# Horribly ugly way to clear the previous settings
			while layout.count() > 1:
				w = layout.itemAt(1)
				layout.removeItem(w)
				w.widget().hide()
				sip.delete(w)
			if _backend is None:
				label.setText(_(u"Failed to load backend"))				
			elif not hasattr(_backend, u"settings") or _backend.settings == \
				None:
				label.setText(_(u"No settings for %s") % _backend.__name__)
			else:
				label.setText(_(u"Settings for %s:") % _backend.__name__)
				layout.addWidget(settings_widget(self.main_window,
					_backend.settings))
Пример #27
0
    def drawTextItem(self, point, text_item):
        # return super(PdfEngine, self).drawTextItem(point, text_item)
        self.apply_graphics_state()
        gi = self.qt_hack.get_glyphs(point, text_item)
        if not gi.indices:
            sip.delete(gi)
            return
        name = hash(bytes(gi.name))
        if name not in self.fonts:
            try:
                self.fonts[name] = self.create_sfnt(text_item)
            except UnsupportedFont:
                return super(PdfEngine, self).drawTextItem(point, text_item)
        metrics = self.fonts[name]
        for glyph_id in gi.indices:
            try:
                metrics.glyph_map[glyph_id] = metrics.full_glyph_map[glyph_id]
            except (KeyError, ValueError):
                pass
        glyphs = []
        last_x = last_y = 0
        for i, pos in enumerate(gi.positions):
            x, y = pos.x(), pos.y()
            glyphs.append((x-last_x, last_y - y, gi.indices[i]))
            last_x, last_y = x, y

        self.pdf.draw_glyph_run([gi.stretch, 0, 0, -1, 0, 0], gi.size, metrics,
                                glyphs)
        sip.delete(gi)
Пример #28
0
 def plotClusterSelection(self, index, boolean=False):
     """
     Allow to plot peak and cluster tables
     
     """
     if not index.isValid():
         return
     string = str(index.data().toString())#.model().data(index.parent(), Qt.DisplayRole).toString()
     if string in ("fragments/adducts:","isotopic cluster:"):
         return
     
     data = string.split('/')
     #print data
     prec=float(data[0])
     rt = float(data[1])
     #print prec, rt
     peaks=self.getElementsToPlot(flags='peak', prec=prec, rt=rt)
     pw = ClusterWidget(peaks, self.view)#MSQtCanvas(peaks, "peak@%s/%s"%(str(prec), str(rt)), labels={'bottom':'RT(s)', 'left':'INTENSITY'}, flags='peak')
     QObject.connect(qApp.instance(), SIGNAL('redraw()'), pw.widget.mainWidget.redraw)
     title="peak@%s/%s"%(str(prec), str(rt))
     win=self.view.mdiArea.activeSubWindow()
     isMax=False
     if win is not None and boolean:
         isMax=win.isMaximized()
         w=win.widget()
         #w.setParent(None)
         sip.delete(w)#
         #del w
         win.setWidget(pw)
     else:
         self.view.addMdiSubWindow(MSView(pw), title, isMax)
         self.view.mdiArea.tileSubWindows()
Пример #29
0
 def plotPeakSelection(self, index, boolean=False):
     """
     Allow to plot peak and peak tables
     
     """                
     if not index.isValid():
         return
     data = index.data().toString().split("/")
     prec, rt =float(data[0]), float(data[1])
     peaks=self.getElementsToPlot(flags='peak', prec=prec, rt=rt)
     pw = MSQtCanvas(peaks, "peak@%s/%s"%(str(prec), str(rt)),
                     labels={'bottom':'RT(s)', 'left':'INTENSITY'}, 
                     flags='peak')
     
     QObject.connect(qApp.instance(), SIGNAL('redraw()'), pw.redraw)
     title="peak@%s/%s"%(str(prec), str(rt))
     win=self.view.mdiArea.activeSubWindow()
     isMax=False
     if win is not None and boolean:
         isMax=win.isMaximized()
         w=win.widget()
         #w.connect(w, SIGNAL('destroyed (QObject *)'), self.destroyed)
         #w.setParent(None)
         sip.delete(w)
         del w
         win.setWidget(MSView(pw))
         #win.close()
     else:
         self.view.addMdiSubWindow(MSView(pw), title, isMax)
         self.view.mdiArea.tileSubWindows()
Пример #30
0
 def plotSelection(self, index, boolean=False):
     """
     Allow to plot spectrum
     
     """
     if not index.isValid():
         return
     chromas=self.getElementsToPlot(flags='spectra', index=index.row())
     title="Spectrum@%s"%str(chromas[0].rtmin)
     legend={'bottom':'m/z', 'left':'INTENSITY'}
     flags='spectra'
     #useOpenGL=False                
     pw = MSQtCanvas(chromas, title, labels=legend, flags=flags)#, useOpenGL=useOpenGL)
     QObject.connect(qApp.instance(), SIGNAL('redraw()'), pw.redraw)            
     a=self.view.mdiArea.activeSubWindow()
     isMax=False
     if a is not None and boolean:
         isMax=a.isMaximized()
         w=a.widget()
         #w.connect(w, SIGNAL('destroyed (QObject *)'), self.destroyed)
         #w.setParent(None)
         #print "parent of w just before elimination", w.parent()
         sip.delete(w)#; del w
         del w
         a.setWidget(pw)
         #a.close()
     else:
         self.view.addMdiSubWindow(pw, title, isMax)
         self.view.mdiArea.tileSubWindows()
Пример #31
0
    def password_Error_hint2(self,show=' '):
        try:
            sip.delete(self.password_hint2)
        except AttributeError:
            pass
        pe_red = QPalette()
        pe_red.setColor(QPalette.WindowText,Qt.red)

        self.password_hint2 = QLabel(show,self.centralwidget3)
        self.password_hint2.setPalette(pe_red)
        self.gridLayout3.addWidget(self.password_hint2, 0, 0, 1, 1)
        QApplication.processEvents()
Пример #32
0
    def stop(self):

        self._app.exit()
        #TODO:This is very ugry to hard-code terminate time.But I can't find another better way.
        # gevent.sleep(1)
        self._stop = True
        self._greenlet.join(timeout=10)
        self._greenlet = None
        try:
            sip.delete(self._app)
        except RuntimeError:
            pass
Пример #33
0
 def onDBDisconnected(self):
     self.setWidget(None)
     if self.content:
         #self.updateContentPreferences()
         self.content.setParent(None)
         sip.delete(self.content)
     self.content = QtGui.QLabel(u'необходимо\nподключение\nк базе данных',
                                 self)
     self.content.setAlignment(QtCore.Qt.AlignHCenter
                               | QtCore.Qt.AlignVCenter)
     self.content.setDisabled(True)
     self.setWidget(self.content)
Пример #34
0
    def finaButtonClicked(self):
        self.publicButton.setStyleSheet("QPushButton{background: DimGray;}")
        self.produceButton.setStyleSheet("QPushButton{background: DimGray;}")
        self.applicationButton.setStyleSheet(
            "QPushButton{background: DimGray;}")
        self.finaButton.setStyleSheet("QPushButton{background:  ;}")
        self.motorButton.setStyleSheet("QPushButton{background: DimGray;}")

        self.layout.removeWidget(self.storageView)
        sip.delete(self.storageView)
        self.storageView = MaterialManagement()
        self.layout.addWidget(self.storageView)
Пример #35
0
 def view_click(self):
     if self.check_reverse.isChecked() == False:
         n = 0
     else:
         n = 1
     self.vbl.removeWidget(self.ui)
     sip.delete(self.ui)
     self.ui = None
     self.visualization = Visualization(self.x, self.y, self.z, self.vxyz, self.colormap.currentText(),
                                        self.vmin.text(), self.vmax.text(), n)
     self.ui = self.visualization.edit_traits().control
     self.vbl.addWidget(self.ui)
Пример #36
0
    def produceButtonClicked(self):
        self.publicButton.setStyleSheet("QPushButton{background: DimGray;}")
        self.produceButton.setStyleSheet("QPushButton{background:  ;}")
        self.applicationButton.setStyleSheet(
            "QPushButton{background: DimGray;}")
        self.finaButton.setStyleSheet("QPushButton{background:DimGray ;}")
        self.motorButton.setStyleSheet("QPushButton{background:DimGray ;}")

        self.layout.removeWidget(self.storageView)
        sip.delete(self.storageView)
        self.storageView = StatisticalAnalysis()
        self.layout.addWidget(self.storageView)
Пример #37
0
 def updatebar(self, admin):
     self.bar.clear()
     sip.delete(self.Menu)
     self.Menu = QMenu(admin, self)
     self.bar.addMenu(self.Menu)
     self.Menu.addAction(self.signUpAction)
     self.Menu.addAction(self.changePasswordAction)
     self.Menu.addAction(self.signInAction)
     self.Menu.addAction(self.quitSignInAction)
     self.Menu.addAction(self.quitAction)
     self.Menu.triggered[QAction].connect(self.menuTriggered)
     return
Пример #38
0
def getMetadataValue(fname, key):
    layerMetadata = QgsVectorLayer(fname + "|layername=" + METADATA_TABLE)
    features = list(layerMetadata.getFeatures(QgsFeatureRequest(
        QgsExpression('"key"=\'{}\''.format(key)))))
    if len(features) == 1:
        r = features[0]["value"]
    else:
        r = None

    sip.delete(layerMetadata)
    del layerMetadata
    return r
Пример #39
0
def cleanup():
    """ 
    delete every child which is not marked as keep
    """
    for child in Scripter.collector.children():
        if hasattr(child, "qt"): child = child.qt
        v = child.property("keep")
        if v and v.toBool() == True:
            #print "Keeping", child
            continue
        print "* deleting collected", child
        sip.delete(child)
Пример #40
0
    def terminate(self):
        """Uninstall the plugin
        """
        core.actionManager().removeAction('mPlugins/aSetSphinxPath')

        if self._dockInstalled:
            self._removeDock()

        if self._dock is not None:
            self._dock.terminate()

        sip.delete(self)
Пример #41
0
 def close_calc(self):
     if self.calculation or self.geometry:
         sip.delete(self.graphics)
         sip.delete(self.tree)
         sip.delete(self.geometry)
         sip.delete(self.calculation)
         sip.delete(self.grid_central)
         self.action_geometry.setChecked(False)
         self.action_calculation.setChecked(False)
         self.visible_geom = None
         self.visible_calc = None
         self.change_statusbar()
    def menuTriggered(self, q):
        if (q.text() == "修改密码"):
            changePsdDialog = changePasswordDialog(self)
            changePsdDialog.show()
            changePsdDialog.exec_()
        if (q.text() == "注册"):
            sip.delete(self.widget)
            self.widget = SignUpWidget()
            self.setCentralWidget(self.widget)
            self.widget.student_signup_signal[str].connect(self.adminSignIn)
            self.signUpAction.setEnabled(False)
            self.changePasswordAction.setEnabled(True)
            self.signInAction.setEnabled(True)
            self.logoutAdminAction.setEnabled(False)

        if (q.text() == "添加用户"):
            # sip.delete(self.widget)
            # self.widget = SignUpUserWidget()
            # self.setCentralWidget(self.widget)
            # self.widget.student_signupuser_signal[str].connect(self.adminSignIn)
            # self.signUpUserAction.setEnabled(False)
            SingUpUserDialog = SignUpUserWidget(self)
            SingUpUserDialog.show()
            SingUpUserDialog.exec_()

        if (q.text() == "注销管理员"):
            # sip.delete(self.widget)
            # self.widget = logoutAdminWidget()
            # self.setCentralWidget(self.widget)
            # self.widget.student_logoutAdmin_signal[str].connect(self.adminSignIn)
            # self.signUpAction.setEnabled(True)
            # self.changePasswordAction.setEnabled(True)
            # self.signInAction.setEnabled(False)
            # self.logoutAdminAction.setEnabled(False)
            # qApp = QApplication.instance()
            # qApp.quit()
            logoutAdminDialog = logoutAdminWidget(self)
            logoutAdminDialog.show()
            logoutAdminDialog.exec_()
        if (q.text() == "登录"):
            sip.delete(self.widget)
            self.widget = SignInWidget()
            self.setCentralWidget(self.widget)
            self.widget.is_admin_signal.connect(self.adminSignIn)
            # self.widget.is_student_signal[str].connect(self.studentSignIn)
            self.signUpAction.setEnabled(True)
            self.changePasswordAction.setEnabled(True)
            self.signInAction.setEnabled(False)
            self.logoutAdminAction.setEnabled(False)
        if (q.text() == "退出"):
            qApp = QApplication.instance()
            qApp.quit()
        return
Пример #43
0
 def test_open_message_type_dialog(self):
     assert isinstance(self.cfc, CompareFrameController)
     self.cfc.ui.btnMessagetypeSettings.click()
     dialog = next((w for w in qApp.topLevelWidgets()
                    if isinstance(w, MessageTypeDialog)), None)
     self.assertIsNotNone(dialog)
     self.assertEqual(dialog.windowTitle(),
                      self.cfc.active_message_type.name)
     dialog.close()
     sip.delete(dialog)
     QTest.qSleep(1)
     QTest.qWait(10)
Пример #44
0
    def engine_server_setup(self, server_ip_host=None):
        server_ip, server_name = server_ip_host or (None, None)
        old_ip = None
        old_hostname = None
        if hasattr(self, 'server_ip'):
            old_ip = self.server_ip
            old_hostname = self.server_hostname

        self.server_ip = str(server_ip)
        self.server_hostname = str(server_name)
        ctx = None
        if server_ip is None:
            self.server_ip = '127.0.0.1'
            self.server_hostname = socket.gethostname()

        if hasattr(self, 'engine'):
            client = self.engine.client
            ctx = client.ctx
        else:
            self.engine = None

        if old_ip != self.server_ip and old_hostname != self.server_hostname:

            if self.engine is not None:
                self.engine.cleanup()
                self._disconnect_signals()

                # self.engine.deleteLater()
                sip.delete(self.engine)
                del self.engine
                self.engine = None

            client = obci_script_utils.client_server_prep(
                server_ip=self.server_ip, zmq_ctx=ctx, start_srv=True)
            if client is None:
                self.quit()
            self.exp_states = {}
            self.engine = OBCILauncherEngine(client, self.server_ip,
                                             self.presets)
            self._connect_signals()

        if self.server_ip and self.server_hostname != socket.gethostname():
            self.setWindowTitle(self.basic_title + ' - ' +
                                'remote connection ' + ' (' + self.server_ip +
                                ' - ' + self.server_hostname + ')')
        else:
            self.setWindowTitle(self.basic_title + ' - ' +
                                'local connection (' + self.server_hostname +
                                ')')

        if old_ip is not None:
            self.engine.update_ui.emit(None)
Пример #45
0
    def __init__(self, param):
        super(NumberInputPanel, self).__init__(None)
        self.setupUi(self)

        self.spnValue.setExpressionsEnabled(True)

        self.param = param
        if self.param.dataType() == QgsProcessingParameterNumber.Integer:
            self.spnValue.setDecimals(0)
        else:
            # Guess reasonable step value
            if self.param.maximum() is not None and self.param.minimum(
            ) is not None:
                try:
                    self.spnValue.setSingleStep(
                        self.calculateStep(float(self.param.minimum()),
                                           float(self.param.maximum())))
                except:
                    pass

        if self.param.maximum() is not None:
            self.spnValue.setMaximum(self.param.maximum())
        else:
            self.spnValue.setMaximum(999999999)
        if self.param.minimum() is not None:
            self.spnValue.setMinimum(self.param.minimum())
        else:
            self.spnValue.setMinimum(-999999999)

        # set default value
        if param.defaultValue() is not None:
            self.setValue(param.defaultValue())
            try:
                self.spnValue.setClearValue(float(param.defaultValue()))
            except:
                pass
        elif self.param.minimum() is not None:
            try:
                self.setValue(float(self.param.minimum()))
                self.spnValue.setClearValue(float(self.param.minimum()))
            except:
                pass
        else:
            self.setValue(0)
            self.spnValue.setClearValue(0)

        # we don't show the expression button outside of modeler
        self.layout().removeWidget(self.btnSelect)
        sip.delete(self.btnSelect)
        self.btnSelect = None

        self.spnValue.valueChanged.connect(lambda: self.hasChanged.emit())
Пример #46
0
    def updateUI(self):
        self.getResult()
        self.layout.removeWidget(self.widget)
        self.layout.removeWidget(self.tableWidget)
        sip.delete(self.widget)
        sip.delete(self.tableWidget)

        # 表格设置
        self.tableWidget = QTableWidget()
        self.tableWidget.setRowCount(self.userCount)
        self.tableWidget.setColumnCount(5)
        self.tableWidget.setHorizontalHeaderLabels(['账号', '姓名', '性别', '科室','借阅书籍本数'])

        # 不可编辑
        self.tableWidget.setEditTriggers(QAbstractItemView.NoEditTriggers)
        # 标题可拉伸
        self.tableWidget.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
        # 整行选中
        self.tableWidget.setSelectionBehavior(QAbstractItemView.SelectRows)

        self.layout.addWidget(self.tableWidget)
        self.setRows()

        self.addUserButton = QPushButton("添 加 用 户")
        # self.reviseUserButton = QPushButton("修 改 用 户")
        self.deleteUserButton = QPushButton("删 除 用 户")

        hlayout = QHBoxLayout()
        hlayout.addWidget(self.addUserButton, Qt.AlignHCenter)
        # hlayout.addWidget(self.reviseUserButton, Qt.AlignHCenter)
        hlayout.addWidget(self.deleteUserButton, Qt.AlignHCenter)
        self.widget = QWidget()
        self.widget.setLayout(hlayout)
        self.widget.setFixedHeight(48)

        font = QFont()
        font.setPixelSize(15)
        self.addUserButton.setFixedHeight(36)
        self.addUserButton.setFixedWidth(180)
        self.addUserButton.setFont(font)
        # self.reviseUserButton.setFixedHeight(36)
        # self.reviseUserButton.setFixedWidth(180)
        # self.reviseUserButton.setFont(font)
        self.deleteUserButton.setFixedHeight(36)
        self.deleteUserButton.setFixedWidth(180)
        self.deleteUserButton.setFont(font)
        self.layout.addWidget(self.widget, Qt.AlignCenter)

        # 设置信号
        self.addUserButton.clicked.connect(self.addUser)
        self.deleteUserButton.clicked.connect(self.deleteUser)  # 删除用户信号
        self.tableWidget.itemClicked.connect(self.getStudentInfo)
Пример #47
0
 def setColorList(self, colorList):
     self._colorList = list(colorList)
     for i in xrange(len(colorList), len(self._rects)):
         r = self._rects.pop(-1)
         sip.delete(r)
     
     for i in xrange(len(self._rects), len(colorList)):
         r = Rect(self.parent())
         r.selected.connect(lambda f,i=i:self.selected.emit((f, i)))
         self._rects.append(r)
     
     for i, c in enumerate(colorList):
         self._rects[i].setColor(c)
Пример #48
0
 def remove_instr(self, dname):
     if dname in self.feat_items:
         self.feat_items.pop(dname)
     root = self.tree.invisibleRootItem()
     for i in range(root.childCount()):
         c = root.child(i)
         if c.text(0) == dname:
             print('Removing device {}'.format(dname))
             root.removeChild(c)
             sip.delete(c)
             c = None
             break
     return
Пример #49
0
    def Clear(self):
        for Ico in self.__IcoList[:12]:  # 前12个设为透明的
            Ico.SetVisible(False)

        for Ico in self.__IcoList[12:]:  # 多于12个图标的删除
            self.gridLayout_ICO.removeWidget(Ico.GetButton())
            sip.delete(Ico.GetButton())
            self.gridLayout_ICO.removeWidget(Ico.GetLabel())
            sip.delete(Ico.GetLabel())

        del (self.__IcoList[12:])  # 列表也要截断
        self.__VisibleIcoNum = 0
        self.__IcoNum = 12
Пример #50
0
    def _set_main_widget(self, widget):

        if self.mainWidget is not None:

            self.mainLayout.removeWidget(self.mainWidget)
            self.mainWidget.deleteLater()
            sip.delete(self.mainWidget)
            self.mainWidget = None

        self.mainWidget = widget
        self.mainLayout.addWidget(self.mainWidget)

        return
    def deleteLayout(self, cur_lay):
        ''' Funcion que borra los layouts anteriores
        obtenida de https://gist.github.com/GriMel/181db149cc150d903f1a'''

        if cur_lay is not None:
            while cur_lay.count():
                item = cur_lay.takeAt(0)
                widget = item.widget()
                if widget is not None:
                    widget.deleteLater()
                else:
                    self.deleteLayout(item.layout())
            sip.delete(cur_lay)
Пример #52
0
 def __del__(self):
     """
     If this object is deleted it should also delete the wrapped object
     if it was created explicitly for this use.
     """
     qobj = self._instance
     if is_scripter_child(qobj):
         if len(qobj.children()):
             print "Cannot delete", qobj, "because it has child objects"
         #else:
         #    print "* deleting", qobj
         # XXX: or better setdeleted ?
         sip.delete(qobj)
Пример #53
0
 def load_stock_detail(self):
     '''
     load new stock detail graph every time
     '''
     #if stock detail graph not exist then create one, else remove old one first.
     if self.stock_detail_now is None:
         self.stock_detail_now = StockDetailWindowImproved()
         self.grid_layout.addWidget(self.stock_detail_now)
     else:
         self.grid_layout.removeWidget(self.stock_detail_now)
         sip.delete(self.stock_detail_now)
         self.stock_detail_now = StockDetailWindowImproved()
         self.grid_layout.addWidget(self.stock_detail_now)
Пример #54
0
 def updategraphs(self, fig):
     print("made it to update graphs")
     sip.delete(self.canvas)
     sip.delete(self.canvas1)
     sip.delete(self.canvas2)
     sip.delete(self.canvas3)
     sip.delete(self.canvas4)
     #self.spectrumUI.removeWidget(self.canvas)
     self.canvas = FigureCanvas(fig[0])
     self.canvas1 = FigureCanvas(fig[1])
     self.canvas2 = FigureCanvas(fig[2])
     self.canvas3 = FigureCanvas(fig[3])
     self.canvas4 = FigureCanvas(fig[4])
    def _tab_close(self, ix):
        if self.count() == 2:
            return
        self.blockSignals(True)

        self.removeTab(ix)
        sip.delete(self.views[ix])
        del self.views[ix]
        self.blockSignals(False)
        if self.count() == 2:
            self.setCurrentIndex(0)
        elif self.currentIndex() == self.count()- 1:
            self.setCurrentIndex(self.count() -2)
Пример #56
0
    def exit(self, code=0):
        self.m_terminated = True
        self.m_returnValue = code

        # stop javascript execution in start script;
        # delete all the pages C++ objects, then clear
        # the page list, and empty the Phantom page
        for page in self.m_pages:
            sip.delete(page)
        del self.m_pages[:]
        self.m_page = None

        QApplication.instance().exit(code)
Пример #57
0
def deleteUI(Name):
    """

    :param Name:  QObject name
    :return:
    """
    qObject = UIExists(Name, AsBool=False)
    if not qObject:
        return
    if USE_PYQT_MODULE:
        sip.delete(qObject)
    else:
        cmds.deleteUI(Name)
Пример #58
0
 def clearData(self):
     """Clears the whole view and sets it to the initial state."""
     self.psf = ""
     self.dcd = ""
     self.allSasas = []
     self.totalFramesToProcess = 0
     self.sasaProgressBar.setProperty("value", 0)
     sip.delete(self.previewPlot)
     self.previewPlot = SimplePlotter(None, width=4, height=2, dpi=70)
     self.graphGridLayout.addWidget(self.previewPlot)
     self.sasaSelection1TextField.setText("")
     self.sasaSelection2TextField.setText("")
     self.sasaRestrictionTextField.setText("")
Пример #59
0
 def bookCateCountButtonClicked(self):
     self.layout.removeWidget(self.storageView)
     sip.delete(self.storageView)
     self.layout.removeWidget(self.borrowStatusView)
     sip.delete(self.borrowStatusView)
     self.borrowStatusView = BorrowStatusViewer(self.StudentId)
     self.storageView = BookStorageViewer()
     self.bookCateCountView = bookCateCountViewer()
     self.layout.addWidget(self.bookCateCountView)
     self.bookCateCountButton.setEnabled(False)
     self.myBookStatus.setEnabled(True)
     self.allBookButton.setEnabled(True)
     return
Пример #60
0
 def Header(self):
     if self.checkBox_header.isChecked():
         self.Layout_param.addWidget(self.header_edit)
         try:
             self.header_edit.setPlainText(
                 self.list['headers'][self.comboBox_way.currentIndex()])
         except Exception as e:
             logging.exception(e)
     if not self.checkBox_header.isChecked():
         self.Layout_param.removeWidget(self.header_edit)
         sip.delete(self.header_edit)
         self.header_edit = QtWidgets.QTextEdit()
         self.header_edit.setPlaceholderText('输入Header')