QGIS API Documentation  2.11.0-Master
Public Slots | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
QgsWidgetWrapper Class Referenceabstract

Manages an editor widget Widget and wrapper share the same parent. More...

#include <qgswidgetwrapper.h>

Inheritance diagram for QgsWidgetWrapper:
Inheritance graph
[legend]

Public Slots

virtual void setEnabled (bool enabled)
 Is used to enable or disable the edit functionality of the managed widget. More...
 
virtual void setFeature (const QgsFeature &feature)=0
 Is called, when the value of the widget needs to be changed. More...
 

Public Member Functions

 QgsWidgetWrapper (QgsVectorLayer *vl, QWidget *editor=0, QWidget *parent=0)
 Create a new widget wrapper. More...
 
QVariant config (QString key, QVariant defaultVal=QVariant())
 Use this inside your overriden classes to access the configuration. More...
 
const QgsEditorWidgetConfig config ()
 Returns the whole config. More...
 
const QgsAttributeEditorContextcontext ()
 Returns information about the context in which this widget is shown. More...
 
QgsVectorLayerlayer ()
 Access the QgsVectorLayer, you are working on. More...
 
void setConfig (const QgsEditorWidgetConfig &config)
 Will set the config of this wrapper to the specified config. More...
 
void setContext (const QgsAttributeEditorContext &context)
 Set the context in which this widget is shown. More...
 
virtual bool valid ()=0
 Return true if the widget has been properly initialized. More...
 
QWidgetwidget ()
 Access the widget managed by this wrapper. More...
 
template<class T >
T * widget ()
 Access the widget managed by this wrapper and cast it to a given type Example: QPushButton* pb = wrapper->widget<QPushButton*>();. More...
 
- Public Member Functions inherited from QObject
 QObject (QObject *parent)
 
 QObject (QObject *parent, const char *name)
 
virtual  ~QObject ()
 
bool blockSignals (bool block)
 
QObjectchild (const char *objName, const char *inheritsClass, bool recursiveSearch) const
 
const QObjectList & children () const
 
const char * className () const
 
bool connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const
 
void deleteLater ()
 
void destroyed (QObject *obj)
 
bool disconnect (const QObject *receiver, const char *method)
 
bool disconnect (const char *signal, const QObject *receiver, const char *method)
 
void dumpObjectInfo ()
 
void dumpObjectTree ()
 
QList< QByteArraydynamicPropertyNames () const
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
findChild (const QString &name) const
 
QList< T > findChildren (const QRegExp &regExp) const
 
QList< T > findChildren (const QString &name) const
 
bool inherits (const char *className) const
 
void insertChild (QObject *object)
 
void installEventFilter (QObject *filterObj)
 
bool isA (const char *className) const
 
bool isWidgetType () const
 
void killTimer (int id)
 
virtual const QMetaObjectmetaObject () const
 
void moveToThread (QThread *targetThread)
 
const char * name () const
 
const char * name (const char *defaultName) const
 
QString objectName () const
 
QObjectparent () const
 
QVariant property (const char *name) const
 
void removeChild (QObject *object)
 
void removeEventFilter (QObject *obj)
 
void setName (const char *name)
 
void setObjectName (const QString &name)
 
void setParent (QObject *parent)
 
bool setProperty (const char *name, const QVariant &value)
 
bool signalsBlocked () const
 
int startTimer (int interval)
 
QThreadthread () const
 

Static Public Member Functions

static QgsWidgetWrapperfromWidget (QWidget *widget)
 Will return a wrapper for a given widget. More...
 
- Static Public Member Functions inherited from QObject
bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 

Protected Member Functions

virtual QWidgetcreateWidget (QWidget *parent)=0
 This method should create a new widget with the provided parent. More...
 
virtual void initWidget (QWidget *editor)
 This method should initialize the editor widget with runtime data. More...
 
- Protected Member Functions inherited from QObject
bool checkConnectArgs (const char *signal, const QObject *object, const char *method)
 
virtual void childEvent (QChildEvent *event)
 
virtual void connectNotify (const char *signal)
 
virtual void customEvent (QEvent *event)
 
virtual void disconnectNotify (const char *signal)
 
int receivers (const char *signal) const
 
QObjectsender () const
 
int senderSignalIndex () const
 
virtual void timerEvent (QTimerEvent *event)
 

Additional Inherited Members

- Static Protected Member Functions inherited from QObject
QByteArray normalizeSignalSlot (const char *signalSlot)
 
- Properties inherited from QObject
 objectName
 

Detailed Description

Manages an editor widget Widget and wrapper share the same parent.

A wrapper controls one attribute editor widget and is able to create a default widget or use a pre-existent widget. It is able to set the widget to the value implied by a field of a vector layer, or return the value it currently holds. Every time it is changed it has to emit a valueChanged signal. If it fails to do so, there is no guarantee that the changed status of the widget will be saved.

Definition at line 39 of file qgswidgetwrapper.h.

Constructor & Destructor Documentation

QgsWidgetWrapper::QgsWidgetWrapper ( QgsVectorLayer vl,
QWidget editor = 0,
QWidget parent = 0 
)
explicit

Create a new widget wrapper.

Parameters
vlThe layer on which the field is
editorAn editor widget. Can be NULL if one should be autogenerated.
parentA parent widget for this widget wrapper and the created widget.

Definition at line 21 of file qgswidgetwrapper.cpp.

