Beispiel #1
0
    def __init__(self, externalLaunchList, parent=None):
        super(ExternalLauncher, self).__init__(parent)

        self.externalLaunchList = externalLaunchList

        self.setMinimumSize(600, 230)

        self.setBackgroundRole(QtGui.QPalette.Background)
        self.setAutoFillBackground(True)

        mainLayout = QtGui.QVBoxLayout()

        label = QtGui.QLabel("Manage Launchers")
        label.setStyleSheet("font: 14px; color: grey;")
        mainLayout.addWidget(label)

        self.listWidget = QtGui.QListWidget()
        mainLayout.addWidget(self.listWidget)

        formLayout = QtGui.QFormLayout()
        mainLayout.addLayout(formLayout)

        self.pathLine = PathLineEdit()
        formLayout.addRow("Path:", self.pathLine)

        self.parametersLine = QtGui.QLineEdit()
        formLayout.addRow("Parameters:", self.parametersLine)

        hbox = QtGui.QHBoxLayout()

        self.removeButton = QtGui.QPushButton("Remove")
        self.removeButton.clicked.connect(self.removeLauncher)
        hbox.addWidget(self.removeButton)

        self.addButton = QtGui.QPushButton("Add")
        self.addButton.clicked.connect(self.addLauncher)
        hbox.addWidget(self.addButton)

        hbox.addStretch(1)

        self.closeButton = QtGui.QPushButton("Close")
        self.closeButton.clicked.connect(self.hide)
        hbox.addWidget(self.closeButton)

        mainLayout.addLayout(hbox)

        self.setLayout(mainLayout)

        self.manageLauncherAct = \
            QtGui.QAction(QtGui.QIcon(os.path.join("Resources", "images", "settings")),
                          "Manage Launchers", self, statusTip="Manage Launchers",
                          triggered=self.showMe.emit)

        self.launcherMenu = QtGui.QMenu("Launch External...")
        self.loadExternalLaunchers()
