Cleanup python script running
This commit is contained in:
parent
87db38b08e
commit
1eac3f6a83
7 changed files with 68 additions and 128 deletions
|
|
@ -14,9 +14,9 @@ MainWindow::MainWindow(QWidget *parent):
|
|||
ui(new Ui::MainWindow),
|
||||
codeEditor(this),
|
||||
pythonOutput(this),
|
||||
pythonRunner(&pythonOutput),
|
||||
currentFilePath(""),
|
||||
isFileModified(false),
|
||||
pythonRunner(nullptr)
|
||||
isFileModified(false)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
enumerateDevices();
|
||||
|
|
@ -52,9 +52,9 @@ MainWindow::MainWindow(QWidget *parent):
|
|||
});
|
||||
|
||||
// Connect Run and Stop buttons
|
||||
pythonRunner = new PythonRunner(&pythonOutput, this);
|
||||
connect(ui->pushButtonRun, &QPushButton::clicked, this, &MainWindow::onPushButtonRunClicked);
|
||||
connect(ui->pushButtonStop, &QPushButton::clicked, this, &MainWindow::onPushButtonStopClicked);
|
||||
connect(ui->pushButtonRun, &QPushButton::clicked, this, &MainWindow::runScript);
|
||||
connect(ui->pushButtonStop, &QPushButton::clicked, this, &MainWindow::stopScript);
|
||||
connect(&pythonRunner, &PythonRunner::scriptFinished, this, &MainWindow::stopScript);
|
||||
}
|
||||
|
||||
MainWindow::~MainWindow()
|
||||
|
|
@ -232,17 +232,21 @@ void MainWindow::enumerateDevices()
|
|||
generateExample();
|
||||
}
|
||||
|
||||
void MainWindow::onPushButtonRunClicked() {
|
||||
void MainWindow::runScript() {
|
||||
QString scriptContent = codeEditor.toPlainText();
|
||||
pythonRunner->runScript(scriptContent);
|
||||
pythonRunner.runScript(scriptContent);
|
||||
ui->pushButtonRun->setEnabled(false);
|
||||
ui->pushButtonStop->setEnabled(true);
|
||||
codeEditor.setEnabled(false);
|
||||
ui->scrollArea->setEnabled(false);
|
||||
}
|
||||
|
||||
void MainWindow::onPushButtonStopClicked() {
|
||||
pythonRunner->stopScript();
|
||||
void MainWindow::stopScript() {
|
||||
pythonRunner.stopScript();
|
||||
ui->pushButtonRun->setEnabled(true);
|
||||
ui->pushButtonStop->setEnabled(false);
|
||||
codeEditor.setEnabled(true);
|
||||
ui->scrollArea->setEnabled(true);
|
||||
}
|
||||
|
||||
void MainWindow::generateExample()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue