diff options
author | hjk <hjk@qt.io> | 2023-05-15 18:24:20 +0200 |
---|---|---|
committer | hjk <hjk@qt.io> | 2023-05-16 12:59:44 +0000 |
commit | 671621d79bc9fa8542562503a12d381f054b27e8 (patch) | |
tree | 6f11cefb7ca15d73ea2d69ea14f843a202179098 | |
parent | 1e595c6afe6032c04d42a41c4d030b3c7980008c (diff) | |
download | qt-creator-671621d79bc9fa8542562503a12d381f054b27e8.tar.gz |
Utils: Introduce a FilePathAspect
A shallow wrapper around a StringAspect with a suitable operator().
Change-Id: I0a5e121565d03573faa5c3f4085d72db2b9c3774
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
-rw-r--r-- | src/libs/utils/aspects.cpp | 22 | ||||
-rw-r--r-- | src/libs/utils/aspects.h | 8 |
2 files changed, 30 insertions, 0 deletions
diff --git a/src/libs/utils/aspects.cpp b/src/libs/utils/aspects.cpp index ae3841c647..541b258c0b 100644 --- a/src/libs/utils/aspects.cpp +++ b/src/libs/utils/aspects.cpp @@ -1325,6 +1325,28 @@ void StringAspect::makeCheckable(CheckBoxPlacement checkBoxPlacement, update(); } + +/*! + \class Utils::FilePathAspect + \inmodule QtCreator + + \brief A file path aspect is shallow wrapper around a Utils::StringAspect that + represents a file in the file system. + + It is displayed by default using Utils::PathChooser. + + The visual representation often contains a label in front of the display + of the actual value. + + \sa Utils::StringAspect +*/ + + +FilePathAspect::FilePathAspect() +{ + setDisplayStyle(PathChooserDisplay); +} + /*! \class Utils::ColorAspect \inmodule QtCreator diff --git a/src/libs/utils/aspects.h b/src/libs/utils/aspects.h index b610c1ffbe..1a2570ea83 100644 --- a/src/libs/utils/aspects.h +++ b/src/libs/utils/aspects.h @@ -439,6 +439,14 @@ protected: std::unique_ptr<Internal::StringAspectPrivate> d; }; +class QTCREATOR_UTILS_EXPORT FilePathAspect : public StringAspect +{ +public: + FilePathAspect(); + + FilePath operator()() const { return filePath(); } +}; + class QTCREATOR_UTILS_EXPORT IntegerAspect : public BaseAspect { Q_OBJECT |