summaryrefslogtreecommitdiff
path: root/src/dialogs/qquickabstractfiledialog_p.h
diff options
context:
space:
mode:
authorShawn Rutledge <shawn.rutledge@theqtcompany.com>2016-01-26 14:32:59 +0100
committerJani Heikkinen <jani.heikkinen@theqtcompany.com>2016-02-02 12:58:28 +0000
commit144bc5cedd9af5e62fe7210bac7df2c19d20c41b (patch)
tree69004abe481d029d995daf3af35286ebe666d49a /src/dialogs/qquickabstractfiledialog_p.h
parent4849fd5a81593b09f046073d9cd5be9742d45326 (diff)
downloadqtquickcontrols-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.h14
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;