17 #ifndef QGSFILEWIDGET_H 18 #define QGSFILEWIDGET_H 23 class QgsFileDropEdit;
40 if ( qobject_cast<QgsFileWidget *>( sipCpp ) )
41 sipType = sipType_QgsFileWidget;
49 Q_PROPERTY(
bool fileWidgetButtonVisible READ fileWidgetButtonVisible WRITE setFileWidgetButtonVisible )
50 Q_PROPERTY(
bool useLink READ useLink WRITE setUseLink )
51 Q_PROPERTY(
bool fullUrl READ fullUrl WRITE setFullUrl )
52 Q_PROPERTY( QString dialogTitle READ dialogTitle WRITE setDialogTitle )
53 Q_PROPERTY( QString filter READ filter WRITE setFilter )
54 Q_PROPERTY( QString defaultRoot READ defaultRoot WRITE setDefaultRoot )
55 Q_PROPERTY(
StorageMode storageMode READ storageMode WRITE setStorageMode )
56 Q_PROPERTY(
RelativeStorage relativeStorage READ relativeStorage WRITE setRelativeStorage )
100 static QStringList splitFilePaths(
const QString &path );
103 void setFilePath( QString path );
106 void setReadOnly(
bool readOnly );
109 QString dialogTitle()
const;
115 void setDialogTitle(
const QString &title );
118 QString filter()
const;
124 void setFilter(
const QString &filter );
149 bool fileWidgetButtonVisible()
const;
151 void setFileWidgetButtonVisible(
bool visible );
154 bool useLink()
const;
156 void setUseLink(
bool useLink );
159 bool fullUrl()
const;
161 void setFullUrl(
bool fullUrl );
164 QString defaultRoot()
const;
166 void setDefaultRoot(
const QString &defaultRoot );
190 void fileChanged(
const QString &path );
201 void openFileDialog();
202 void textEdited(
const QString &path );
206 bool mButtonVisible =
true;
207 bool mUseLink =
false;
208 bool mFullUrl =
false;
209 QString mDialogTitle;
211 QString mSelectedFilter;
212 QString mDefaultRoot;
213 bool mConfirmOverwrite =
true;
217 QLabel *mLinkLabel =
nullptr;
218 QgsFileDropEdit *mLineEdit =
nullptr;
219 QToolButton *mFileWidgetButton =
nullptr;
220 QHBoxLayout *mLayout =
nullptr;
223 QString toUrl(
const QString &path )
const;
226 QString relativePath(
const QString &filePath,
bool removeRelative )
const;
228 friend class TestQgsFileWidget;
255 void setFilters(
const QString &filters );
259 void dragEnterEvent( QDragEnterEvent *event )
override;
260 void dragLeaveEvent( QDragLeaveEvent *event )
override;
261 void dropEvent( QDropEvent *event )
override;
262 void paintEvent( QPaintEvent *e )
override;
267 QString acceptableFilePath( QDropEvent *event )
const;
269 QStringList mAcceptableExtensions;
272 friend class TestQgsFileWidget;
278 #endif // QGSFILEWIDGET_H
QLineEdit subclass with built in support for clearing the widget's value and handling custom null val...
#define SIP_CONVERT_TO_SUBCLASS_CODE(code)