diff options
author | Shawn Rutledge <shawn.rutledge@theqtcompany.com> | 2016-01-26 14:32:59 +0100 |
---|---|---|
committer | Jani Heikkinen <jani.heikkinen@theqtcompany.com> | 2016-02-02 12:58:28 +0000 |
commit | 144bc5cedd9af5e62fe7210bac7df2c19d20c41b (patch) | |
tree | 69004abe481d029d995daf3af35286ebe666d49a /src/dialogs/qquickabstractfiledialog_p.h | |
parent | 4849fd5a81593b09f046073d9cd5be9742d45326 (diff) | |
download | qtquickcontrols-144bc5cedd9af5e62fe7210bac7df2c19d20c41b.tar.gz |
FileDialog: move shortcuts properties up to QQuickAbstractFileDialog
QQuickQFileDialog does not inherit QQuickFileDialog, so the documented
shortcuts property was not defined if your platform happens to use the
QFileDialog implementation. As long as we are moving the public
property, it's easiest to move everything related to shortcuts.
Task-number: QTBUG-50673
Change-Id: Ic2baf4a3c83ca12edf11d7d011aaa78a389e0fde
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
Diffstat (limited to 'src/dialogs/qquickabstractfiledialog_p.h')
-rw-r--r-- | src/dialogs/qquickabstractfiledialog_p.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/dialogs/qquickabstractfiledialog_p.h b/src/dialogs/qquickabstractfiledialog_p.h index 9275c1da..8f094783 100644 --- a/src/dialogs/qquickabstractfiledialog_p.h +++ b/src/dialogs/qquickabstractfiledialog_p.h @@ -48,6 +48,8 @@ // We mean it. // +#include <QJSValue> +#include <QStandardPaths> #include <QQuickView> #include <QtGui/qpa/qplatformdialoghelper.h> #include <qpa/qplatformtheme.h> @@ -69,6 +71,8 @@ class QQuickAbstractFileDialog : public QQuickAbstractDialog Q_PROPERTY(QUrl fileUrl READ fileUrl NOTIFY selectionAccepted) Q_PROPERTY(QList<QUrl> fileUrls READ fileUrls NOTIFY selectionAccepted) Q_PROPERTY(bool sidebarVisible READ sidebarVisible WRITE setSidebarVisible NOTIFY sidebarVisibleChanged) + Q_PROPERTY(QJSValue shortcuts READ shortcuts NOTIFY shortcutsChanged) // map of QStandardDirectory names to QUrls + Q_PROPERTY(QJSValue __shortcuts READ __shortcuts NOTIFY shortcutsChanged) // map of details for QML dialog implementations public: QQuickAbstractFileDialog(QObject *parent = 0); @@ -86,6 +90,8 @@ public: QUrl fileUrl() const; virtual QList<QUrl> fileUrls() const = 0; bool sidebarVisible() const { return m_sidebarVisible; } + QJSValue shortcuts(); + QJSValue __shortcuts(); public Q_SLOTS: void setVisible(bool v); @@ -106,13 +112,19 @@ Q_SIGNALS: void fileModeChanged(); void selectionAccepted(); void sidebarVisibleChanged(); + void shortcutsChanged(); protected: - virtual void updateModes(); + void updateModes(); + void addShortcut(const QString &name, const QString &visibleName, const QString &path); + void addShortcutFromStandardLocation(const QString &name, QStandardPaths::StandardLocation loc, bool local = true); + void populateShortcuts(); protected: QPlatformFileDialogHelper *m_dlgHelper; QSharedPointer<QFileDialogOptions> m_options; + QJSValue m_shortcuts; + QJSValue m_shortcutDetails; bool m_selectExisting; bool m_selectMultiple; bool m_selectFolder; |