summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-12-22 10:08:07 +0100
committerFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-12-22 12:16:37 +0000
commit645315c060c75d0d212c0339c17a1e0e6ac9632b (patch)
tree677e152d2ffd7fe7367f8dcf82a79fb400dc5bbf /tools
parent3c5ccb7a4271e5334e100f773452b1ad59487ba1 (diff)
downloadqtactiveqt-645315c060c75d0d212c0339c17a1e0e6ac9632b.tar.gz
testcon: Refactor registering script languages.
Use a struct and log a warning when registration fails. Task-number: QTBUG-49712 Change-Id: I138ec010cde6c97867994c1a4f4f75a460a4061d Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/testcon/mainwindow.cpp24
1 files changed, 21 insertions, 3 deletions
diff --git a/tools/testcon/mainwindow.cpp b/tools/testcon/mainwindow.cpp
index 854bd6e..a886871 100644
--- a/tools/testcon/mainwindow.cpp
+++ b/tools/testcon/mainwindow.cpp
@@ -43,6 +43,7 @@
#include <QtWidgets/QFileDialog>
#include <QtWidgets/QInputDialog>
#include <QtWidgets/QMessageBox>
+#include <QtCore/QDebug>
#include <QtCore/qt_windows.h>
#include <ActiveQt/QAxScriptManager>
#include <ActiveQt/QAxSelect>
@@ -65,6 +66,16 @@ QT_END_NAMESPACE
QT_USE_NAMESPACE
+struct ScriptLanguage {
+ const char *name;
+ const char *suffix;
+};
+
+static const ScriptLanguage scriptLanguages[] = {
+ {"PerlScript", ".pl"},
+ {"Python", ".py"}
+};
+
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, m_dlgInvoke(Q_NULLPTR)
@@ -75,11 +86,18 @@ MainWindow::MainWindow(QWidget *parent)
setupUi(this);
setObjectName(QLatin1String("MainWindow"));
- QAxScriptManager::registerEngine(QLatin1String("PerlScript"), QLatin1String(".pl"));
- QAxScriptManager::registerEngine(QLatin1String("Python"), QLatin1String(".py"));
-
debuglog = logDebug;
m_oldDebugHandler = qInstallMessageHandler(redirectDebugOutput);
+
+ const int scriptCount = int(sizeof(scriptLanguages) / sizeof(scriptLanguages[0]));
+ for (int s = 0; s < scriptCount; ++s) {
+ const QString name = QLatin1String(scriptLanguages[s].name);
+ const QString suffix = QLatin1String(scriptLanguages[s].suffix);
+ if (!QAxScriptManager::registerEngine(name, suffix))
+ qWarning().noquote().nospace() << "Failed to register \"" << name
+ << "\" (*" << suffix << ") with QAxScriptManager.";
+ }
+
QHBoxLayout *layout = new QHBoxLayout(Workbase);
m_mdiArea = new QMdiArea(Workbase);
layout->addWidget(m_mdiArea);