QGIS API Documentation
4.3.0-Master (16eddb2670e)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
gui
editorwidgets
qgsuuidwidgetfactory.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
qgsuuidwidgetfactory.cpp
3
--------------------------------------
4
Date : 5.1.2014
5
Copyright : (C) 2014 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
#include "
qgsuuidwidgetfactory.h
"
17
18
#include "
qgsdummyconfigdlg.h
"
19
#include "
qgsuuidwidgetwrapper.h
"
20
21
QgsUuidWidgetFactory::QgsUuidWidgetFactory
(
const
QString &
name
,
const
QIcon &
icon
)
22
:
QgsEditorWidgetFactory
(
name
,
icon
)
23
{}
24
25
26
QgsEditorWidgetWrapper
*
QgsUuidWidgetFactory::create
(
QgsVectorLayer
*vl,
int
fieldIdx, QWidget *editor, QWidget *parent )
const
27
{
28
return
new
QgsUuidWidgetWrapper
( vl, fieldIdx, editor, parent );
29
}
30
31
QgsEditorConfigWidget
*
QgsUuidWidgetFactory::configWidget
(
QgsVectorLayer
*vl,
int
fieldIdx, QWidget *parent )
const
32
{
33
return
new
QgsDummyConfigDlg
( vl, fieldIdx, parent, QObject::tr(
"Read-only field that generates a UUID if empty."
) );
34
}
35
36
unsigned
int
QgsUuidWidgetFactory::fieldScore
(
const
QgsVectorLayer
*vl,
int
fieldIdx )
const
37
{
38
const
QMetaType::Type type = vl->
fields
().
field
( fieldIdx ).
type
();
39
return
type == QMetaType::Type::QString ? 5 : 0;
40
}
41
42
bool
QgsUuidWidgetFactory::isReadOnly
()
const
43
{
44
return
true
;
45
}
QgsDummyConfigDlg
Configuration widget for dummy widgets.
Definition
qgsdummyconfigdlg.h:35
QgsEditorConfigWidget
Base class for widgets which configure editor widget types.
Definition
qgseditorconfigwidget.h:41
QgsEditorWidgetFactory::QgsEditorWidgetFactory
QgsEditorWidgetFactory(const QString &name, const QIcon &icon=QIcon())
Constructor.
Definition
qgseditorwidgetfactory.cpp:27
QgsEditorWidgetFactory::icon
QIcon icon() const
Returns the icon of this widget type.
Definition
qgseditorwidgetfactory.cpp:46
QgsEditorWidgetFactory::name
QString name() const
Returns the human readable identifier name of this widget type.
Definition
qgseditorwidgetfactory.cpp:41
QgsEditorWidgetWrapper
Manages an editor widget.
Definition
qgseditorwidgetwrapper.h:50
QgsField::type
QMetaType::Type type
Definition
qgsfield.h:63
QgsFields::field
QgsField field(int fieldIdx) const
Returns the field at particular index (must be in range 0..N-1).
Definition
qgsfields.cpp:214
QgsUuidWidgetFactory::fieldScore
unsigned int fieldScore(const QgsVectorLayer *vl, int fieldIdx) const override
This method allows disabling this editor widget type for a certain field.
Definition
qgsuuidwidgetfactory.cpp:36
QgsUuidWidgetFactory::create
QgsEditorWidgetWrapper * create(QgsVectorLayer *vl, int fieldIdx, QWidget *editor, QWidget *parent) const override
Override this in your implementation.
Definition
qgsuuidwidgetfactory.cpp:26
QgsUuidWidgetFactory::isReadOnly
bool isReadOnly() const override
Returns true if this widget is a read-only widget.
Definition
qgsuuidwidgetfactory.cpp:42
QgsUuidWidgetFactory::QgsUuidWidgetFactory
QgsUuidWidgetFactory(const QString &name, const QIcon &icon=QIcon())
Constructor for QgsUuidWidgetFactory, where name is a human-readable name for the factory and icon pr...
Definition
qgsuuidwidgetfactory.cpp:21
QgsUuidWidgetFactory::configWidget
QgsEditorConfigWidget * configWidget(QgsVectorLayer *vl, int fieldIdx, QWidget *parent) const override
Override this in your implementation.
Definition
qgsuuidwidgetfactory.cpp:31
QgsUuidWidgetWrapper
Wraps a uuid widget.
Definition
qgsuuidwidgetwrapper.h:35
QgsVectorLayer
Represents a vector layer which manages a vector based dataset.
Definition
qgsvectorlayer.h:414
QgsVectorLayer::fields
QgsFields fields
Definition
qgsvectorlayer.h:422
qgsdummyconfigdlg.h
qgsuuidwidgetfactory.h
qgsuuidwidgetwrapper.h
Generated on
for QGIS API Documentation by
1.17.0