diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2018-02-23 09:27:52 +0100 |
---|---|---|
committer | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2018-02-23 09:27:52 +0100 |
commit | efb46ea7ccf6fe8f89a8228bb5afe34c51901824 (patch) | |
tree | ea83ffeb690c735cbf2a9508e56a20ce2378fcc9 /tests/manual | |
parent | cdc30acbdebdfb185df0a871537dd22411eae4f4 (diff) | |
parent | 5cfd5fd9d7ece7e1eb3c4d2be8ec342b376acf38 (diff) |
Merge remote-tracking branch 'origin/5.11' into dev
Change-Id: I01dfc41e18333ac55954296cef8f01475adab27e
Diffstat (limited to 'tests/manual')
-rw-r--r-- | tests/manual/filetest/main.cpp | 14 | ||||
-rw-r--r-- | tests/manual/shortcuts/main.cpp | 262 | ||||
-rw-r--r-- | tests/manual/windowflags/controllerwindow.cpp | 8 | ||||
-rw-r--r-- | tests/manual/windowflags/previewwindow.cpp | 11 | ||||
-rw-r--r-- | tests/manual/windowflags/previewwindow.h | 6 |
5 files changed, 213 insertions, 88 deletions
diff --git a/tests/manual/filetest/main.cpp b/tests/manual/filetest/main.cpp index c278fd87ce..22c74af327 100644 --- a/tests/manual/filetest/main.cpp +++ b/tests/manual/filetest/main.cpp @@ -94,7 +94,7 @@ static inline std::string permissions(const QFileInfo &fi) return result; } -static int ls(int argCount, char **args) +static int ls(int argCount, const char **args, bool recursive = false) { for (int i = 0 ; i < argCount; ++i) { const QFileInfo fi(QString::fromLocal8Bit(args[i])); @@ -112,6 +112,16 @@ static int ls(int argCount, char **args) std::cout << " [dir]"; std::cout << std::endl; + + if (recursive && fi.isDir()) { + QDir dir(fi.fileName()); + const QStringList entries = dir.entryList(QDir::AllEntries | QDir::NoDotAndDotDot); + for (const QString &s : entries) { + QByteArray encoded = QFile::encodeName(s); + const char *ptr = encoded.constData(); + ls(1, &ptr, false); + } + } } return 0; } @@ -205,7 +215,7 @@ int main(int argc, char *argv[]) QCoreApplication a(argc, argv); Q_UNUSED(a) if (argc >= 3 && !qstrcmp(argv[1], "ls")) - return ls(argc -2, argv + 2); + return ls(argc -2, const_cast<const char **>(argv + 2), true); if (argc >= 3 && !qstrcmp(argv[1], "stat")) return stat(argc -2, argv + 2); diff --git a/tests/manual/shortcuts/main.cpp b/tests/manual/shortcuts/main.cpp index 55ade1040a..849f8728b3 100644 --- a/tests/manual/shortcuts/main.cpp +++ b/tests/manual/shortcuts/main.cpp @@ -31,106 +31,202 @@ #include <QWidget> #include <QLabel> #include <QPushButton> +#include <QDebug> class ShortcutTester : public QWidget { public: ShortcutTester() { setupLayout(); - setFixedWidth(200); } protected: void setupLayout() { QVBoxLayout *layout = new QVBoxLayout(this); - - QKeySequence sq1(Qt::AltModifier + Qt::ShiftModifier + Qt::Key_G); - QPushButton *b1 = new QPushButton(sq1.toString()); - b1->setShortcut(sq1); - - QKeySequence sq2(Qt::AltModifier + Qt::Key_G); - QPushButton *b2 = new QPushButton(sq2.toString()); - b2->setShortcut(sq2); - - QKeySequence sq3(Qt::ControlModifier + Qt::ShiftModifier + Qt::Key_R); - QPushButton *b3 = new QPushButton(sq3.toString()); - b3->setShortcut(sq3); - - QKeySequence sq4(Qt::ControlModifier + Qt::Key_R); - QPushButton *b4 = new QPushButton(sq4.toString()); - b4->setShortcut(sq4); - - QKeySequence sq5(Qt::ControlModifier + Qt::Key_Return); - QPushButton *b5 = new QPushButton(sq5.toString()); - b5->setShortcut(sq5); - - QKeySequence sq6(Qt::ControlModifier + Qt::ShiftModifier + Qt::AltModifier + Qt::Key_R); - QPushButton *b6 = new QPushButton(sq6.toString()); - b6->setShortcut(sq6); - - QKeySequence sq7(Qt::ShiftModifier + Qt::Key_5); - QPushButton *b7 = new QPushButton(sq7.toString()); - b7->setShortcut(sq7); - - QKeySequence sq8(Qt::ControlModifier + Qt::Key_Q); - QPushButton *b8 = new QPushButton(sq8.toString()); - b8->setShortcut(sq8); - - QKeySequence sq9(Qt::ControlModifier + Qt::Key_Plus); - QPushButton *b9 = new QPushButton(sq9.toString()); - b9->setShortcut(sq9); - - QKeySequence sq10(Qt::ControlModifier + Qt::Key_Y); - QPushButton *b10 = new QPushButton(sq10.toString()); - b10->setShortcut(sq10); - - QKeySequence sq11(Qt::ShiftModifier + Qt::Key_Comma); - QPushButton *b11 = new QPushButton(sq11.toString()); - b11->setShortcut(sq11); - - QKeySequence sq12(Qt::ControlModifier + Qt::Key_Slash); - QPushButton *b12 = new QPushButton(sq12.toString()); - b12->setShortcut(sq12); - - QKeySequence sq13(Qt::ControlModifier + Qt::Key_BracketRight); - QPushButton *b13 = new QPushButton(sq13.toString()); - b13->setShortcut(sq13); - - // LATIN SMALL LETTER O WITH STROKE - QKeySequence sq14(QString(QChar(ushort(0xf8)))); - QPushButton *b14 = new QPushButton(sq14.toString()); - b14->setShortcut(sq14); - - // CYRILLIC SMALL LETTER ZHE - QKeySequence sq15(QString(QChar(ushort(0x436)))); - QPushButton *b15 = new QPushButton(sq15.toString()); - b15->setShortcut(sq15); + setLayout(layout); QLabel *testPurpose = new QLabel(); testPurpose->setWordWrap(true); testPurpose->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Expanding); - testPurpose->setText("This test come in handy to verify shortcuts under different" - " keyboard layouts - qwerty, dvorak, non-latin (russian, arabic), etc."); + testPurpose->setText("This test come in handy to verify shortcuts under different " + "keyboard layouts - qwerty, dvorak, non-latin (russian, arabic), etc."); layout->addWidget(testPurpose); - layout->addWidget(b1); - layout->addWidget(b2); - layout->addWidget(b3); - layout->addWidget(b4); - layout->addWidget(b5); - layout->addWidget(b6); - layout->addWidget(b7); - layout->addWidget(b8); - layout->addWidget(b9); - layout->addWidget(b10); - layout->addWidget(b11); - layout->addWidget(b12); - layout->addWidget(b13); + + QKeySequence altShiftG(Qt::AltModifier + Qt::ShiftModifier + Qt::Key_G); + QPushButton *_altShiftG = new QPushButton(altShiftG.toString()); + _altShiftG->setShortcut(altShiftG); + layout->addWidget(_altShiftG); + + QKeySequence altG(Qt::AltModifier + Qt::Key_G); + QPushButton *_altG = new QPushButton(altG.toString()); + _altG->setShortcut(altG); + layout->addWidget(_altG); + + QKeySequence ctrlShiftR(Qt::ControlModifier + Qt::ShiftModifier + Qt::Key_R); + QPushButton *_ctrlShiftR = new QPushButton(ctrlShiftR.toString()); + _ctrlShiftR->setShortcut(ctrlShiftR); + layout->addWidget(_ctrlShiftR); + + QKeySequence ctrlR(Qt::ControlModifier + Qt::Key_R); + QPushButton *_ctrlR = new QPushButton(ctrlR.toString()); + _ctrlR->setShortcut(ctrlR); + layout->addWidget(_ctrlR); + + QKeySequence ctrlReturn(Qt::ControlModifier + Qt::Key_Return); + QPushButton *_ctrlReturn = new QPushButton(ctrlReturn.toString()); + _ctrlReturn->setShortcut(ctrlReturn); + layout->addWidget(_ctrlReturn); + + QKeySequence ctrlEnter(Qt::ControlModifier + Qt::Key_Enter); + QPushButton *_ctrlEnter = new QPushButton(ctrlEnter.toString()); + _ctrlEnter->setShortcut(ctrlEnter); + layout->addWidget(_ctrlEnter); + + QKeySequence ctrlShiftAltR(Qt::ControlModifier + Qt::ShiftModifier + Qt::AltModifier + Qt::Key_R); + QPushButton *_ctrlShiftAltR = new QPushButton(ctrlShiftAltR.toString()); + _ctrlShiftAltR->setShortcut(ctrlShiftAltR); + layout->addWidget(_ctrlShiftAltR); + + QKeySequence shift5(Qt::ShiftModifier + Qt::Key_5); + QPushButton *_shift5 = new QPushButton(shift5.toString()); + _shift5->setShortcut(shift5); + layout->addWidget(_shift5); + + QKeySequence shiftPercent(Qt::ShiftModifier + Qt::Key_Percent); + QPushButton *_shiftPercent = new QPushButton(shiftPercent.toString()); + _shiftPercent->setShortcut(shiftPercent); + layout->addWidget(_shiftPercent); + + QKeySequence percent(Qt::Key_Percent); + QPushButton *_percent = new QPushButton(percent.toString()); + _percent->setShortcut(percent); + layout->addWidget(_percent); + + QKeySequence key5(Qt::Key_5); + QPushButton *_key5 = new QPushButton(key5.toString()); + _key5->setShortcut(key5); + layout->addWidget(_key5); + + QKeySequence keyQ(Qt::Key_Q); + QPushButton *_keyQ = new QPushButton(keyQ.toString()); + _keyQ->setShortcut(keyQ); + layout->addWidget(_keyQ); + + QKeySequence ctrlPercent(Qt::ControlModifier + Qt::Key_Percent); + QPushButton *_ctrlPercent = new QPushButton(ctrlPercent.toString()); + _ctrlPercent->setShortcut(ctrlPercent); + layout->addWidget(_ctrlPercent); + + QKeySequence ctrlShift5(Qt::ControlModifier + Qt::ShiftModifier + Qt::Key_5); + QPushButton *_ctrlShift5 = new QPushButton(ctrlShift5.toString()); + _ctrlShift5->setShortcut(ctrlShift5); + layout->addWidget(_ctrlShift5); + + QKeySequence ctrl5(Qt::ControlModifier + Qt::Key_5); + QPushButton *_ctrl5 = new QPushButton(ctrl5.toString()); + _ctrl5->setShortcut(ctrl5); + layout->addWidget(_ctrl5); + + QKeySequence alt5(Qt::AltModifier + Qt::Key_5); + QPushButton *_alt5 = new QPushButton(alt5.toString()); + _alt5->setShortcut(alt5); + layout->addWidget(_alt5); + + QKeySequence ctrlPlus(Qt::ControlModifier + Qt::Key_Plus); + QPushButton *_ctrlPlus = new QPushButton(ctrlPlus.toString()); + _ctrlPlus->setShortcut(ctrlPlus); + layout->addWidget(_ctrlPlus); + + QKeySequence ctrlShiftPlus(Qt::ControlModifier + Qt::ShiftModifier + Qt::Key_Plus); + QPushButton *_ctrlShiftPlus = new QPushButton(ctrlShiftPlus.toString()); + _ctrlShiftPlus->setShortcut(ctrlShiftPlus); + layout->addWidget(_ctrlShiftPlus); + + QKeySequence ctrlY(Qt::ControlModifier + Qt::Key_Y); + QPushButton *_ctrlY = new QPushButton(ctrlY.toString()); + _ctrlY->setShortcut(ctrlY); + layout->addWidget(_ctrlY); + + QKeySequence shiftComma(Qt::ShiftModifier + Qt::Key_Comma); + QPushButton *_shiftComma = new QPushButton(shiftComma.toString()); + _shiftComma->setShortcut(shiftComma); + layout->addWidget(_shiftComma); + + QKeySequence ctrlComma(Qt::ControlModifier + Qt::Key_Comma); + QPushButton *_ctrlComma = new QPushButton(ctrlComma.toString()); + _ctrlComma->setShortcut(ctrlComma); + layout->addWidget(_ctrlComma); + + QKeySequence ctrlSlash(Qt::ControlModifier + Qt::Key_Slash); + QPushButton *_ctrlSlash = new QPushButton(ctrlSlash.toString()); + _ctrlSlash->setShortcut(ctrlSlash); + layout->addWidget(_ctrlSlash); + + QKeySequence ctrlBackslash(Qt::ControlModifier + Qt::Key_Backslash); + QPushButton *_ctrlBackslash = new QPushButton(ctrlBackslash.toString()); + _ctrlBackslash->setShortcut(ctrlBackslash); + layout->addWidget(_ctrlBackslash); + + QKeySequence metaShiftA(Qt::MetaModifier + Qt::ShiftModifier + Qt::Key_A); + QPushButton *_metaShiftA = new QPushButton(metaShiftA.toString()); + _metaShiftA->setShortcut(metaShiftA); + layout->addWidget(_metaShiftA); + + QKeySequence metaShift5(Qt::MetaModifier + Qt::ShiftModifier + Qt::Key_5); + QPushButton *_metaShift5 = new QPushButton(metaShift5.toString()); + _metaShift5->setShortcut(metaShift5); + layout->addWidget(_metaShift5); + + QKeySequence ctrlBracketRigth(Qt::ControlModifier + Qt::Key_BracketRight); + QPushButton *_ctrlBracketRigth = new QPushButton(ctrlBracketRigth.toString()); + _ctrlBracketRigth->setShortcut(ctrlBracketRigth); + layout->addWidget(_ctrlBracketRigth); + + QKeySequence shiftF3(Qt::ShiftModifier + Qt::Key_F3); + QPushButton *_shiftF3 = new QPushButton(shiftF3.toString()); + _shiftF3->setShortcut(shiftF3); + layout->addWidget(_shiftF3); + + QKeySequence ctrlF3(Qt::ControlModifier + Qt::Key_F3); + QPushButton *_ctrlF3 = new QPushButton(ctrlF3.toString()); + _ctrlF3->setShortcut(ctrlF3); + layout->addWidget(_ctrlF3); + + QKeySequence euro(0x20AC); // EURO SIGN e.g. US (with euro on 5) on 3rd keyboard level + QPushButton *_euro = new QPushButton(euro.toString()); + _euro->setShortcut(euro); + layout->addWidget(_euro); + + QKeySequence ctrlEuro(Qt::ControlModifier + 0x20AC); + QPushButton *_ctrlEuro = new QPushButton(ctrlEuro.toString()); + _ctrlEuro->setShortcut(ctrlEuro); + layout->addWidget(_ctrlEuro); + + // with german (neo 2) layout on linux under ISO_Level3_Shift + ISO_Level5_Shift + I + QKeySequence greekPsi(QString(QStringLiteral("\u03A8"))); + QPushButton *_greekPsi = new QPushButton(greekPsi.toString()); + _greekPsi->setShortcut(greekPsi); + layout->addWidget(_greekPsi); + layout->addWidget(new QLabel("Norwegian layout")); - layout->addWidget(b14); - layout->addWidget(new QLabel("Russian layout")); - layout->addWidget(b15); + // LATIN SMALL LETTER O WITH STROKE + QKeySequence norwegianO(QString(QStringLiteral("\u00F8"))); + QPushButton *_norwegianO = new QPushButton(norwegianO.toString()); + _norwegianO->setShortcut(norwegianO); + layout->addWidget(_norwegianO); - setLayout(layout); + layout->addWidget(new QLabel("Russian layout")); + // CYRILLIC SMALL LETTER ZHE + QKeySequence zhe(QString(QStringLiteral("\u0436"))); + QPushButton *_zhe = new QPushButton(zhe.toString()); + _zhe->setShortcut(zhe); + layout->addWidget(_zhe); + + // for sequence definitons see qplatformtheme.cpp + layout->addWidget(new QLabel("QKeySequence::StandardKey(s)")); + QPushButton *_open = new QPushButton("Open"); + _open->setShortcut(QKeySequence::Open); // Qt::CTRL | Qt::Key_O + layout->addWidget(_open); } }; @@ -138,6 +234,8 @@ int main(int argc, char *argv[]) { QApplication a(argc, argv); + qDebug() << qVersion(); + ShortcutTester tester; tester.show(); diff --git a/tests/manual/windowflags/controllerwindow.cpp b/tests/manual/windowflags/controllerwindow.cpp index 4b380d5355..6334ea588f 100644 --- a/tests/manual/windowflags/controllerwindow.cpp +++ b/tests/manual/windowflags/controllerwindow.cpp @@ -59,7 +59,7 @@ ControllerWidget::ControllerWidget(QWidget *parent) QLabel *label = new QLabel(tr("Parent window")); parentWindow->setCentralWidget(label); - previewWindow = new QWindow; + previewWindow = new PreviewWindow; previewWindow->installEventFilter(this); previewWidget = new PreviewWidget; previewWidget->installEventFilter(this); @@ -123,8 +123,8 @@ void ControllerWidget::updatePreview(QWindow *preview) preview->setFlags(flags); if (fixedSizeWindowCheckBox->isChecked()) { - preview->setMinimumSize(QSize(300, 300)); - preview->setMaximumSize(QSize(300, 300)); + preview->setMinimumSize(preview->size()); + preview->setMaximumSize(preview->size()); } else { preview->setMinimumSize(QSize(0, 0)); preview->setMaximumSize(QSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX)); @@ -153,7 +153,7 @@ void ControllerWidget::updatePreview(QWidget *preview) preview->setWindowFlags(flags); QSize fixedSize = fixedSizeWindowCheckBox->isChecked() ? - QSize(300, 300) : QSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX); + preview->size() : QSize(QWIDGETSIZE_MAX, QWIDGETSIZE_MAX); preview->setFixedSize(fixedSize); QPoint pos = preview->pos(); diff --git a/tests/manual/windowflags/previewwindow.cpp b/tests/manual/windowflags/previewwindow.cpp index 19473c9eee..ef3966830b 100644 --- a/tests/manual/windowflags/previewwindow.cpp +++ b/tests/manual/windowflags/previewwindow.cpp @@ -32,9 +32,20 @@ #include <QVBoxLayout> #include <QTextStream> #include <QTimer> +#include <QPainter> +#include <QLinearGradient> #include "previewwindow.h" +void PreviewWindow::paintEvent(QPaintEvent *event) +{ + QPainter painter(this); + QLinearGradient gradient(0, 0, width(), height()); + gradient.setColorAt(0, QColor("#64b3f4")); + gradient.setColorAt(1, QColor("#c2e59c")); + painter.fillRect(QRect(0, 0, width(), height()), gradient); +} + static void formatWindowFlags(QTextStream &str, Qt::WindowFlags flags) { str << "Window flags: " << hex << showbase << unsigned(flags) << noshowbase << dec << ' '; diff --git a/tests/manual/windowflags/previewwindow.h b/tests/manual/windowflags/previewwindow.h index 023ddd910c..8f8fc39211 100644 --- a/tests/manual/windowflags/previewwindow.h +++ b/tests/manual/windowflags/previewwindow.h @@ -30,11 +30,17 @@ #define PREVIEWWINDOW_H #include <QDialog> +#include <QRasterWindow> QT_BEGIN_NAMESPACE class QPlainTextEdit; QT_END_NAMESPACE +class PreviewWindow : public QRasterWindow +{ + void paintEvent(QPaintEvent *event); +}; + class PreviewWidget : public QWidget { Q_OBJECT |