QGIS API Documentation
2.8.6-Wien
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
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 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 QGSEDITORWIDGETFACTORY_H
17
#define QGSEDITORWIDGETFACTORY_H
18
19
#include "
qgseditorwidgetwrapper.h
"
20
#include "
qgsapplication.h
"
21
22
#include <QDomNode>
23
#include <QMap>
24
#include <QString>
25
26
class
QgsEditorConfigWidget
;
27
37
class
GUI_EXPORT
QgsEditorWidgetFactory
38
{
39
public
:
45
QgsEditorWidgetFactory
(
const
QString& name );
46
47
virtual
~
QgsEditorWidgetFactory
();
48
61
virtual
QgsEditorWidgetWrapper
* create(
QgsVectorLayer
* vl,
int
fieldIdx, QWidget* editor, QWidget* parent )
const
= 0;
62
68
QString name();
69
80
virtual
QgsEditorConfigWidget
* configWidget(
QgsVectorLayer
* vl,
int
fieldIdx, QWidget* parent )
const
= 0;
81
91
QgsEditorWidgetConfig
readEditorConfig(
const
QDomElement& configElement,
QgsVectorLayer
* layer,
int
fieldIdx );
92
102
virtual
void
writeConfig(
const
QgsEditorWidgetConfig
& config, QDomElement& configElement, QDomDocument& doc,
const
QgsVectorLayer
* layer,
int
fieldIdx );
103
113
inline
bool
supportsField
(
QgsVectorLayer
* vl,
int
fieldIdx ) {
return
isFieldSupported( vl, fieldIdx ); }
114
126
virtual
QString representValue(
QgsVectorLayer
* vl,
int
fieldIdx,
const
QgsEditorWidgetConfig
& config,
const
QVariant& cache,
const
QVariant& value )
const
;
127
137
virtual
QVariant createCache(
QgsVectorLayer
* vl,
int
fieldIdx,
const
QgsEditorWidgetConfig
& config );
138
148
virtual
QgsEditorWidgetConfig
readConfig(
const
QDomElement& configElement,
QgsVectorLayer
* layer,
int
fieldIdx );
149
150
private
:
162
virtual
bool
isFieldSupported(
QgsVectorLayer
* vl,
int
fieldIdx );
163
164
private
:
165
QString mName;
166
};
167
168
#endif // QGSEDITORWIDGETFACTORY_H
QgsEditorConfigWidget
This class should be subclassed for every configurable editor widget type.
Definition:
qgseditorconfigwidget.h:33
QgsEditorWidgetWrapper
Manages an editor widget Widget and wrapper share the same parent.
Definition:
qgseditorwidgetwrapper.h:41
QgsEditorWidgetFactory::supportsField
bool supportsField(QgsVectorLayer *vl, int fieldIdx)
Check if this editor widget type supports a certain field.
Definition:
qgseditorwidgetfactory.h:113
qgsapplication.h
QgsEditorWidgetFactory
Every attribute editor widget needs a factory, which inherits this class.
Definition:
qgseditorwidgetfactory.h:37
QgsEditorWidgetConfig
QMap< QString, QVariant > QgsEditorWidgetConfig
Holds a set of configuration parameters for a editor widget wrapper.
Definition:
qgseditorwidgetconfig.h:19
qgseditorwidgetwrapper.h
QgsVectorLayer
Represents a vector layer which manages a vector based data sets.
Definition:
qgsvectorlayer.h:474
Generated on Wed Mar 30 2016 18:49:01 for QGIS API Documentation by
1.8.11