Beispiel #2
0
    def __init__(self, projectSettings, projectPathDict, useData, parent=None):
        QtGui.QLabel.__init__(self, parent)

        self.setMinimumSize(400, 220)

        self.setBackgroundRole(QtGui.QPalette.Background)
        self.setAutoFillBackground(True)
        self.setObjectName("containerLabel")
        self.setStyleSheet(StyleSheet.toolWidgetStyle)

        self.projectSettings = projectSettings
        self.useData = useData
        self.projectPathDict = projectPathDict

        mainLayout = QtGui.QVBoxLayout()

        hbox = QtGui.QHBoxLayout()
        mainLayout.addLayout(hbox)

        label = QtGui.QLabel("Run Parameters")
        label.setObjectName("toolWidgetNameLabel")
        hbox.addWidget(label)

        hbox.addStretch(1)

        self.hideButton = QtGui.QToolButton()
        self.hideButton.setAutoRaise(True)
        self.hideButton.setIcon(
            QtGui.QIcon(os.path.join("Resources", "images", "cross_")))
        self.hideButton.clicked.connect(self.hide)
        hbox.addWidget(self.hideButton)

        hbox = QtGui.QHBoxLayout()
        mainLayout.addLayout(hbox)

        self.runTypeBox = QtGui.QComboBox()
        self.runTypeBox.addItem("Run")
        self.runTypeBox.addItem("Profiler")
        self.runTypeBox.addItem("Trace")
        if self.projectSettings["RunType"] == 'Profiler':
            self.runTypeBox.setCurrentIndex(1)
        elif self.projectSettings["RunType"] == 'Trace':
            self.runTypeBox.setCurrentIndex(2)
        self.runTypeBox.currentIndexChanged.connect(self.saveArguments)
        self.runTypeBox.currentIndexChanged.connect(self.runTypeChanged)
        hbox.addWidget(self.runTypeBox)

        self.traceTypeBox = QtGui.QComboBox()
        self.traceTypeBox.addItem("Calling relationships")
        self.traceTypeBox.addItem("Functions called")
        self.traceTypeBox.addItem("Times lines are called")
        self.traceTypeBox.addItem("View currently running line of code")
        self.traceTypeBox.setCurrentIndex(
            int(self.projectSettings["TraceType"]))
        self.traceTypeBox.currentIndexChanged.connect(self.saveArguments)
        hbox.addWidget(self.traceTypeBox)

        if self.runTypeBox.currentIndex() != 2:
            self.traceTypeBox.hide()

        self.runWithArgsBox = QtGui.QCheckBox("Arguments:")
        if self.projectSettings["RunWithArguments"] == 'True':
            self.runWithArgsBox.setChecked(True)
        self.runWithArgsBox.toggled.connect(self.saveArguments)
        mainLayout.addWidget(self.runWithArgsBox)

        self.argumentsLine = PathLineEdit()
        self.argumentsLine.setText(self.projectSettings["RunArguments"])
        self.argumentsLine.textChanged.connect(self.saveArguments)
        mainLayout.addWidget(self.argumentsLine)

        hbox = QtGui.QHBoxLayout()

        self.clearOutputBox = QtGui.QCheckBox("Clear output window")
        if self.projectSettings["ClearOutputWindowOnRun"] == 'True':
            self.clearOutputBox.setChecked(True)
        self.clearOutputBox.toggled.connect(self.saveArguments)
        hbox.addWidget(self.clearOutputBox)

        hbox.addStretch(1)

        hbox.addWidget(QtGui.QLabel("Max Output Size <lines>"))

        self.bufferSizeBox = QtGui.QSpinBox()
        self.bufferSizeBox.setMaximum(999)
        self.bufferSizeBox.setMinimumWidth(100)
        self.bufferSizeBox.setValue(int(self.projectSettings['BufferSize']))
        self.bufferSizeBox.valueChanged.connect(self.saveArguments)
        hbox.addWidget(self.bufferSizeBox)

        mainLayout.addLayout(hbox)

        self.runPointBox = QtGui.QComboBox()
        self.runPointBox.addItem("Internal Console")
        self.runPointBox.addItem("External Console")
        if self.projectSettings["RunInternal"] == 'False':
            self.runPointBox.setCurrentIndex(1)
        self.runPointBox.currentIndexChanged.connect(self.saveArguments)
        mainLayout.addWidget(self.runPointBox)

        self.useVirtualEnvBox = QtGui.QCheckBox("Use Virtual Environment")
        if self.projectSettings["UseVirtualEnv"] == 'True':
            self.useVirtualEnvBox.setChecked(True)
        self.useVirtualEnvBox.toggled.connect(self.setDefaultInterpreter)
        mainLayout.addWidget(self.useVirtualEnvBox)

        hbox = QtGui.QHBoxLayout()
        mainLayout.addLayout(hbox)

        self.installedPythonVersionBox = QtGui.QComboBox()
        self.installedPythonVersionBox.setMinimumWidth(200)
        self.updateInstalledInterpreters()
        self.installedPythonVersionBox.currentIndexChanged.connect(
            self.setDefaultInterpreter)
        hbox.addWidget(self.installedPythonVersionBox)

        hbox.addStretch(1)

        label = QtGui.QLabel("Installed Python")
        hbox.addWidget(label)

        self.setLayout(mainLayout)

        self.setDefaultInterpreter()
