QGIS API Documentation  3.14.0-Pi (9f7028fd23)
qgsmaplayerconfigwidgetfactory.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsmaplayerconfigwidgetfactoryfactory.h
3  --------------------------------------
4  Date : 9.7.2013
5  Copyright : (C) 2013 Matthias Kuhn
6  Email : matthias dot kuhn at gmx dot ch
7  ***************************************************************************
8  * *
9  * This program is free software; you can redistribute it and/or modify *
10  * it under the terms of the GNU General Public License as published by *
11  * the Free Software Foundation; either version 2 of the License, or *
12  * (at your option) any later version. *
13  * *
14  ***************************************************************************/
15 
16 #ifndef QGSMAPLAYERCONFIGWIDGETFACTORY_H
17 #define QGSMAPLAYERCONFIGWIDGETFACTORY_H
18 
19 #include <QListWidgetItem>
20 #include "qgis_gui.h"
21 #include "qgis_sip.h"
22 
23 class QgsMapLayer;
25 class QgsMapCanvas;
26 
34 {
35  public:
36 
39 
41  QgsMapLayerConfigWidgetFactory( const QString &title, const QIcon &icon );
42 
43  virtual ~QgsMapLayerConfigWidgetFactory() = default;
44 
49  virtual QIcon icon() const { return mIcon; }
50 
55  void setIcon( const QIcon &icon ) { mIcon = icon; }
56 
62  virtual QString title() const { return mTitle; }
63 
70  void setTitle( const QString &title ) { mTitle = title; }
71 
77  virtual bool supportsStyleDock() const { return false; }
78 
83  void setSupportsStyleDock( bool supports ) { mSupportsDock = supports; }
84 
90  virtual bool supportLayerPropertiesDialog() const { return false; }
91 
104  virtual QString layerPropertiesPagePositionHint() const;
105 
110  void setSupportLayerPropertiesDialog( bool supports ) { mSupportsProperties = supports; }
111 
116  virtual bool supportsLayer( QgsMapLayer *layer ) const;
117 
127  virtual QgsMapLayerConfigWidget *createWidget( QgsMapLayer *layer, QgsMapCanvas *canvas, bool dockWidget = true, QWidget *parent = nullptr ) const = 0 SIP_FACTORY;
128 
129  private:
130  QIcon mIcon;
131  QString mTitle;
132  bool mSupportsDock = true;
133  bool mSupportsProperties = true;
134 };
135 
136 #endif // QGSMAPLAYERCONFIGWIDGETFACTORY_H
QgsMapLayerConfigWidgetFactory::title
virtual QString title() const
The title of the panel.
Definition: qgsmaplayerconfigwidgetfactory.h:62
QgsMapCanvas
Definition: qgsmapcanvas.h:83
QgsMapLayerConfigWidgetFactory::setTitle
void setTitle(const QString &title)
Set the title for the interface.
Definition: qgsmaplayerconfigwidgetfactory.h:70
QgsMapLayerConfigWidgetFactory::supportsStyleDock
virtual bool supportsStyleDock() const
Flag if widget is supported for use in style dock.
Definition: qgsmaplayerconfigwidgetfactory.h:77
QgsMapLayerConfigWidget
A panel widget that can be shown in the map style dock.
Definition: qgsmaplayerconfigwidget.h:33
SIP_FACTORY
#define SIP_FACTORY
Definition: qgis_sip.h:76
QgsMapLayerConfigWidgetFactory::setIcon
void setIcon(const QIcon &icon)
Set the icon for the factory object.
Definition: qgsmaplayerconfigwidgetfactory.h:55
qgis_sip.h
QgsMapLayerConfigWidgetFactory::setSupportLayerPropertiesDialog
void setSupportLayerPropertiesDialog(bool supports)
Set support flag for style dock.
Definition: qgsmaplayerconfigwidgetfactory.h:110
QgsMapLayer
Definition: qgsmaplayer.h:81
QgsMapLayerConfigWidgetFactory::setSupportsStyleDock
void setSupportsStyleDock(bool supports)
Set support flag for style dock.
Definition: qgsmaplayerconfigwidgetfactory.h:83
QgsMapLayerConfigWidgetFactory::supportLayerPropertiesDialog
virtual bool supportLayerPropertiesDialog() const
Flag if widget is supported for use in layer properties dialog.
Definition: qgsmaplayerconfigwidgetfactory.h:90
QgsMapLayerConfigWidgetFactory::icon
virtual QIcon icon() const
The icon that will be shown in the UI for the panel.
Definition: qgsmaplayerconfigwidgetfactory.h:49
QgsMapLayerConfigWidgetFactory
Definition: qgsmaplayerconfigwidgetfactory.h:33