diff options
author | Lauro Neto <lauro.neto@openbossa.org> | 2010-04-27 18:12:50 -0300 |
---|---|---|
committer | Renato Filho <renato.filho@openbossa.org> | 2010-04-28 16:36:47 -0300 |
commit | aaece960d3cf1c9d19dd84fe8171769517647724 (patch) | |
tree | ea2e20d2c8738cc407f60b10b6cccfb4e1fc2b70 /doc/codesnippets/doc/src/snippets/scriptdebugger.cpp | |
parent | 685246809debe672a0007b67fe78f7c77bad6739 (diff) |
Adding ./doc from boost
Reviewer: Lauro Moura <lauro.neto@openbossa.org>
Luciano Wolf <luciano.wolf@openbossa.org>
Diffstat (limited to 'doc/codesnippets/doc/src/snippets/scriptdebugger.cpp')
-rw-r--r-- | doc/codesnippets/doc/src/snippets/scriptdebugger.cpp | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/doc/codesnippets/doc/src/snippets/scriptdebugger.cpp b/doc/codesnippets/doc/src/snippets/scriptdebugger.cpp new file mode 100644 index 000000000..dcb81b532 --- /dev/null +++ b/doc/codesnippets/doc/src/snippets/scriptdebugger.cpp @@ -0,0 +1,64 @@ + +#include <QtGui> +#include <QtScript> +#include <QtScriptTools> + +// Perhaps shpw entire example for getting debugger up with script +int main(int argv, char **args) +{ + QApplication app(argv, args); + + QString fileName("helloscript.qs"); + QFile scriptFile(fileName); + scriptFile.open(QIODevice::ReadOnly); + QTextStream stream(&scriptFile); + QString contents = stream.readAll(); + scriptFile.close(); + + QScriptEngine *engine = new QScriptEngine(); + + QScriptEngineDebugger *debugger = new QScriptEngineDebugger(); + debugger->attachTo(engine); + + // Set up configuration with only stack and code + QWidget *widget = new QWidget; +//![0] + codeWindow = debugger.widget(QScriptEngineDebugger.CodeWidget) + stackWidget = debugger.widget(QScriptEngineDebugger.StackWidget) + + layout = QHBoxLayout() + layout.addWidget(codeWindow) + layout.addWidget(stackWidget) +//![0] + +//![1] + continueAction = debugger.action(QScriptEngineDebugger.ContinueAction) + stepOverAction = debugger.action(QScriptEngineDebugger.StepOverAction) + stepIntoAction = debugger.action(QScriptEngineDebugger.StepIntoAction) + + toolBar = QToolBar() + toolBar.addAction(continueAction) +//![1] + toolBar->addAction(stepOverAction); + toolBar->addAction(stepIntoAction); + + layout->addWidget(toolBar); + continueAction->setIcon(QIcon("copy.png")); + + debugger->setAutoShowStandardWindow(false); + + widget->setLayout(layout); + widget->show(); + + QPushButton button; + QScriptValue scriptButton = engine->newQObject(&button); + engine->globalObject().setProperty("button", scriptButton); + +//![2] + debugger.action(QScriptEngineDebugger.InterruptAction).trigger() + engine.evaluate(contents, fileName) +//![2] + + return app.exec(); +} + |