QGIS API Documentation
4.3.0-Master (52aa6503bed)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
gui
editorwidgets
qgsbinarywidgetfactory.cpp
Go to the documentation of this file.
1
/***************************************************************************
2
qgsbinarywidgetfactory.cpp
3
-------------------------
4
Date : November 2018
5
Copyright : (C) 2018 Nyall Dawson
6
Email : nyall dot dawson at gmail dot com
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 "
qgsbinarywidgetfactory.h
"
17
18
#include "
qgsbinarywidgetwrapper.h
"
19
#include "
qgsdummyconfigdlg.h
"
20
#include "
qgsvectordataprovider.h
"
21
#include "
qgsvectorlayer.h
"
22
23
QgsBinaryWidgetFactory::QgsBinaryWidgetFactory
(
const
QString &
name
,
QgsMessageBar
*messageBar,
const
QIcon &
icon
)
24
:
QgsEditorWidgetFactory
(
name
,
icon
)
25
, mMessageBar( messageBar )
26
{}
27
28
QgsEditorWidgetWrapper
*
QgsBinaryWidgetFactory::create
(
QgsVectorLayer
*vl,
int
fieldIdx, QWidget *editor, QWidget *parent )
const
29
{
30
return
new
QgsBinaryWidgetWrapper
( vl, fieldIdx, editor, parent, mMessageBar );
31
}
32
33
QgsEditorConfigWidget
*
QgsBinaryWidgetFactory::configWidget
(
QgsVectorLayer
*vl,
int
fieldIdx, QWidget *parent )
const
34
{
35
return
new
QgsDummyConfigDlg
( vl, fieldIdx, parent, QObject::tr(
"A widget for interacting with binary (BLOB) fields."
) );
36
}
37
38
unsigned
int
QgsBinaryWidgetFactory::fieldScore
(
const
QgsVectorLayer
*vl,
int
fieldIdx )
const
39
{
40
const
QgsField
field = vl->
fields
().
field
( fieldIdx );
41
const
QMetaType::Type type = field.
type
();
42
// ByteArray fields only
43
return
type == QMetaType::Type::QByteArray ? 20 : 0;
44
}
QgsBinaryWidgetFactory::fieldScore
unsigned int fieldScore(const QgsVectorLayer *vl, int fieldIdx) const override
This method allows disabling this editor widget type for a certain field.
Definition
qgsbinarywidgetfactory.cpp:38
QgsBinaryWidgetFactory::QgsBinaryWidgetFactory
QgsBinaryWidgetFactory(const QString &name, QgsMessageBar *messageBar, const QIcon &icon=QIcon())
Constructor for QgsBinaryWidgetFactory, where name is a human-readable name for the factory and icon ...
Definition
qgsbinarywidgetfactory.cpp:23
QgsBinaryWidgetFactory::configWidget
QgsEditorConfigWidget * configWidget(QgsVectorLayer *vl, int fieldIdx, QWidget *parent) const override
Override this in your implementation.
Definition
qgsbinarywidgetfactory.cpp:33
QgsBinaryWidgetFactory::create
QgsEditorWidgetWrapper * create(QgsVectorLayer *vl, int fieldIdx, QWidget *editor, QWidget *parent) const override
Override this in your implementation.
Definition
qgsbinarywidgetfactory.cpp:28
QgsBinaryWidgetWrapper
Widget wrapper for binary (BLOB) fields.
Definition
qgsbinarywidgetwrapper.h:36
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
Encapsulate a field in an attribute table or data source.
Definition
qgsfield.h:56
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
QgsMessageBar
A bar for displaying non-blocking messages to the user.
Definition
qgsmessagebar.h:61
QgsVectorLayer
Represents a vector layer which manages a vector based dataset.
Definition
qgsvectorlayer.h:414
QgsVectorLayer::fields
QgsFields fields
Definition
qgsvectorlayer.h:422
qgsbinarywidgetfactory.h
qgsbinarywidgetwrapper.h
qgsdummyconfigdlg.h
qgsvectordataprovider.h
qgsvectorlayer.h
Generated on
for QGIS API Documentation by
1.17.0