Beispiel #3
0
    def __init__(self, projectData, useData, parent=None):
        QtGui.QLabel.__init__(self, parent)

        self.setMinimumSize(400, 280)

        self.setBackgroundRole(QtGui.QPalette.Background)
        self.setAutoFillBackground(True)

        self.projectData = projectData
        self.useData = useData

        mainLayout = QtGui.QVBoxLayout()

        label = QtGui.QLabel("Run Parameters")
        label.setStyleSheet("font: 14px; color: grey;")
        mainLayout.addWidget(label)

        hbox = QtGui.QHBoxLayout()
        mainLayout.addLayout(hbox)

        self.runTypeBox = QtGui.QComboBox()
        self.runTypeBox.addItem("Run")
        self.runTypeBox.addItem("Profiler")
        self.runTypeBox.addItem("Trace")
        if self.projectData["RunType"] == 'Profiler':
            self.runTypeBox.setCurrentIndex(1)
        elif self.projectData["RunType"] == 'Trace':
            self.runTypeBox.setCurrentIndex(2)
        self.runTypeBox.currentIndexChanged.connect(self.saveArguments)
        self.runTypeBox.currentIndexChanged.connect(self.runTypeChanged)
        hbox.addWidget(self.runTypeBox)

        self.traceTypeBox = QtGui.QComboBox()
        self.traceTypeBox.addItem("Calling relationships")
        self.traceTypeBox.addItem("Functions called")
        self.traceTypeBox.addItem("Times lines are called")
        self.traceTypeBox.addItem("View currently running line of code")
        self.traceTypeBox.setCurrentIndex(int(self.projectData["TraceType"]))
        self.traceTypeBox.currentIndexChanged.connect(self.saveArguments)
        hbox.addWidget(self.traceTypeBox)

        if self.runTypeBox.currentIndex() != 2:
            self.traceTypeBox.hide()

        frame = QtGui.QFrame()
        frame.setFrameShape(QtGui.QFrame.HLine)
        frame.setFrameShadow(QtGui.QFrame.Sunken)
        mainLayout.addWidget(frame)

        self.runWithArgsBox = QtGui.QCheckBox("Arguments:")
        if self.projectData["RunWithArguments"] == 'True':
            self.runWithArgsBox.setChecked(True)
        self.runWithArgsBox.toggled.connect(self.saveArguments)
        mainLayout.addWidget(self.runWithArgsBox)

        self.argumentsLine = PathLineEdit()
        self.argumentsLine.setText(self.projectData["RunArguments"])
        self.argumentsLine.textChanged.connect(self.saveArguments)
        mainLayout.addWidget(self.argumentsLine)

        hbox = QtGui.QHBoxLayout()

        self.clearOutputBox = QtGui.QCheckBox("Clear output window")
        if self.projectData["ClearOutputWindowOnRun"] == 'True':
            self.clearOutputBox.setChecked(True)
        self.clearOutputBox.toggled.connect(self.saveArguments)
        hbox.addWidget(self.clearOutputBox)

        hbox.addStretch(1)

        hbox.addWidget(QtGui.QLabel("Max Output Size <lines>"))

        self.bufferSizeBox = QtGui.QSpinBox()
        self.bufferSizeBox.setMaximum(999)
        self.bufferSizeBox.setMinimumWidth(100)
        self.bufferSizeBox.setValue(int(self.projectData['BufferSize']))
        self.bufferSizeBox.valueChanged.connect(self.saveArguments)
        hbox.addWidget(self.bufferSizeBox)

        mainLayout.addLayout(hbox)

        self.runPointBox = QtGui.QComboBox()
        self.runPointBox.addItem("Internal Console")
        self.runPointBox.addItem("External Console")
        if self.projectData["RunInternal"] == 'False':
            self.runPointBox.setCurrentIndex(1)
        self.runPointBox.currentIndexChanged.connect(self.saveArguments)
        mainLayout.addWidget(self.runPointBox)

        self.useVirtualEnvBox = QtGui.QCheckBox("Use Virtual Environment:")
        if self.projectData["UseVirtualEnv"] == 'True':
            self.useVirtualEnvBox.setChecked(True)
        self.useVirtualEnvBox.toggled.connect(self.setDefaultInterpreter)
        mainLayout.addWidget(self.useVirtualEnvBox)

        hbox = QtGui.QHBoxLayout()
        mainLayout.addLayout(hbox)

        self.venvBox = QtGui.QComboBox()
        self.venvBox.setMinimumWidth(200)
        hbox.addWidget(self.venvBox)

        self.venvVersionLabel = QtGui.QLabel()
        hbox.addWidget(self.venvVersionLabel)

        hbox.addStretch(1)

        label = QtGui.QLabel("Virtual Environment")
        hbox.addWidget(label)

        self.updateVirtualInterpreters()
        self.venvBox.currentIndexChanged.connect(self.setDefaultInterpreter)

        hbox = QtGui.QHBoxLayout()
        mainLayout.addLayout(hbox)

        self.installedPythonVersionBox = QtGui.QComboBox()
        self.installedPythonVersionBox.setMinimumWidth(200)
        self.updateInstalledInterpreters()
        self.installedPythonVersionBox.currentIndexChanged.connect(
            self.setDefaultInterpreter)
        hbox.addWidget(self.installedPythonVersionBox)

        hbox.addStretch(1)

        label = QtGui.QLabel("Installed Python")
        hbox.addWidget(label)

        hbox = QtGui.QHBoxLayout()
        mainLayout.addLayout(hbox)

        hbox.addStretch(1)

        self.okButton = QtGui.QPushButton("Close")
        self.okButton.clicked.connect(self.hide)
        hbox.addWidget(self.okButton)

        self.setLayout(mainLayout)

        self.setDefaultInterpreter()