QGIS API Documentation
3.20.0-Odense (decaadbb31)
src
gui
editorwidgets
core
qgseditorwidgetfactory.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgseditorwidgetfactory.h
3
--------------------------------------
4
Date : 21.4.2013
5
Copyright : (C) 2013 Matthias Kuhn
6
Email : matthias at opengis 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 QGSEDITORWIDGETFACTORY_H
17
#define QGSEDITORWIDGETFACTORY_H
18
19
#include <QDomNode>
20
#include "
qgis_sip.h
"
21
#include <QMap>
22
#include <QString>
23
#include <QVariant>
24
#include "qgis_gui.h"
25
26
class
QgsEditorConfigWidget
;
27
class
QgsEditorWidgetWrapper
;
28
class
QgsVectorLayer
;
29
class
QWidget;
30
class
QgsSearchWidgetWrapper
;
31
42
class
GUI_EXPORT
QgsEditorWidgetFactory
43
{
44
public
:
45
51
QgsEditorWidgetFactory
(
const
QString &name );
52
53
virtual
~QgsEditorWidgetFactory
() =
default
;
54
67
virtual
QgsEditorWidgetWrapper
*
create
(
QgsVectorLayer
*vl,
int
fieldIdx, QWidget *editor, QWidget *parent )
const
= 0
SIP_FACTORY
;
68
69
virtual
QgsSearchWidgetWrapper
*createSearchWidget(
QgsVectorLayer
*vl,
int
fieldIdx, QWidget *parent )
const
SIP_FACTORY
;
70
76
QString name();
77
88
virtual
QgsEditorConfigWidget
*
configWidget
(
QgsVectorLayer
*vl,
int
fieldIdx, QWidget *parent )
const
= 0
SIP_FACTORY
;
89
99
inline
bool
supportsField
(
const
QgsVectorLayer
*vl,
int
fieldIdx ) {
return
fieldScore( vl, fieldIdx ) > 0; }
100
109
virtual
QHash<const char *, int>
supportedWidgetTypes
() {
return
QHash<const char *, int>(); }
SIP_SKIP
110
130
virtual
unsigned
int
fieldScore(
const
QgsVectorLayer
*vl,
int
fieldIdx )
const
;
131
132
private
:
133
QString mName;
134
};
135
136
#endif
// QGSEDITORWIDGETFACTORY_H
QgsEditorConfigWidget
This class should be subclassed for every configurable editor widget type.
Definition:
qgseditorconfigwidget.h:39
QgsEditorWidgetFactory
Every attribute editor widget needs a factory, which inherits this class.
Definition:
qgseditorwidgetfactory.h:43
QgsEditorWidgetFactory::create
virtual QgsEditorWidgetWrapper * create(QgsVectorLayer *vl, int fieldIdx, QWidget *editor, QWidget *parent) const =0
Override this in your implementation.
QgsEditorWidgetFactory::supportedWidgetTypes
virtual QHash< const char *, int > supportedWidgetTypes()
Returns a list of widget types which this editor widget supports.
Definition:
qgseditorwidgetfactory.h:109
QgsEditorWidgetFactory::~QgsEditorWidgetFactory
virtual ~QgsEditorWidgetFactory()=default
QgsEditorWidgetFactory::configWidget
virtual QgsEditorConfigWidget * configWidget(QgsVectorLayer *vl, int fieldIdx, QWidget *parent) const =0
Override this in your implementation.
QgsEditorWidgetFactory::supportsField
bool supportsField(const QgsVectorLayer *vl, int fieldIdx)
Check if this editor widget type supports a certain field.
Definition:
qgseditorwidgetfactory.h:99
QgsEditorWidgetWrapper
Manages an editor widget Widget and wrapper share the same parent.
Definition:
qgseditorwidgetwrapper.h:48
QgsSearchWidgetWrapper
Shows a search widget on a filter form.
Definition:
qgssearchwidgetwrapper.h:86
QgsVectorLayer
Represents a vector layer which manages a vector based data sets.
Definition:
qgsvectorlayer.h:393
qgis_sip.h
SIP_SKIP
#define SIP_SKIP
Definition:
qgis_sip.h:126
SIP_FACTORY
#define SIP_FACTORY
Definition:
qgis_sip.h:76
Generated on Sun Jun 20 2021 10:45:59 for QGIS API Documentation by
1.9.1