diff options
author | Pavel Geiger <pavel.geiger@gmail.com> | 2016-01-05 13:05:47 +0100 |
---|---|---|
committer | Jarek Kobus <jaroslaw.kobus@theqtcompany.com> | 2016-01-28 14:07:43 +0000 |
commit | eedf16c96fc9f3307087837785202ec3296df213 (patch) | |
tree | 8496f958111e9298ee65527655e8843b5377dda5 /tests/auto/tools/uic | |
parent | eea8494fa09db99745ef795557aaf1cdba2bd925 (diff) |
uic: Accept an -idbased argument
When we want to use qtTrId function instead QApplication::translate in
generated files it's not possible to use custom function with presented by
the --tr argument due to signature difference between qtTrId and
QApplication::translate function.
With this argument present, uic will generate qtTrId function with second
argument empty. When used together with --tr parameter it will use
presented function instead.
Change-Id: I0d986e4ea25ce58917fd9a2866b1eac0a4671502
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
Diffstat (limited to 'tests/auto/tools/uic')
-rw-r--r-- | tests/auto/tools/uic/baseline/qttrid.ui | 228 | ||||
-rw-r--r-- | tests/auto/tools/uic/baseline/qttrid.ui.h | 252 | ||||
-rw-r--r-- | tests/auto/tools/uic/tst_uic.cpp | 12 |
3 files changed, 490 insertions, 2 deletions
diff --git a/tests/auto/tools/uic/baseline/qttrid.ui b/tests/auto/tools/uic/baseline/qttrid.ui new file mode 100644 index 0000000000..1cfc7f5400 --- /dev/null +++ b/tests/auto/tools/uic/baseline/qttrid.ui @@ -0,0 +1,228 @@ +<ui version="4.0" > + <class>RemoteControlClass</class> + <widget class="QMainWindow" name="RemoteControlClass" > + <property name="geometry" > + <rect> + <x>0</x> + <y>0</y> + <width>344</width> + <height>364</height> + </rect> + </property> + <property name="windowTitle" > + <string>RemoteControl</string> + </property> + <widget class="QWidget" name="centralWidget" > + <layout class="QGridLayout" > + <item row="0" column="0" > + <widget class="QLabel" name="label" > + <property name="text" > + <string>Start URL:</string> + </property> + </widget> + </item> + <item row="0" column="1" colspan="2" > + <widget class="QLineEdit" name="startUrlLineEdit" /> + </item> + <item row="1" column="1" > + <widget class="QPushButton" name="launchButton" > + <property name="text" > + <string>Launch Qt HelpViewer</string> + </property> + </widget> + </item> + <item row="1" column="2" > + <spacer> + <property name="orientation" > + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" > + <size> + <width>101</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item row="2" column="1" > + <spacer> + <property name="orientation" > + <enum>Qt::Vertical</enum> + </property> + <property name="sizeType" > + <enum>QSizePolicy::Fixed</enum> + </property> + <property name="sizeHint" > + <size> + <width>113</width> + <height>16</height> + </size> + </property> + </spacer> + </item> + <item row="3" column="0" colspan="3" > + <widget class="QGroupBox" name="actionGroupBox" > + <property name="enabled" > + <bool>false</bool> + </property> + <property name="title" > + <string>Actions</string> + </property> + <layout class="QGridLayout" > + <item row="0" column="0" > + <widget class="QLabel" name="label_2" > + <property name="text" > + <string>Search in Index:</string> + </property> + </widget> + </item> + <item row="0" column="1" colspan="2" > + <layout class="QHBoxLayout" > + <property name="spacing" > + <number>0</number> + </property> + <item> + <widget class="QLineEdit" name="indexLineEdit" /> + </item> + <item> + <widget class="QToolButton" name="indexButton" > + <property name="text" > + <string/> + </property> + <property name="icon" > + <iconset resource="remotecontrol.qrc" >:/remotecontrol/enter.png</iconset> + </property> + </widget> + </item> + </layout> + </item> + <item row="1" column="0" > + <widget class="QLabel" name="label_4" > + <property name="text" > + <string>Identifier:</string> + </property> + </widget> + </item> + <item row="1" column="1" colspan="2" > + <layout class="QHBoxLayout" > + <property name="spacing" > + <number>0</number> + </property> + <item> + <widget class="QLineEdit" name="identifierLineEdit" /> + </item> + <item> + <widget class="QToolButton" name="identifierButton" > + <property name="text" > + <string/> + </property> + <property name="icon" > + <iconset resource="remotecontrol.qrc" >:/remotecontrol/enter.png</iconset> + </property> + </widget> + </item> + </layout> + </item> + <item row="2" column="0" > + <widget class="QLabel" name="label_3" > + <property name="text" > + <string>Show URL:</string> + </property> + </widget> + </item> + <item row="2" column="1" colspan="2" > + <layout class="QHBoxLayout" > + <property name="spacing" > + <number>0</number> + </property> + <item> + <widget class="QLineEdit" name="urlLineEdit" /> + </item> + <item> + <widget class="QToolButton" name="urlButton" > + <property name="text" > + <string/> + </property> + <property name="icon" > + <iconset resource="remotecontrol.qrc" >:/remotecontrol/enter.png</iconset> + </property> + </widget> + </item> + </layout> + </item> + <item row="3" column="1" > + <widget class="QPushButton" name="syncContentsButton" > + <property name="text" > + <string>Sync Contents</string> + </property> + </widget> + </item> + <item row="3" column="2" > + <spacer> + <property name="orientation" > + <enum>Qt::Horizontal</enum> + </property> + <property name="sizeHint" > + <size> + <width>81</width> + <height>20</height> + </size> + </property> + </spacer> + </item> + <item row="4" column="0" colspan="3" > + <widget class="QCheckBox" name="contentsCheckBox" > + <property name="text" > + <string>Show Contents</string> + </property> + </widget> + </item> + <item row="5" column="0" > + <widget class="QCheckBox" name="indexCheckBox" > + <property name="text" > + <string>Show Index</string> + </property> + </widget> + </item> + <item row="6" column="0" colspan="3" > + <widget class="QCheckBox" name="bookmarksCheckBox" > + <property name="text" > + <string>Show Bookmarks</string> + </property> + </widget> + </item> + </layout> + </widget> + </item> + </layout> + </widget> + <widget class="QMenuBar" name="menuBar" > + <property name="geometry" > + <rect> + <x>0</x> + <y>0</y> + <width>344</width> + <height>21</height> + </rect> + </property> + <widget class="QMenu" name="menuFile" > + <property name="title" > + <string>File</string> + </property> + <addaction name="actionQuit" /> + </widget> + <addaction name="menuFile" /> + </widget> + <widget class="QStatusBar" name="statusBar" /> + <action name="actionQuit" > + <property name="text" > + <string>Quit</string> + </property> + </action> + </widget> + <layoutdefault spacing="6" margin="11" /> + <resources> + <include location="remotecontrol.qrc" /> + </resources> + <connections/> +</ui> diff --git a/tests/auto/tools/uic/baseline/qttrid.ui.h b/tests/auto/tools/uic/baseline/qttrid.ui.h new file mode 100644 index 0000000000..3a2b73284b --- /dev/null +++ b/tests/auto/tools/uic/baseline/qttrid.ui.h @@ -0,0 +1,252 @@ +/******************************************************************************** +** Form generated from reading UI file 'qttrid.ui' +** +** Created by: Qt User Interface Compiler version 5.5.1 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef QTTRID_H +#define QTTRID_H + +#include <QtCore/QVariant> +#include <QtWidgets/QAction> +#include <QtWidgets/QApplication> +#include <QtWidgets/QButtonGroup> +#include <QtWidgets/QCheckBox> +#include <QtWidgets/QGridLayout> +#include <QtWidgets/QGroupBox> +#include <QtWidgets/QHBoxLayout> +#include <QtWidgets/QHeaderView> +#include <QtWidgets/QLabel> +#include <QtWidgets/QLineEdit> +#include <QtWidgets/QMainWindow> +#include <QtWidgets/QMenu> +#include <QtWidgets/QMenuBar> +#include <QtWidgets/QPushButton> +#include <QtWidgets/QSpacerItem> +#include <QtWidgets/QStatusBar> +#include <QtWidgets/QToolButton> +#include <QtWidgets/QWidget> + +QT_BEGIN_NAMESPACE + +class Ui_RemoteControlClass +{ +public: + QAction *actionQuit; + QWidget *centralWidget; + QGridLayout *gridLayout; + QLabel *label; + QLineEdit *startUrlLineEdit; + QPushButton *launchButton; + QSpacerItem *spacerItem; + QSpacerItem *spacerItem1; + QGroupBox *actionGroupBox; + QGridLayout *gridLayout1; + QLabel *label_2; + QHBoxLayout *hboxLayout; + QLineEdit *indexLineEdit; + QToolButton *indexButton; + QLabel *label_4; + QHBoxLayout *hboxLayout1; + QLineEdit *identifierLineEdit; + QToolButton *identifierButton; + QLabel *label_3; + QHBoxLayout *hboxLayout2; + QLineEdit *urlLineEdit; + QToolButton *urlButton; + QPushButton *syncContentsButton; + QSpacerItem *spacerItem2; + QCheckBox *contentsCheckBox; + QCheckBox *indexCheckBox; + QCheckBox *bookmarksCheckBox; + QMenuBar *menuBar; + QMenu *menuFile; + QStatusBar *statusBar; + + void setupUi(QMainWindow *RemoteControlClass) + { + if (RemoteControlClass->objectName().isEmpty()) + RemoteControlClass->setObjectName(QStringLiteral("RemoteControlClass")); + RemoteControlClass->resize(344, 364); + actionQuit = new QAction(RemoteControlClass); + actionQuit->setObjectName(QStringLiteral("actionQuit")); + centralWidget = new QWidget(RemoteControlClass); + centralWidget->setObjectName(QStringLiteral("centralWidget")); + gridLayout = new QGridLayout(centralWidget); + gridLayout->setSpacing(6); + gridLayout->setContentsMargins(11, 11, 11, 11); + gridLayout->setObjectName(QStringLiteral("gridLayout")); + label = new QLabel(centralWidget); + label->setObjectName(QStringLiteral("label")); + + gridLayout->addWidget(label, 0, 0, 1, 1); + + startUrlLineEdit = new QLineEdit(centralWidget); + startUrlLineEdit->setObjectName(QStringLiteral("startUrlLineEdit")); + + gridLayout->addWidget(startUrlLineEdit, 0, 1, 1, 2); + + launchButton = new QPushButton(centralWidget); + launchButton->setObjectName(QStringLiteral("launchButton")); + + gridLayout->addWidget(launchButton, 1, 1, 1, 1); + + spacerItem = new QSpacerItem(101, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + + gridLayout->addItem(spacerItem, 1, 2, 1, 1); + + spacerItem1 = new QSpacerItem(113, 16, QSizePolicy::Minimum, QSizePolicy::Fixed); + + gridLayout->addItem(spacerItem1, 2, 1, 1, 1); + + actionGroupBox = new QGroupBox(centralWidget); + actionGroupBox->setObjectName(QStringLiteral("actionGroupBox")); + actionGroupBox->setEnabled(false); + gridLayout1 = new QGridLayout(actionGroupBox); + gridLayout1->setSpacing(6); + gridLayout1->setContentsMargins(11, 11, 11, 11); + gridLayout1->setObjectName(QStringLiteral("gridLayout1")); + label_2 = new QLabel(actionGroupBox); + label_2->setObjectName(QStringLiteral("label_2")); + + gridLayout1->addWidget(label_2, 0, 0, 1, 1); + + hboxLayout = new QHBoxLayout(); + hboxLayout->setSpacing(0); + hboxLayout->setObjectName(QStringLiteral("hboxLayout")); + indexLineEdit = new QLineEdit(actionGroupBox); + indexLineEdit->setObjectName(QStringLiteral("indexLineEdit")); + + hboxLayout->addWidget(indexLineEdit); + + indexButton = new QToolButton(actionGroupBox); + indexButton->setObjectName(QStringLiteral("indexButton")); + const QIcon icon = QIcon(QString::fromUtf8(":/remotecontrol/enter.png")); + indexButton->setIcon(icon); + + hboxLayout->addWidget(indexButton); + + + gridLayout1->addLayout(hboxLayout, 0, 1, 1, 2); + + label_4 = new QLabel(actionGroupBox); + label_4->setObjectName(QStringLiteral("label_4")); + + gridLayout1->addWidget(label_4, 1, 0, 1, 1); + + hboxLayout1 = new QHBoxLayout(); + hboxLayout1->setSpacing(0); + hboxLayout1->setObjectName(QStringLiteral("hboxLayout1")); + identifierLineEdit = new QLineEdit(actionGroupBox); + identifierLineEdit->setObjectName(QStringLiteral("identifierLineEdit")); + + hboxLayout1->addWidget(identifierLineEdit); + + identifierButton = new QToolButton(actionGroupBox); + identifierButton->setObjectName(QStringLiteral("identifierButton")); + identifierButton->setIcon(icon); + + hboxLayout1->addWidget(identifierButton); + + + gridLayout1->addLayout(hboxLayout1, 1, 1, 1, 2); + + label_3 = new QLabel(actionGroupBox); + label_3->setObjectName(QStringLiteral("label_3")); + + gridLayout1->addWidget(label_3, 2, 0, 1, 1); + + hboxLayout2 = new QHBoxLayout(); + hboxLayout2->setSpacing(0); + hboxLayout2->setObjectName(QStringLiteral("hboxLayout2")); + urlLineEdit = new QLineEdit(actionGroupBox); + urlLineEdit->setObjectName(QStringLiteral("urlLineEdit")); + + hboxLayout2->addWidget(urlLineEdit); + + urlButton = new QToolButton(actionGroupBox); + urlButton->setObjectName(QStringLiteral("urlButton")); + urlButton->setIcon(icon); + + hboxLayout2->addWidget(urlButton); + + + gridLayout1->addLayout(hboxLayout2, 2, 1, 1, 2); + + syncContentsButton = new QPushButton(actionGroupBox); + syncContentsButton->setObjectName(QStringLiteral("syncContentsButton")); + + gridLayout1->addWidget(syncContentsButton, 3, 1, 1, 1); + + spacerItem2 = new QSpacerItem(81, 20, QSizePolicy::Expanding, QSizePolicy::Minimum); + + gridLayout1->addItem(spacerItem2, 3, 2, 1, 1); + + contentsCheckBox = new QCheckBox(actionGroupBox); + contentsCheckBox->setObjectName(QStringLiteral("contentsCheckBox")); + + gridLayout1->addWidget(contentsCheckBox, 4, 0, 1, 3); + + indexCheckBox = new QCheckBox(actionGroupBox); + indexCheckBox->setObjectName(QStringLiteral("indexCheckBox")); + + gridLayout1->addWidget(indexCheckBox, 5, 0, 1, 1); + + bookmarksCheckBox = new QCheckBox(actionGroupBox); + bookmarksCheckBox->setObjectName(QStringLiteral("bookmarksCheckBox")); + + gridLayout1->addWidget(bookmarksCheckBox, 6, 0, 1, 3); + + + gridLayout->addWidget(actionGroupBox, 3, 0, 1, 3); + + RemoteControlClass->setCentralWidget(centralWidget); + menuBar = new QMenuBar(RemoteControlClass); + menuBar->setObjectName(QStringLiteral("menuBar")); + menuBar->setGeometry(QRect(0, 0, 344, 21)); + menuFile = new QMenu(menuBar); + menuFile->setObjectName(QStringLiteral("menuFile")); + RemoteControlClass->setMenuBar(menuBar); + statusBar = new QStatusBar(RemoteControlClass); + statusBar->setObjectName(QStringLiteral("statusBar")); + RemoteControlClass->setStatusBar(statusBar); + + menuBar->addAction(menuFile->menuAction()); + menuFile->addAction(actionQuit); + + retranslateUi(RemoteControlClass); + + QMetaObject::connectSlotsByName(RemoteControlClass); + } // setupUi + + void retranslateUi(QMainWindow *RemoteControlClass) + { + RemoteControlClass->setWindowTitle(qtTrId("RemoteControl")); + actionQuit->setText(qtTrId("Quit")); + label->setText(qtTrId("Start URL:")); + launchButton->setText(qtTrId("Launch Qt HelpViewer")); + actionGroupBox->setTitle(qtTrId("Actions")); + label_2->setText(qtTrId("Search in Index:")); + indexButton->setText(QString()); + label_4->setText(qtTrId("Identifier:")); + identifierButton->setText(QString()); + label_3->setText(qtTrId("Show URL:")); + urlButton->setText(QString()); + syncContentsButton->setText(qtTrId("Sync Contents")); + contentsCheckBox->setText(qtTrId("Show Contents")); + indexCheckBox->setText(qtTrId("Show Index")); + bookmarksCheckBox->setText(qtTrId("Show Bookmarks")); + menuFile->setTitle(qtTrId("File")); + } // retranslateUi + +}; + +namespace Ui { + class RemoteControlClass: public Ui_RemoteControlClass {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // QTTRID_H diff --git a/tests/auto/tools/uic/tst_uic.cpp b/tests/auto/tools/uic/tst_uic.cpp index 8ae2dd701e..cf43cb02d3 100644 --- a/tests/auto/tools/uic/tst_uic.cpp +++ b/tests/auto/tools/uic/tst_uic.cpp @@ -142,10 +142,11 @@ void tst_uic::run() { QFETCH(QString, originalFile); QFETCH(QString, generatedFile); + QFETCH(QStringList, options); QProcess process; process.start(m_command, QStringList(originalFile) - << QString(QLatin1String("-o")) << generatedFile); + << QString(QLatin1String("-o")) << generatedFile << options); QVERIFY2(process.waitForStarted(), msgProcessStartFailed(m_command, process.errorString())); QVERIFY(process.waitForFinished()); QCOMPARE(process.exitStatus(), QProcess::NormalExit); @@ -157,6 +158,7 @@ void tst_uic::run_data() const { QTest::addColumn<QString>("originalFile"); QTest::addColumn<QString>("generatedFile"); + QTest::addColumn<QStringList>("options"); QDir generated(m_generated.path()); QDir baseline(m_baseline); @@ -165,9 +167,15 @@ void tst_uic::run_data() const const QString generatedFile = generated.absolutePath() + QLatin1Char('/') + baselineFile.fileName() + QLatin1String(".h"); + + QStringList options; + if (baselineFile.fileName() == QLatin1String("qttrid.ui")) + options << QStringList(QLatin1String("-idbased")); + QTest::newRow(qPrintable(baselineFile.baseName())) << baselineFile.absoluteFilePath() - << generatedFile; + << generatedFile + << options; } } |