zip file was corrupted, sorry
3 Files:
Main.cpp:
#include <QApplication>
#include "Window.h"
int main(int argc, char *argv[]) {
Window W;
W.show();
return A.exec();
}
#include <QApplication>
#include "Window.h"
int main(int argc, char *argv[]) {
QApplication A(argc, argv);
Window W;
W.show();
return A.exec();
}
To copy to clipboard, switch view to plain text mode
Window.h:
#include <QWidget>
class QScriptEngine;
class QScriptEngineDebugger;
Q_OBJECT
public:
Window();
private slots:
void runScript();
private:
QScriptEngine *mEngine;
QScriptEngineDebugger *mDebugger;
};
#include <QWidget>
class QTextEdit;
class QScriptEngine;
class QScriptEngineDebugger;
class Window: public QWidget {
Q_OBJECT
public:
Window();
private slots:
void runScript();
private:
QTextEdit *mTE;
QScriptEngine *mEngine;
QScriptEngineDebugger *mDebugger;
};
To copy to clipboard, switch view to plain text mode
Window.cpp:
#include <QAction>
#include <QHBoxLayout>
#include <QVBoxLayout>
#include <QTextEdit>
#include <QPushButton>
#include <QScriptEngine>
#include <QScriptEngineDebugger>
#include "Window.h"
Window::Window() {
HBL->addLayout(VBL);
mTE->setText("Sum = 0\nfor (i=1; i<=10; i++)\n Sum += i\n Sum");
VBL->addWidget(mTE);
VBL->addWidget(PB);
connect(PB, SIGNAL(clicked()), this, SLOT(runScript()));
mEngine = new QScriptEngine;
mDebugger = new QScriptEngineDebugger;
mDebugger->attachTo(mEngine);
mDebugger->setAutoShowStandardWindow(false);
HBL->addWidget(mDebugger->widget(QScriptEngineDebugger::CodeWidget));
HBL->addWidget(mDebugger->widget(QScriptEngineDebugger::ConsoleWidget));
HBL->addWidget(mDebugger->widget(QScriptEngineDebugger::LocalsWidget));
}
void Window::runScript() {
mDebugger->action(QScriptEngineDebugger::InterruptAction)->trigger();
mEngine->evaluate(mTE->toPlainText());
}
#include <QAction>
#include <QHBoxLayout>
#include <QVBoxLayout>
#include <QTextEdit>
#include <QPushButton>
#include <QScriptEngine>
#include <QScriptEngineDebugger>
#include "Window.h"
Window::Window() {
QHBoxLayout *HBL = new QHBoxLayout(this);
QVBoxLayout *VBL = new QVBoxLayout;
HBL->addLayout(VBL);
mTE = new QTextEdit;
mTE->setText("Sum = 0\nfor (i=1; i<=10; i++)\n Sum += i\n Sum");
VBL->addWidget(mTE);
QPushButton *PB = new QPushButton("run");
VBL->addWidget(PB);
connect(PB, SIGNAL(clicked()), this, SLOT(runScript()));
mEngine = new QScriptEngine;
mDebugger = new QScriptEngineDebugger;
mDebugger->attachTo(mEngine);
mDebugger->setAutoShowStandardWindow(false);
HBL->addWidget(mDebugger->widget(QScriptEngineDebugger::CodeWidget));
HBL->addWidget(mDebugger->widget(QScriptEngineDebugger::ConsoleWidget));
HBL->addWidget(mDebugger->widget(QScriptEngineDebugger::LocalsWidget));
}
void Window::runScript() {
mDebugger->action(QScriptEngineDebugger::InterruptAction)->trigger();
mEngine->evaluate(mTE->toPlainText());
}
To copy to clipboard, switch view to plain text mode
Bookmarks