Ejemplo n.º 1
0
    def addLink(self,
                outWidget,
                inWidget,
                outSignalName,
                inSignalName,
                enabled=1,
                lineType=None):

        existingSignals = False
        if not existingSignals:

            line = orngCanvasItems.CanvasLine(self.canvasDlg, self.canvasView,
                                              outWidget, inWidget, self.canvas,
                                              lineType)
            self.lines.append(line)
            line.show()
            outWidget.addOutLine(line)
            outWidget.updateTooltip()
            inWidget.addInLine(line)
            inWidget.updateTooltip()
        else:
            line = self.getLine(outWidget, inWidget)

        orngHistory.logAddLink(self.schemaID, outWidget, inWidget,
                               outSignalName)

        line.updateTooltip()
        line.update()
        return 1
Ejemplo n.º 2
0
    def addLink(self,
                outWidget,
                inWidget,
                outSignalName,
                inSignalName,
                enabled=1,
                saveTempDoc=True):
        #print "<extra>orngDoc - addLink() - ", outWidget, inWidget, outSignalName, inSignalName
        # in case there already exists link to inSignalName in inWidget that is single, we first delete it
        widgetInstance = inWidget.instance.removeExistingSingleLink(
            inSignalName)
        if widgetInstance:
            widget = self.findWidgetFromInstance(widgetInstance)
            existingSignals = self.signalManager.findSignals(
                widgetInstance, inWidget.instance)
            for (outN, inN) in existingSignals:
                if inN == inSignalName:
                    self.removeLink(widget, inWidget, outN, inN)
                    line = self.getLine(widget, inWidget)
                    if line:
                        line.updateTooltip()

        # if line does not exist yet, we must create it
        existingSignals = self.signalManager.findSignals(
            outWidget.instance, inWidget.instance)
        if not existingSignals:
            line = orngCanvasItems.CanvasLine(self.signalManager,
                                              self.canvasDlg, self.canvasView,
                                              outWidget, inWidget, self.canvas)
            self.lines.append(line)
            line.show()
            outWidget.addOutLine(line)
            outWidget.updateTooltip()
            inWidget.addInLine(line)
            inWidget.updateTooltip()
        else:
            line = self.getLine(outWidget, inWidget)

        ok = self.signalManager.addLink(outWidget.instance, inWidget.instance,
                                        outSignalName, inSignalName, enabled)
        if not ok:
            self.removeLink(outWidget, inWidget, outSignalName, inSignalName)
            QMessageBox.warning(
                None, "Orange Canvas",
                "Unable to add link. Try restarting Orange Canvas.",
                QMessageBox.Ok + QMessageBox.Default, 0)
            return 0
        else:
            orngHistory.logAddLink(self.schemaID, outWidget, inWidget,
                                   outSignalName)

        line.updateTooltip()
        line.update()
        return 1
Ejemplo n.º 3
0
    def addLink(self, outWidget, inWidget, outSignalName, inSignalName, enabled=1, saveTempDoc=True):
        # print "<extra>orngDoc - addLink() - ", outWidget, inWidget, outSignalName, inSignalName
        # in case there already exists link to inSignalName in inWidget that is single, we first delete it
        widgetInstance = inWidget.instance.removeExistingSingleLink(inSignalName)
        if widgetInstance:
            widget = self.findWidgetFromInstance(widgetInstance)
            existingSignals = self.signalManager.findSignals(widgetInstance, inWidget.instance)
            for (outN, inN) in existingSignals:
                if inN == inSignalName:
                    self.removeLink(widget, inWidget, outN, inN)
                    line = self.getLine(widget, inWidget)
                    if line:
                        line.updateTooltip()

        # if line does not exist yet, we must create it
        existingSignals = self.signalManager.findSignals(outWidget.instance, inWidget.instance)
        if not existingSignals:
            line = orngCanvasItems.CanvasLine(
                self.signalManager, self.canvasDlg, self.canvasView, outWidget, inWidget, self.canvas
            )
            self.lines.append(line)
            line.show()
            outWidget.addOutLine(line)
            outWidget.updateTooltip()
            inWidget.addInLine(line)
            inWidget.updateTooltip()
        else:
            line = self.getLine(outWidget, inWidget)

        ok = self.signalManager.addLink(outWidget.instance, inWidget.instance, outSignalName, inSignalName, enabled)
        if not ok:
            self.removeLink(outWidget, inWidget, outSignalName, inSignalName)
            QMessageBox.warning(
                None,
                "Orange Canvas",
                "Unable to add link. Try restarting Orange Canvas.",
                QMessageBox.Ok + QMessageBox.Default,
                0,
            )
            return 0
        else:
            orngHistory.logAddLink(self.schemaID, outWidget, inWidget, outSignalName)

        line.updateTooltip()
        line.update()
        return 1
Ejemplo n.º 4
0
    def addLink(self, outWidget, inWidget, outSignalName, inSignalName, enabled=1, lineType=None):
 
        existingSignals = False
        if not existingSignals:
            
            line = orngCanvasItems.CanvasLine(self.canvasDlg, self.canvasView, outWidget, inWidget, self.canvas, lineType)
            self.lines.append(line)
            line.show()
            outWidget.addOutLine(line)
            outWidget.updateTooltip()
            inWidget.addInLine(line)
            inWidget.updateTooltip()
        else:
            line = self.getLine(outWidget, inWidget)

        orngHistory.logAddLink(self.schemaID, outWidget, inWidget, outSignalName)

        line.updateTooltip()
        line.update()
        return 1