34 Q_DECLARE_PUBLIC(QQuickFolderBreadcrumbBar)
36 QQuickItem *createDelegateItem(QQmlComponent *component,
const QVariantMap &initialProperties);
37 static QString folderBaseName(
const QString &folderPath);
38 static QStringList crumbPathsForFolder(
const QUrl &folder);
43 void cancelUpButton();
44 void executeUpButton(
bool complete =
false);
47 void cancelTextField();
48 void executeTextField(
bool complete =
false);
49 void toggleTextFieldVisibility();
50 void textFieldAccepted();
52 void textFieldVisibleChanged();
53 void textFieldActiveFocusChanged();
54 void handleTextFieldShown();
55 void handleTextFieldHidden();
56 void ungrabEditPathShortcut();
58 QQuickFileDialogImpl *asFileDialog()
const;
59 QQuickFolderDialogImpl *asFolderDialog()
const;
60 bool isFileDialog()
const;
61 QUrl dialogFolder()
const;
62 void setDialogFolder(
const QUrl &folder);
64 qreal getContentWidth()
const override;
65 qreal getContentHeight()
const override;
66 void resizeContent() override;
68 void itemGeometryChanged(QQuickItem *item, QQuickGeometryChange change,
const QRectF &diff) override;
69 void itemImplicitWidthChanged(QQuickItem *item) override;
70 void itemImplicitHeightChanged(QQuickItem *item) override;
73 QQuickDialog *dialog =
nullptr;
74 QList<QString> folderPaths;
75 QQmlComponent *buttonDelegate =
nullptr;
76 QQmlComponent *separatorDelegate =
nullptr;
77 QQuickDeferredPointer<QQuickAbstractButton> upButton;
78 QQuickDeferredPointer<QQuickTextField> textField;
79 int editPathToggleShortcutId = 0;
80#if QT_CONFIG(shortcut)
81 int goUpShortcutId = 0;
83 int upButtonSpacing = 0;
84 bool repopulating =
false;