17 #ifndef QgsAbstractMetadataBaseWIDGET_H
18 #define QgsAbstractMetadataBaseWIDGET_H
20 #include <QStandardItemModel>
21 #include <QStyledItemDelegate>
22 #include <QStringListModel>
28 #include "ui_qgsmetadatawidget.h"
44 Q_PROPERTY( QString title READ title WRITE setTitle NOTIFY titleChanged )
73 void setMode( Mode mode );
116 bool checkMetadata();
126 void acceptMetadata();
131 static QMap<QString, QString> parseLanguages();
136 static QStringList parseLicenses();
142 static QStringList parseLinkTypes();
148 static QStringList parseMimeTypes();
153 static QMap<QString, QString> parseTypes();
168 QString title() const;
180 void setTitle( const QString &title );
192 void titleChanged( const QString &title );
195 void removeSelectedCategories();
197 void fillSourceFromLayer();
198 void fillCrsFromLayer();
199 void fillCrsFromProvider();
200 void addDefaultCategories();
201 void addNewCategory();
202 void addVocabulary();
203 void removeSelectedVocabulary();
205 void removeSelectedLicence();
207 void removeSelectedRight();
208 void addConstraint();
209 void removeSelectedConstraint();
211 void removeSelectedAddress();
213 void removeSelectedLink();
215 void removeSelectedHistory();
220 void setUiFromMetadata();
221 void syncFromCategoriesTabToKeywordsTab();
223 Mode mMode = LayerMetadata;
225 QStringList mDefaultCategories;
229 QStandardItemModel *mConstraintsModel =
nullptr;
230 QStandardItemModel *mLinksModel =
nullptr;
231 QStringListModel *mCategoriesModel =
nullptr;
232 QStringListModel *mDefaultCategoriesModel =
nullptr;
233 QStringListModel *mRightsModel =
nullptr;
234 QStringListModel *mHistoryModel =
nullptr;
264 QWidget *createEditor( QWidget *parent,
const QStyleOptionViewItem &option,
const QModelIndex &index )
const override;
290 QWidget *createEditor( QWidget *parent,
const QStyleOptionViewItem &option,
const QModelIndex &index )
const override;