QGIS API Documentation  2.5.0-Master
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Slots | Signals | Public Member Functions | Static Public Member Functions | Protected Slots | List of all members
QgsEditorWidgetWrapper Class Referenceabstract

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

#include <qgseditorwidgetwrapper.h>

Inheritance diagram for QgsEditorWidgetWrapper:
Inheritance graph
[legend]

Public Slots

void setFeature (const QgsFeature &feature)
 Will be called when the feature changes. More...
 
virtual void setValue (const QVariant &value)=0
 Is called, when the value of the widget needs to be changed. More...
 
- Public Slots inherited from QgsWidgetWrapper
virtual void setFeature (const QgsFeature &feature)=0
 Is called, when the value of the widget needs to be changed. More...
 

Signals

void valueChanged (const QVariant &value)
 Emit this signal, whenever the value changed. More...
 

Public Member Functions

 QgsEditorWidgetWrapper (QgsVectorLayer *vl, int fieldIdx, QWidget *editor=0, QWidget *parent=0)
 Create a new widget wrapper. More...
 
virtual QVariant value ()=0
 Will be used to access the widget's value. More...
 
int fieldIdx ()
 Access the field index. More...
 
QgsField field ()
 Access the field. More...
 
void setEnabled (bool enabled)
 Is used to enable or disable the edit functionality of the managed widget. More...
 
- Public Member Functions inherited from QgsWidgetWrapper
 QgsWidgetWrapper (QgsVectorLayer *vl, QWidget *editor=0, QWidget *parent=0)
 Create a new widget wrapper. More...
 
QWidget * widget ()
 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...
 
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...
 
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...
 

Static Public Member Functions

static QgsEditorWidgetWrapperfromWidget (QWidget *widget)
 Will return a wrapper for a given widget. More...
 
- Static Public Member Functions inherited from QgsWidgetWrapper
static QgsWidgetWrapperfromWidget (QWidget *widget)
 Will return a wrapper for a given widget. More...
 

Protected Slots

void valueChanged (const QString &value)
 If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More...
 
void valueChanged (int value)
 If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More...
 
void valueChanged (double value)
 If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More...
 
void valueChanged (bool value)
 If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More...
 
void valueChanged (qlonglong value)
 If you emit to this slot in your implementation, an appropriate change notification will be broadcasted. More...
 
void valueChanged ()
 Will call the value() method to determine the emitted value. More...
 

Additional Inherited Members

- Protected Member Functions inherited from QgsWidgetWrapper
virtual QWidget * createWidget (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...
 

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.

Constructor & Destructor Documentation

QgsEditorWidgetWrapper::QgsEditorWidgetWrapper ( QgsVectorLayer vl,
int  fieldIdx,
QWidget *  editor = 0,
QWidget *  parent = 0 
)
explicit

Create a new widget wrapper.

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

Member Function Documentation

QgsField QgsEditorWidgetWrapper::field ( )

Access the field.

Returns
The field you are working on
See also
layer()
int QgsEditorWidgetWrapper::fieldIdx ( )

Access the field index.

Returns
The index of the field you are working on
See also
layer()
QgsEditorWidgetWrapper * QgsEditorWidgetWrapper::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
void QgsEditorWidgetWrapper::setEnabled ( bool  enabled)
virtual

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

By default this will enable or disable the whole widget

Parameters
enabledEnable or Disable?

Reimplemented from QgsWidgetWrapper.

void QgsEditorWidgetWrapper::setFeature ( const QgsFeature feature)
slot

Will be called when the feature changes.

Is forwarded to the slot setValue()

Parameters
featureThe new feature
virtual void QgsEditorWidgetWrapper::setValue ( const QVariant &  value)
pure virtualslot

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

Update the widget representation to reflect the new value.

Parameters
valueThe new value of the attribute
virtual QVariant QgsEditorWidgetWrapper::value ( )
pure virtual

Will be used to access the widget's value.

Read the value from the widget and return it properly formatted to be saved in the attribute.

If an invalid variant is returned this will be interpreted as no change. Be sure to return a NULL QVariant if it should be set to NULL.

Returns
The current value the widget represents

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

void QgsEditorWidgetWrapper::valueChanged ( const QVariant &  value)
signal

Emit this signal, whenever the value changed.

Parameters
valueThe new value
void QgsEditorWidgetWrapper::valueChanged ( const QString &  value)
protectedslot

If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.

Helper for string type widgets.

Parameters
valueThe value
void QgsEditorWidgetWrapper::valueChanged ( int  value)
protectedslot

If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.

Helper for int type widgets.

Parameters
valueThe value
Note
python name valueChangedInt
void QgsEditorWidgetWrapper::valueChanged ( double  value)
protectedslot

If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.

Helper for double type widgets.

Parameters
valueThe value
Note
python name valueChangedDouble
void QgsEditorWidgetWrapper::valueChanged ( bool  value)
protectedslot

If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.

Helper for bool type widgets.

Parameters
valueThe value
Note
python name valueChangedBool
void QgsEditorWidgetWrapper::valueChanged ( qlonglong  value)
protectedslot

If you emit to this slot in your implementation, an appropriate change notification will be broadcasted.

Helper for longlong type widgets.

Parameters
valueThe value
void QgsEditorWidgetWrapper::valueChanged ( )
protectedslot

Will call the value() method to determine the emitted value.


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