Manual High DPI test: Add test for window masks.

Add a toggle for setting a triangular mask on the main window.

Task-number: QTBUG-50938
Change-Id: Id4a3ee0b80e170f4ee1d195e60ce7bfa8e524359
Reviewed-by: Shawn Rutledge <shawn.rutledge@theqtcompany.com>
This commit is contained in:
Friedemann Kleint 2016-02-09 13:40:42 +01:00
parent e830fa8fc2
commit 9c3c350627

View File

@ -380,16 +380,22 @@ Labels::Labels()
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow();
QMenu *addNewMenu(const QString &title, int itemCount = 5);
private slots:
void maskActionToggled(bool t);
private:
QIcon qtIcon;
QIcon qtIcon1x;
QIcon qtIcon2x;
QToolBar *fileToolBar;
int menuCount;
QAction *m_maskAction;
};
MainWindow::MainWindow()
@ -408,7 +414,12 @@ MainWindow::MainWindow()
addNewMenu("&Edit");
addNewMenu("&Build");
addNewMenu("&Debug", 4);
addNewMenu("&Transmogrify", 7);
QMenu *menu = addNewMenu("&Transmogrify", 7);
menu->addSeparator();
m_maskAction = menu->addAction("Mask");
m_maskAction->setCheckable(true);
connect(m_maskAction, &QAction::toggled, this, &MainWindow::maskActionToggled);
fileToolBar->addAction(m_maskAction);
addNewMenu("T&ools");
addNewMenu("&Help", 2);
}
@ -431,6 +442,16 @@ QMenu *MainWindow::addNewMenu(const QString &title, int itemCount)
return menu;
}
void MainWindow::maskActionToggled(bool t)
{
if (t) {
QVector<QPoint> upperLeftTriangle;
upperLeftTriangle << QPoint(0, 0) << QPoint(width(), 0) << QPoint(0, height());
setMask(QRegion(QPolygon(upperLeftTriangle)));
} else {
clearMask();
}
}
class StandardIcons : public QWidget
{