summaryrefslogtreecommitdiffstats
path: root/examples/widgets/widgets/icons/main.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-09-01 09:56:28 +0200
committerFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-09-14 19:20:06 +0000
commit8132cb655ad9f1479110d20c4f31f32a9da094d9 (patch)
treeff20cd03c881fc9180c08f366d555ac233a52294 /examples/widgets/widgets/icons/main.cpp
parentf3fd7b3d961ffed480e5851e594f6981f558f486 (diff)
Polish the Icons example.
- Remove unneeded member variables. - Use new connection syntax in createActions() to assemble the menu there, removing the createMenus() function. - Use a QButtonGroup for the sizes with the style metrics as id. - Streamline code, rename variables for clarity. - Introduce static functions returning the list of states/modes and their names in display order to IconPreviewArea, removing the duplicates. - Split actions to open sample icons provided from source directory or standard pictures location to make sample icons more prominently visible. - Check and display @2x images and add tooltips showing device pixel ratio and actual size. - HighDPI: Add groupbox displaying screen name and device pixel ratio, connect to screen changed signal and update icons panel accordingly. Add check box for toggling Qt::AA_UseHighDpiPixmaps. - Adjust documentation Task-number: QTBUG-18680 Task-number: QTBUG-46615 Change-Id: Ice96e9898f168ef2a30e9f46cb260ed57ae015f0 Reviewed-by: Topi Reiniƶ <topi.reinio@digia.com>
Diffstat (limited to 'examples/widgets/widgets/icons/main.cpp')
-rw-r--r--examples/widgets/widgets/icons/main.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/examples/widgets/widgets/icons/main.cpp b/examples/widgets/widgets/icons/main.cpp
index 842a474405..d6a823f1c7 100644
--- a/examples/widgets/widgets/icons/main.cpp
+++ b/examples/widgets/widgets/icons/main.cpp
@@ -39,13 +39,39 @@
****************************************************************************/
#include <QApplication>
+#include <QCommandLineParser>
+#include <QDesktopWidget>
#include "mainwindow.h"
+//! [45]
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
+ QCoreApplication::setApplicationName(MainWindow::tr("Icons"));
+ QCoreApplication::setApplicationVersion(QT_VERSION_STR);
+ QCommandLineParser commandLineParser;
+ commandLineParser.setSingleDashWordOptionMode(QCommandLineParser::ParseAsLongOptions);
+ commandLineParser.addHelpOption();
+ commandLineParser.addVersionOption();
+ QCommandLineOption noHighDpiPixmapOption("no-highdpi-pixmaps",
+ "Disable High DPI image loading (Qt::AA_UseHighDpiPixmaps)");
+ commandLineParser.addOption(noHighDpiPixmapOption);
+ commandLineParser.addPositionalArgument(MainWindow::tr("[file]"), MainWindow::tr("Icon file(s) to open."));
+ commandLineParser.process(QCoreApplication::arguments());
+
+ if (!commandLineParser.isSet(noHighDpiPixmapOption))
+ QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps);
+
MainWindow mainWin;
+ if (!commandLineParser.positionalArguments().isEmpty())
+ mainWin.loadImages(commandLineParser.positionalArguments());
+
+ const QRect availableGeometry = QApplication::desktop()->availableGeometry(&mainWin);
+ mainWin.resize(availableGeometry.width() / 2, availableGeometry.height() * 2 / 3);
+ mainWin.move((availableGeometry.width() - mainWin.width()) / 2, (availableGeometry.height() - mainWin.height()) / 2);
+
mainWin.show();
return app.exec();
}
+//! [45]