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;
 
  248 class LinkItemDelegate : 
public QStyledItemDelegate
 
  259     explicit LinkItemDelegate( QObject *parent = 
nullptr );
 
  264     QWidget *createEditor( QWidget *parent, 
const QStyleOptionViewItem &option, 
const QModelIndex &index ) 
const override;
 
  274 class ConstraintItemDelegate : 
public QStyledItemDelegate
 
  285     explicit ConstraintItemDelegate( QObject *parent = 
nullptr );
 
  290     QWidget *createEditor( QWidget *parent, 
const QStyleOptionViewItem &option, 
const QModelIndex &index ) 
const override;
 
This class represents a coordinate reference system (CRS).
Map canvas is a class for displaying all GIS data types on a canvas.
Base class for all map layer types.
std::unique_ptr< GEOSGeometry, GeosDeleter > unique_ptr
Scoped GEOS pointer.