summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2014-10-09 17:53:45 +0200
committerFrederik Gladhorn <frederik.gladhorn@digia.com>2014-10-09 17:53:45 +0200
commitee6706bff38ba778c16865b6fbab5a8d7c73c32b (patch)
tree5e30f2e45fd41238d7c279dd18755f9f168c4420 /examples
parentc4a3fa8e61d82b1755ede8f9040632511489d4ad (diff)
parent21b122f10628b22d71ced28146277258552736e2 (diff)
downloadqtactiveqt-ee6706bff38ba778c16865b6fbab5a8d7c73c32b.tar.gz
Merge remote-tracking branch 'origin/5.4' into dev
Change-Id: I1961b2fa015b4fc50b13379d357cb9be4af21631
Diffstat (limited to 'examples')
-rw-r--r--examples/activeqt/webbrowser/main.cpp22
1 files changed, 18 insertions, 4 deletions
diff --git a/examples/activeqt/webbrowser/main.cpp b/examples/activeqt/webbrowser/main.cpp
index 2f2992f..390bf6f 100644
--- a/examples/activeqt/webbrowser/main.cpp
+++ b/examples/activeqt/webbrowser/main.cpp
@@ -45,6 +45,8 @@
#include <QLabel>
#include <QStatusBar>
#include <QMainWindow>
+#include <QDesktopWidget>
+#include <QVersionNumber>
#include <QAbstractEventDispatcher>
#include <QSignalMapper>
#include <QVariant>
@@ -52,8 +54,10 @@
#include "ui_mainwindow.h"
-static const char qtProjectUrl[] = "qt-project.org";
+static const char qtUrl[] = "qt.io";
static const char iWebBrowser2DocumentationUrl[] = "http://msdn.microsoft.com/en-us/library/aa752127%28v=vs.85%29.aspx";
+static const char versionKey[] = "Version";
+static const char geometryKey[] = "Geometry";
struct Location {
Location(const QString &t = QString(), const QString &a = QString()) : title(t), address(a) {}
@@ -67,7 +71,7 @@ Q_DECLARE_METATYPE(Location)
static QList<Location> defaultBookmarks()
{
QList<Location> result;
- result.append(Location(QStringLiteral("Qt Project"), QLatin1String(qtProjectUrl)));
+ result.append(Location(QStringLiteral("Qt"), QLatin1String(qtUrl)));
result.append(Location(QStringLiteral("Digia"), QStringLiteral("http://qt.digia.com/")));
result.append(Location(QStringLiteral("IWebBrowser2 MSDN Documentation"), QLatin1String(iWebBrowser2DocumentationUrl)));
return result;
@@ -181,8 +185,16 @@ MainWindow::MainWindow()
QSettings settings(QSettings::IniFormat, QSettings::UserScope,
QCoreApplication::organizationName(), QCoreApplication::applicationName());
+ const QByteArray restoredGeometry = settings.value(QLatin1String(geometryKey)).toByteArray();
+ if (restoredGeometry.isEmpty() || !restoreGeometry(restoredGeometry)) {
+ const QRect availableGeometry = QApplication::desktop()->availableGeometry(this);
+ const QSize size = (availableGeometry.size() * 4) / 5;
+ resize(size);
+ move(availableGeometry.center() - QPoint(size.width(), size.height()) / 2);
+ }
+ QVersionNumber restoredVersion = QVersionNumber::fromString(settings.value(QLatin1String(versionKey)).toString());
QList<Location> bookmarks = readBookMarks(settings);
- if (bookmarks.isEmpty())
+ if (bookmarks.isEmpty() || restoredVersion.isNull())
bookmarks = defaultBookmarks();
foreach (const Location &bookmark, bookmarks)
addBookmark(bookmark);
@@ -195,6 +207,8 @@ MainWindow::~MainWindow()
QSettings settings(QSettings::IniFormat, QSettings::UserScope,
QCoreApplication::organizationName(), QCoreApplication::applicationName());
saveBookMarks(bookmarks(), settings);
+ settings.setValue(QLatin1String(versionKey), QLatin1String(QT_VERSION_STR));
+ settings.setValue(QLatin1String(geometryKey), saveGeometry());
}
QAction *MainWindow::addLocation(const Location &location, QMenu *menu)
@@ -329,7 +343,7 @@ int main(int argc, char ** argv)
MainWindow w;
const QStringList arguments = QCoreApplication::arguments();
const QString url = arguments.size() > 1 ?
- arguments.at(1) : QString::fromLatin1(qtProjectUrl);
+ arguments.at(1) : QString::fromLatin1(qtUrl);
w.navigate(url);
w.show();
return a.exec();