aboutsummaryrefslogtreecommitdiffstats
path: root/examples/scriptableapplication/mainwindow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/scriptableapplication/mainwindow.cpp')
-rw-r--r--examples/scriptableapplication/mainwindow.cpp60
1 files changed, 35 insertions, 25 deletions
diff --git a/examples/scriptableapplication/mainwindow.cpp b/examples/scriptableapplication/mainwindow.cpp
index 27e6f1247..ece7989e7 100644
--- a/examples/scriptableapplication/mainwindow.cpp
+++ b/examples/scriptableapplication/mainwindow.cpp
@@ -19,37 +19,44 @@
#include <QtCore/QDebug>
#include <QtCore/QTextStream>
-static const char defaultScript[] = R"(
-import AppLib
+using namespace Qt::StringLiterals;
+
+static const auto defaultScript = R"(import AppLib
print("Hello, world")
mainWindow.testFunction1()
-)";
+)"_L1;
MainWindow::MainWindow()
- : m_scriptEdit(new QPlainTextEdit(QString::fromLatin1(defaultScript).trimmed(), this))
+ : m_scriptEdit(new QPlainTextEdit(defaultScript, this))
{
setWindowTitle(tr("Scriptable Application"));
- QMenu *fileMenu = menuBar()->addMenu(tr("&File"));
- const QIcon runIcon = QIcon::fromTheme(QStringLiteral("system-run"));
- QAction *runAction = fileMenu->addAction(runIcon, tr("&Run..."), this, &MainWindow::slotRunScript);
+ auto *fileMenu = menuBar()->addMenu(tr("&File"));
+ const QIcon runIcon = QIcon::fromTheme("system-run"_L1);
+ auto *runAction = fileMenu->addAction(runIcon, tr("&Run..."),
+ this, &MainWindow::slotRunScript);
runAction->setShortcut(Qt::CTRL | Qt::Key_R);
- QAction *diagnosticAction = fileMenu->addAction(tr("&Print Diagnostics"), this, &MainWindow::slotPrintDiagnostics);
+ auto *diagnosticAction = fileMenu->addAction(tr("&Print Diagnostics"),
+ this, &MainWindow::slotPrintDiagnostics);
diagnosticAction->setShortcut(Qt::CTRL | Qt::Key_D);
- fileMenu->addAction(tr("&Invoke testFunction1()"), this, &MainWindow::testFunction1);
- const QIcon quitIcon = QIcon::fromTheme(QStringLiteral("application-exit"));
- QAction *quitAction = fileMenu->addAction(quitIcon, tr("&Quit"), qApp, &QCoreApplication::quit);
+ fileMenu->addAction(tr("&Invoke testFunction1()"),
+ this, &MainWindow::testFunction1);
+ const QIcon quitIcon = QIcon::fromTheme(QIcon::ThemeIcon::ApplicationExit);
+ auto *quitAction = fileMenu->addAction(quitIcon, tr("&Quit"),
+ qApp, &QCoreApplication::quit);
quitAction->setShortcut(Qt::CTRL | Qt::Key_Q);
- QMenu *editMenu = menuBar()->addMenu(tr("&Edit"));
- const QIcon clearIcon = QIcon::fromTheme(QStringLiteral("edit-clear"));
- QAction *clearAction = editMenu->addAction(clearIcon, tr("&Clear"), m_scriptEdit, &QPlainTextEdit::clear);
+ auto *editMenu = menuBar()->addMenu(tr("&Edit"));
+ const QIcon clearIcon = QIcon::fromTheme(QIcon::ThemeIcon::EditClear);
+ auto *clearAction = editMenu->addAction(clearIcon, tr("&Clear"),
+ m_scriptEdit, &QPlainTextEdit::clear);
- QMenu *helpMenu = menuBar()->addMenu(tr("&Help"));
- const QIcon aboutIcon = QIcon::fromTheme(QStringLiteral("help-about"));
- QAction *aboutAction = helpMenu->addAction(aboutIcon, tr("&About Qt"), qApp, &QApplication::aboutQt);
+ auto *helpMenu = menuBar()->addMenu(tr("&Help"));
+ const QIcon aboutIcon = QIcon::fromTheme(QIcon::ThemeIcon::HelpAbout);
+ auto *aboutAction = helpMenu->addAction(aboutIcon, tr("&About Qt"),
+ qApp, &QApplication::aboutQt);
- QToolBar *toolBar = new QToolBar;
+ auto *toolBar = new QToolBar;
addToolBar(toolBar);
toolBar->addAction(quitAction);
toolBar->addSeparator();
@@ -62,26 +69,29 @@ MainWindow::MainWindow()
m_scriptEdit->setFont(QFontDatabase::systemFont(QFontDatabase::FixedFont));
setCentralWidget(m_scriptEdit);
- if (!PythonUtils::bindAppObject("__main__", "mainWindow", PythonUtils::MainWindowType, this))
+ if (!PythonUtils::bindAppObject("__main__"_L1, "mainWindow"_L1,
+ PythonUtils::MainWindowType, this)) {
statusBar()->showMessage(tr("Error loading the application module"));
+ }
}
void MainWindow::slotRunScript()
{
const QString text = m_scriptEdit->toPlainText().trimmed();
- const QStringList script = text.split(u'\n', Qt::SkipEmptyParts);
- if (!script.isEmpty())
- runScript(script);
+ if (!text.isEmpty())
+ runScript(text);
}
void MainWindow::slotPrintDiagnostics()
{
- const QStringList script = QStringList()
- << "import sys" << "print('Path=', sys.path)" << "print('Executable=', sys.executable)";
+ const QString script = R"P(import sys
+print('Path=', sys.path)
+print('Executable=', sys.executable)
+)P"_L1;
runScript(script);
}
-void MainWindow::runScript(const QStringList &script)
+void MainWindow::runScript(const QString &script)
{
if (!::PythonUtils::runScript(script))
statusBar()->showMessage(tr("Error running script"));