Member Function Documentation

QVariant QgsWidgetWrapper::config ( QString  key,
QVariant  defaultVal = QVariant() 
)

Use this inside your overriden classes to access the configuration.

Parameters
keyThe configuration option you want to load
defaultValDefault value
Returns
the value assigned to this configuration option

Definition at line 55 of file qgswidgetwrapper.cpp.

const QgsEditorWidgetConfig QgsWidgetWrapper::config ( )

Returns the whole config.

Returns
The configuration

Definition at line 64 of file qgswidgetwrapper.cpp.

const QgsAttributeEditorContext & QgsWidgetWrapper::context ( )

Returns information about the context in which this widget is shown.

Returns
context information

Definition at line 69 of file qgswidgetwrapper.cpp.

virtual QWidget* QgsWidgetWrapper::createWidget ( QWidget parent)
protectedpure virtual

This method should create a new widget with the provided parent.

This will only be called if the form did not already provide a widget, so it is not guaranteed to be called! You should not do initialisation stuff, which also has to be done for custom editor widgets inside this method. Things like filling comboboxes and assigning other data which will also be used to make widgets on forms created in the QtDesigner usable should be assigned in initWidget(QWidget*).

Parameters
parentYou should set this parent on the created widget.
Returns
A new widget

Implemented in QgsValueRelationWidgetWrapper, QgsValueRelationSearchWidgetWrapper, QgsDateTimeEditWrapper, QgsRangeWidgetWrapper, QgsPhotoWidgetWrapper, QgsRelationReferenceWidgetWrapper, QgsTextEditWrapper, QgsValueMapWidgetWrapper, QgsCheckboxWidgetWrapper, QgsDefaultSearchWidgetWrapper, QgsFileNameWidgetWrapper, QgsUniqueValuesWidgetWrapper, QgsUuidWidgetWrapper, QgsWebViewWidgetWrapper, QgsColorWidgetWrapper, QgsHiddenWidgetWrapper, QgsClassificationWidgetWrapper, QgsEnumerationWidgetWrapper, QgsValueMapSearchWidgetWrapper, and QgsRelationWidgetWrapper.

QgsWidgetWrapper * QgsWidgetWrapper::fromWidget ( QWidget widget)
static

Will return a wrapper for a given widget.

Parameters
widgetThe widget which was created by a wrapper
Returns
The wrapper for the widget or NULL

Definition at line 79 of file qgswidgetwrapper.cpp.

void QgsWidgetWrapper::initWidget ( QWidget editor)
protectedvirtual
QgsVectorLayer * QgsWidgetWrapper::layer ( )

Access the QgsVectorLayer, you are working on.

Returns
The layer
See also
field()

Definition at line 74 of file qgswidgetwrapper.cpp.

void QgsWidgetWrapper::setConfig ( const QgsEditorWidgetConfig config)

Will set the config of this wrapper to the specified config.

Parameters
configThe config for this wrapper

Definition at line 45 of file qgswidgetwrapper.cpp.

void QgsWidgetWrapper::setContext ( const QgsAttributeEditorContext context)

Set the context in which this widget is shown.

Parameters
contextcontext information

Definition at line 50 of file qgswidgetwrapper.cpp.

void QgsWidgetWrapper::setEnabled ( bool  enabled)
virtualslot

Is used to enable or disable the edit functionality of the managed widget.

By default this will not change the enabled state of the widget

Parameters
enabledEnable or Disable?

Reimplemented in QgsEditorWidgetWrapper.

Definition at line 89 of file qgswidgetwrapper.cpp.

virtual void QgsWidgetWrapper::setFeature ( const QgsFeature feature)
pure virtualslot

Is called, when the value of the widget needs to be changed.

Update the widget representation to reflect the new value.

Parameters
featureThe new feature
virtual bool QgsWidgetWrapper::valid ( )
pure virtual

Return true if the widget has been properly initialized.

This acts as hint for the calling party if this wrapper can be used after initializing it. If it cannot be used this is a hint tothe caller that he may try to find another suitable widget type instead.

Returns
Validity status of this widget.
Note
Added in 2.12

Implemented in QgsValueRelationWidgetWrapper, QgsDateTimeEditWrapper, QgsRangeWidgetWrapper, QgsRelationReferenceWidgetWrapper, QgsPhotoWidgetWrapper, QgsTextEditWrapper, QgsValueMapWidgetWrapper, QgsCheckboxWidgetWrapper, QgsDefaultSearchWidgetWrapper, QgsUniqueValuesWidgetWrapper, QgsUuidWidgetWrapper, QgsWebViewWidgetWrapper, QgsFileNameWidgetWrapper, QgsColorWidgetWrapper, QgsHiddenWidgetWrapper, QgsClassificationWidgetWrapper, QgsEnumerationWidgetWrapper, and QgsRelationWidgetWrapper.

QWidget * QgsWidgetWrapper::widget ( )

Access the widget managed by this wrapper.

Returns
The widget

Definition at line 30 of file qgswidgetwrapper.cpp.

template<class T >
T* QgsWidgetWrapper::widget ( )
inline

Access the widget managed by this wrapper and cast it to a given type Example: QPushButton* pb = wrapper->widget<QPushButton*>();.

Returns
The widget as template type or NULL, if it cannot be cast to this type.

Definition at line 66 of file qgswidgetwrapper.h.


The documentation for this class was generated from the following files: