QGIS API Documentation  2.6.0-Brighton
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Slots | Signals | Public Member Functions | List of all members
QgsExpressionBuilderWidget Class Reference

A reusable widget that can be used to build a expression string. More...

#include <qgsexpressionbuilderwidget.h>

Public Slots

void currentChanged (const QModelIndex &index, const QModelIndex &)
void on_expressionTree_doubleClicked (const QModelIndex &index)
void on_txtExpressionString_textChanged ()
void on_txtSearchEdit_textChanged ()
void on_lblPreview_linkActivated (QString link)
void on_mValueListWidget_itemDoubleClicked (QListWidgetItem *item)
void operatorButtonClicked ()
void showContextMenu (const QPoint &)
void loadSampleValues ()
void loadAllValues ()

Signals

void expressionParsed (bool isValid)
 Emitted when the user changes the expression in the widget.

Public Member Functions

 QgsExpressionBuilderWidget (QWidget *parent)
 ~QgsExpressionBuilderWidget ()
void setLayer (QgsVectorLayer *layer)
 Sets layer in order to get the fields and values.
void loadFieldNames ()
 Loads all the field names from the layer.
void loadFieldNames (const QgsFields &fields)
void setGeomCalculator (const QgsDistanceArea &da)
 Sets geometry calculator used in distance/area calculations.
QString expressionText ()
 Gets the expression string that has been set in the expression area.
void setExpressionText (const QString &expression)
 Sets the expression string for the widget.
void registerItem (QString group, QString label, QString expressionText, QString helpText="", QgsExpressionItem::ItemType type=QgsExpressionItem::ExpressionNode)
 Registers a node item for the expression builder.
bool isExpressionValid ()
void saveToRecent (QString key)
void loadRecent (QString key)

Detailed Description

A reusable widget that can be used to build a expression string.

See QgsExpressionBuilderDialog for exmaple of usage.

Constructor & Destructor Documentation

QgsExpressionBuilderWidget::QgsExpressionBuilderWidget ( QWidget *  parent)
QgsExpressionBuilderWidget::~QgsExpressionBuilderWidget ( )

Member Function Documentation

void QgsExpressionBuilderWidget::currentChanged ( const QModelIndex &  index,
const QModelIndex &   
)
slot
void QgsExpressionBuilderWidget::expressionParsed ( bool  isValid)
signal

Emitted when the user changes the expression in the widget.

Users of this widget should connect to this signal to decide if to let the user continue.

Parameters
isValidIs true if the expression the user has typed is valid.
QString QgsExpressionBuilderWidget::expressionText ( )

Gets the expression string that has been set in the expression area.

Returns
The expression as a string.
bool QgsExpressionBuilderWidget::isExpressionValid ( )
void QgsExpressionBuilderWidget::loadAllValues ( )
slot
void QgsExpressionBuilderWidget::loadFieldNames ( )

Loads all the field names from the layer.

Remarks
Should this really be public couldn't we just do this for the user?
void QgsExpressionBuilderWidget::loadFieldNames ( const QgsFields fields)
void QgsExpressionBuilderWidget::loadRecent ( QString  key)
void QgsExpressionBuilderWidget::loadSampleValues ( )
slot
void QgsExpressionBuilderWidget::on_expressionTree_doubleClicked ( const QModelIndex &  index)
slot
void QgsExpressionBuilderWidget::on_lblPreview_linkActivated ( QString  link)
slot
void QgsExpressionBuilderWidget::on_mValueListWidget_itemDoubleClicked ( QListWidgetItem *  item)
slot
void QgsExpressionBuilderWidget::on_txtExpressionString_textChanged ( )
slot
void QgsExpressionBuilderWidget::on_txtSearchEdit_textChanged ( )
slot
void QgsExpressionBuilderWidget::operatorButtonClicked ( )
slot
void QgsExpressionBuilderWidget::registerItem ( QString  group,
QString  label,
QString  expressionText,
QString  helpText = "",
QgsExpressionItem::ItemType  type = QgsExpressionItem::ExpressionNode 
)

Registers a node item for the expression builder.

Parameters
groupThe group the item will be show in the tree view. If the group doesn't exsit it will be created.
labelThe label that is show to the user for the item in the tree.
expressionTextThe text that is inserted into the expression area when the user double clicks on the item.
helpTextThe help text that the user will see when item is selected.
typeThe type of the expression item.
void QgsExpressionBuilderWidget::saveToRecent ( QString  key)
void QgsExpressionBuilderWidget::setExpressionText ( const QString &  expression)

Sets the expression string for the widget.

void QgsExpressionBuilderWidget::setGeomCalculator ( const QgsDistanceArea da)

Sets geometry calculator used in distance/area calculations.

void QgsExpressionBuilderWidget::setLayer ( QgsVectorLayer layer)

Sets layer in order to get the fields and values.

Note
this needs to be called before calling loadFieldNames().
void QgsExpressionBuilderWidget::showContextMenu ( const QPoint &  pt)
slot

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