15 #ifndef QGSDATADEFINEDBUTTON_H
16 #define QGSDATADEFINEDBUTTON_H
22 #include <QToolButton>
23 #include <QScopedPointer>
71 Q_PROPERTY(
QString usageInfo READ usageInfo WRITE setUsageInfo )
79 AnyType = String | Int | Double
81 Q_DECLARE_FLAGS( DataTypes, DataType )
110 const QString& description = QString() );
112 QMap< QString, QString > definedProperty()
const {
return mProperty; }
131 bool isActive()
const {
return mProperty.value(
"active" ).toInt(); }
183 void registerEnabledWidget(
QWidget* wdgt );
205 void registerCheckedWidget(
QWidget* wdgt );
229 void registerGetExpressionContextCallback( ExpressionContextCallback fnGetExpressionContext,
const void* context );
254 static QString anyStringDesc();
257 static QString intPosOneDesc();
259 static QString doublePosDesc();
260 static QString double0to1Desc();
262 static QString double180RotDesc();
263 static QString intTranspDesc();
264 static QString unitsMmMuDesc();
265 static QString unitsMmMuPercentDesc();
266 static QString colorNoAlphaDesc();
267 static QString colorAlphaDesc();
268 static QString textHorzAlignDesc();
269 static QString textVertAlignDesc();
270 static QString penJoinStyleDesc();
271 static QString blendModesDesc();
274 static QString paperSizeDesc();
275 static QString paperOrientationDesc();
276 static QString horizontalAnchorDesc();
277 static QString verticalAnchorDesc();
278 static QString gradientTypeDesc();
279 static QString gradientCoordModeDesc();
280 static QString gradientSpreadDesc();
281 static QString lineStyleDesc();
283 static QString fillStyleDesc();
284 static QString markerStyleDesc();
285 static QString customDashDesc();
291 void setActive(
bool active );
296 void disableEnabledWidgets(
bool disable );
301 void checkCheckedWidgets(
bool check );
308 void dataDefinedChanged(
const QString& definition );
314 void dataDefinedActivated(
bool active );
335 void showDescriptionDialog();
336 void showExpressionDialog();
337 void showAssistant();
350 QMenu* mVariablesMenu;
362 DataTypes mDataTypes;
371 static QIcon mIconDataDefine;
372 static QIcon mIconDataDefineOn;
373 static QIcon mIconDataDefineError;
374 static QIcon mIconDataDefineExpression;
375 static QIcon mIconDataDefineExpressionOn;
376 static QIcon mIconDataDefineExpressionError;
378 ExpressionContextCallback mExpressionContextCallback;
379 const void* mExpressionContextCallbackContext;
382 void aboutToShowMenu();
383 void menuActionTriggered(
QAction* action );
386 Q_DECLARE_OPERATORS_FOR_FLAGS( QgsDataDefinedButton::DataTypes )
389 #endif // QGSDATADEFINEDBUTTON_H
An assistant (wizard) dialog, accessible from a QgsDataDefinedButton.
A container class for data source field mapping or expression.
Map canvas is a class for displaying all GIS data types on a canvas.
virtual void setMapCanvas(QgsMapCanvas *canvas)
Sets the map canvas associated with the widget.
Expression contexts are used to encapsulate the parameters around which a QgsExpression should be eva...
const QgsMapCanvas * mapCanvas() const
Returns the map canvas associated with the widget.
QgsMapCanvas * mMapCanvas
QgsDataDefinedAssistant()
Represents a vector layer which manages a vector based data sets.