diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/controls/Private/AbstractCheckable.qml | 18 | ||||
-rw-r--r-- | src/controls/Private/qquickcontrolsettings.cpp | 12 | ||||
-rw-r--r-- | src/controls/Private/qquicktreemodeladaptor.cpp | 4 | ||||
-rw-r--r-- | src/controls/Styles/Android/qquickandroid9patch.cpp | 2 | ||||
-rw-r--r-- | src/controls/qquickmenu.cpp | 3 | ||||
-rw-r--r-- | src/controls/qquickmenubar.cpp | 4 | ||||
-rw-r--r-- | src/controls/qquickmenuitemcontainer_p.h | 2 | ||||
-rw-r--r-- | src/dialogs/Private/qquickfontlistmodel.cpp | 6 | ||||
-rw-r--r-- | src/dialogs/Private/qquickwritingsystemlistmodel.cpp | 4 | ||||
-rw-r--r-- | src/dialogs/plugin.cpp | 3 | ||||
-rw-r--r-- | src/dialogs/qquickfiledialog.cpp | 4 | ||||
-rw-r--r-- | src/layouts/qquicklayout.cpp | 5 | ||||
-rw-r--r-- | src/layouts/qquicklinearlayout.cpp | 8 | ||||
-rw-r--r-- | src/layouts/qquickstacklayout.cpp | 9 | ||||
-rw-r--r-- | src/widgets/qquickqfiledialog.cpp | 2 |
15 files changed, 60 insertions, 26 deletions
diff --git a/src/controls/Private/AbstractCheckable.qml b/src/controls/Private/AbstractCheckable.qml index bca626e0..38b19399 100644 --- a/src/controls/Private/AbstractCheckable.qml +++ b/src/controls/Private/AbstractCheckable.qml @@ -37,6 +37,7 @@ import QtQuick 2.2 import QtQuick.Controls 1.2 import QtQuick.Controls.Private 1.0 +import QtQuick.Window 2.2 /*! \qmltype AbstractCheckable @@ -100,6 +101,14 @@ Control { */ property string text + /*! + This property holds the button tooltip. + + \since QtQuick.Controls 1.7 + */ + property string tooltip + Accessible.description: tooltip + /*! \internal */ property var __cycleStatesHandler: cycleRadioButtonStates @@ -119,10 +128,19 @@ Control { onPressed: if (activeFocusOnPress) forceActiveFocus(); + onExited: Tooltip.hideText() + onCanceled: Tooltip.hideText() + onReleased: { if (containsMouse && (!exclusiveGroup || !checked)) __cycleStatesHandler(); } + + Timer { + interval: 1000 + running: mouseArea.containsMouse && !pressed && tooltip.length && mouseArea.Window.visibility !== Window.Hidden + onTriggered: Tooltip.showText(mouseArea, Qt.point(mouseArea.mouseX, mouseArea.mouseY), tooltip) + } } /*! \internal */ diff --git a/src/controls/Private/qquickcontrolsettings.cpp b/src/controls/Private/qquickcontrolsettings.cpp index 6f7dc729..9e76cb07 100644 --- a/src/controls/Private/qquickcontrolsettings.cpp +++ b/src/controls/Private/qquickcontrolsettings.cpp @@ -86,7 +86,8 @@ bool QQuickControlSettings::hasTouchScreen() const #if defined(Q_OS_ANDROID) return true; #else - foreach (const QTouchDevice *dev, QTouchDevice::devices()) + const auto devices = QTouchDevice::devices(); + for (const QTouchDevice *dev : devices) if (dev->type() == QTouchDevice::TouchScreen) return true; return false; @@ -146,7 +147,8 @@ static QString relativeStyleImportPath(QQmlEngine *engine, const QString &styleN { QString path; bool found = false; - foreach (const QString &import, engine->importPathList()) { + const auto importPathList = engine->importPathList(); + for (const QString &import : importPathList) { QDir dir(import + QStringLiteral("/QtQuick/Controls/Styles")); if (dir.exists(styleName)) { found = true; @@ -182,7 +184,8 @@ QQuickControlSettings::QQuickControlSettings(QQmlEngine *engine) const QString defaultStyle = defaultStyleName(); dir.setPath(relativeStyleImportPath(engine, defaultStyle)); dir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot); - foreach (const QString &styleDirectory, dir.entryList()) { + const auto list = dir.entryList(); + for (const QString &styleDirectory : list) { findStyle(engine, styleDirectory); } @@ -259,7 +262,8 @@ void QQuickControlSettings::findStyle(QQmlEngine *engine, const QString &styleNa StyleData styleData; - foreach (const QString &fileName, dir.entryList()) { + const auto list = dir.entryList(); + for (const QString &fileName : list) { // This assumes that there is only one library in the style directory, // which should be a safe assumption. If at some point it's determined // not to be safe, we'll have to resolve the init and path functions diff --git a/src/controls/Private/qquicktreemodeladaptor.cpp b/src/controls/Private/qquicktreemodeladaptor.cpp index 666fafc9..c357939a 100644 --- a/src/controls/Private/qquicktreemodeladaptor.cpp +++ b/src/controls/Private/qquicktreemodeladaptor.cpp @@ -314,7 +314,7 @@ QItemSelection QQuickTreeModelAdaptor::selectionForRowRange(const QModelIndex & QItemSelection sel; sel.reserve(ranges.count()); - foreach (const MIPair &pair, ranges) + for (const MIPair &pair : qAsConst(ranges)) sel.append(QItemSelectionRange(pair.first, pair.second)); return sel; @@ -587,7 +587,7 @@ void QQuickTreeModelAdaptor::modelLayoutChanged(const QList<QPersistentModelInde emit dataChanged(index(0), index(m_items.count() - 1)); } - Q_FOREACH (const QPersistentModelIndex &pmi, parents) { + for (const QPersistentModelIndex &pmi : parents) { if (m_expandedItems.contains(pmi)) { int row = itemIndex(pmi); if (row != -1) { diff --git a/src/controls/Styles/Android/qquickandroid9patch.cpp b/src/controls/Styles/Android/qquickandroid9patch.cpp index e85e2f29..d4d7172a 100644 --- a/src/controls/Styles/Android/qquickandroid9patch.cpp +++ b/src/controls/Styles/Android/qquickandroid9patch.cpp @@ -152,7 +152,7 @@ void QQuickAndroid9PatchDivs::fill(const QVariantList &divs, qreal size) data.reserve(divs.size() + 1); } - foreach (const QVariant &div, divs) + for (const QVariant &div : divs) data.append(div.toReal()); data.append(size); diff --git a/src/controls/qquickmenu.cpp b/src/controls/qquickmenu.cpp index 6ae20ff1..d0f5524f 100644 --- a/src/controls/qquickmenu.cpp +++ b/src/controls/qquickmenu.cpp @@ -815,7 +815,8 @@ void QQuickMenu1::append_menuItems(QQuickMenuItems *list, QObject *o) menu->m_containers.insert(o, menuItemContainer); menuItemContainer->setParentMenu(menu); ++menu->m_containersCount; - foreach (QObject *child, o->children()) { + const auto children = o->children(); + for (QObject *child : children) { if (QQuickMenuBase *item = qobject_cast<QQuickMenuBase *>(child)) { menuItemContainer->insertItem(-1, item); menu->setupMenuItem(item); diff --git a/src/controls/qquickmenubar.cpp b/src/controls/qquickmenubar.cpp index b795cd98..800105ca 100644 --- a/src/controls/qquickmenubar.cpp +++ b/src/controls/qquickmenubar.cpp @@ -101,13 +101,13 @@ void QQuickMenuBar1::setNativeNoNotify(bool native) m_platformMenuBar = QGuiApplicationPrivate::platformTheme()->createPlatformMenuBar(); if (m_platformMenuBar) { m_platformMenuBar->handleReparent(m_parentWindow); - foreach (QQuickMenu1 *menu, m_menus) + for (QQuickMenu1 *menu : qAsConst(m_menus)) m_platformMenuBar->insertMenu(menu->platformMenu(), 0 /* append */); } } } else { if (m_platformMenuBar) { - foreach (QQuickMenu1 *menu, m_menus) + for (QQuickMenu1 *menu : qAsConst(m_menus)) m_platformMenuBar->removeMenu(menu->platformMenu()); } delete m_platformMenuBar; diff --git a/src/controls/qquickmenuitemcontainer_p.h b/src/controls/qquickmenuitemcontainer_p.h index fe58bf92..c34f2eb3 100644 --- a/src/controls/qquickmenuitemcontainer_p.h +++ b/src/controls/qquickmenuitemcontainer_p.h @@ -59,7 +59,7 @@ public: void setParentMenu(QQuickMenu1 *parentMenu) { QQuickMenuBase::setParentMenu(parentMenu); - Q_FOREACH (QQuickMenuBase *item, m_menuItems) + for (QQuickMenuBase *item : qAsConst(m_menuItems)) item->setParentMenu(parentMenu); } diff --git a/src/dialogs/Private/qquickfontlistmodel.cpp b/src/dialogs/Private/qquickfontlistmodel.cpp index 0091f74f..c8bc9a41 100644 --- a/src/dialogs/Private/qquickfontlistmodel.cpp +++ b/src/dialogs/Private/qquickfontlistmodel.cpp @@ -138,8 +138,7 @@ void QQuickFontListModel::setWritingSystem(const QString &wSystem) QList<QFontDatabase::WritingSystem> wss; wss << QFontDatabase::Any; wss << d->db.writingSystems(); - QFontDatabase::WritingSystem ws; - foreach (ws, wss) { + for (QFontDatabase::WritingSystem ws : qAsConst(wss)) { if (wSystem == QFontDatabase::writingSystemName(ws)) { d->ws = ws; updateFamilies(); @@ -158,7 +157,8 @@ void QQuickFontListModel::updateFamilies() const QFontDialogOptions::FontDialogOptions options = d->options->options(); d->families.clear(); - foreach (const QString &family, d->db.families(d->ws)) { + const auto families = d->db.families(d->ws); + for (const QString &family : families) { if ((options & scalableMask) && (options & scalableMask) != scalableMask) { if (bool(options & QFontDialogOptions::ScalableFonts) != d->db.isSmoothlyScalable(family)) continue; diff --git a/src/dialogs/Private/qquickwritingsystemlistmodel.cpp b/src/dialogs/Private/qquickwritingsystemlistmodel.cpp index 2b26f366..20651c0e 100644 --- a/src/dialogs/Private/qquickwritingsystemlistmodel.cpp +++ b/src/dialogs/Private/qquickwritingsystemlistmodel.cpp @@ -127,8 +127,8 @@ QStringList QQuickWritingSystemListModel::writingSystems() const { Q_D(const QQuickWritingSystemListModel); QStringList result; - QFontDatabase::WritingSystem ws; - foreach (ws, d->wss) + result.reserve(d->wss.size()); + for (QFontDatabase::WritingSystem ws : qAsConst(d->wss)) result.append(QFontDatabase::writingSystemName(ws)); return result; diff --git a/src/dialogs/plugin.cpp b/src/dialogs/plugin.cpp index 65740024..5afddeca 100644 --- a/src/dialogs/plugin.cpp +++ b/src/dialogs/plugin.cpp @@ -199,7 +199,8 @@ protected: #if defined(Q_OS_IOS) mobileTouchPlatform = true; #elif defined(Q_OS_ANDROID) || defined(Q_OS_BLACKBERRY) || defined(Q_OS_QNX) || defined(Q_OS_WINRT) - foreach (const QTouchDevice *dev, QTouchDevice::devices()) + const auto devices = QTouchDevice::devices(); + for (const QTouchDevice *dev : devices) if (dev->type() == QTouchDevice::TouchScreen) mobileTouchPlatform = true; #endif diff --git a/src/dialogs/qquickfiledialog.cpp b/src/dialogs/qquickfiledialog.cpp index 6fb15314..642a0b00 100644 --- a/src/dialogs/qquickfiledialog.cpp +++ b/src/dialogs/qquickfiledialog.cpp @@ -171,8 +171,8 @@ void QQuickFileDialog::populateShortcuts() #ifndef Q_OS_IOS // on iOS, this returns only "/", which is never a useful path to read or write anything - QFileInfoList drives = QDir::drives(); - foreach (QFileInfo fi, drives) + const QFileInfoList drives = QDir::drives(); + for (const QFileInfo &fi : drives) addShortcut(fi.absoluteFilePath(), fi.absoluteFilePath(), fi.absoluteFilePath()); #endif diff --git a/src/layouts/qquicklayout.cpp b/src/layouts/qquicklayout.cpp index f28a7d07..aa54e11c 100644 --- a/src/layouts/qquicklayout.cpp +++ b/src/layouts/qquicklayout.cpp @@ -751,6 +751,11 @@ bool QQuickLayout::shouldIgnoreItem(QQuickItem *child, QQuickLayoutAttached *&in d->m_ignoredItems << child; return ignoreItem; } +struct QQuickItemPublic : public QQuickItem { + static bool isCompleted(QQuickItem *item) { + return static_cast<QQuickItemPublic*>(item)->isComponentComplete(); + } +}; void QQuickLayout::itemChange(ItemChange change, const ItemChangeData &value) { diff --git a/src/layouts/qquicklinearlayout.cpp b/src/layouts/qquicklinearlayout.cpp index 78cc635c..4dca329e 100644 --- a/src/layouts/qquicklinearlayout.cpp +++ b/src/layouts/qquicklinearlayout.cpp @@ -528,7 +528,7 @@ void QQuickGridLayoutBase::rearrange(const QSizeF &size) d->engine.setGeometries(QRectF(QPointF(0,0), size), d->styleInfo); d->m_rearranging = false; - foreach (QQuickItem *invalid, d->m_invalidateAfterRearrange) + for (QQuickItem *invalid : qAsConst(d->m_invalidateAfterRearrange)) invalidate(invalid); d->m_invalidateAfterRearrange.clear(); @@ -694,7 +694,8 @@ void QQuickGridLayout::insertLayoutItems() d->m_ignoredItems.clear(); QSizeF sizeHints[Qt::NSizeHints]; - foreach (QQuickItem *child, childItems()) { + const auto items = childItems(); + for (QQuickItem *child : items) { QQuickLayoutAttached *info = 0; // Will skip all items with effective maximum width/height == 0 @@ -875,7 +876,8 @@ void QQuickLinearLayout::insertLayoutItems() Q_D(QQuickLinearLayout); d->m_ignoredItems.clear(); QSizeF sizeHints[Qt::NSizeHints]; - foreach (QQuickItem *child, childItems()) { + const auto items = childItems(); + for (QQuickItem *child : items) { Q_ASSERT(child); QQuickLayoutAttached *info = 0; diff --git a/src/layouts/qquickstacklayout.cpp b/src/layouts/qquickstacklayout.cpp index 66513bfd..0785c502 100644 --- a/src/layouts/qquickstacklayout.cpp +++ b/src/layouts/qquickstacklayout.cpp @@ -188,7 +188,8 @@ int QQuickStackLayout::indexOf(QQuickItem *childItem) const { if (childItem) { int indexOfItem = 0; - foreach (QQuickItem *item, childItems()) { + const auto items = childItems(); + for (QQuickItem *item : items) { if (shouldIgnoreItem(item)) continue; if (childItem == item) @@ -201,7 +202,8 @@ int QQuickStackLayout::indexOf(QQuickItem *childItem) const QQuickItem *QQuickStackLayout::itemAt(int index) const { - foreach (QQuickItem *item, childItems()) { + const auto items = childItems(); + for (QQuickItem *item : items) { if (shouldIgnoreItem(item)) continue; if (index == 0) @@ -214,7 +216,8 @@ QQuickItem *QQuickStackLayout::itemAt(int index) const int QQuickStackLayout::itemCount() const { int count = 0; - foreach (QQuickItem *item, childItems()) { + const auto items = childItems(); + for (QQuickItem *item : items) { if (shouldIgnoreItem(item)) continue; ++count; diff --git a/src/widgets/qquickqfiledialog.cpp b/src/widgets/qquickqfiledialog.cpp index 7ebebf1f..4b69eb10 100644 --- a/src/widgets/qquickqfiledialog.cpp +++ b/src/widgets/qquickqfiledialog.cpp @@ -210,7 +210,7 @@ void QFileDialogHelper::filesSelected(const QStringList& paths) { QList<QUrl> pathUrls; pathUrls.reserve(paths.count()); - foreach (const QString &path, paths) + for (const QString &path : paths) pathUrls << QUrl::fromLocalFile(path); emit QPlatformFileDialogHelper::filesSelected(pathUrls); } |