21 #ifndef QGSPALLABELING_H 22 #define QGSPALLABELING_H 37 #include <QFontDatabase> 181 FontLetterSpacing = 28,
182 FontWordSpacing = 29,
186 MultiLineWrapChar = 31,
187 MultiLineHeight = 32,
188 MultiLineAlignment = 33,
192 DirSymbPlacement = 37,
204 BufferJoinStyle = 44,
205 BufferBlendMode = 45,
215 ShapeRotationType = 52,
218 ShapeOffsetUnits = 55,
220 ShapeRadiiUnits = 57,
221 ShapeTransparency = 63,
224 ShapeBorderColor = 59,
225 ShapeBorderWidth = 60,
226 ShapeBorderWidthUnits = 61,
232 ShadowOffsetAngle = 67,
233 ShadowOffsetDist = 68,
234 ShadowOffsetUnits = 69,
236 ShadowRadiusUnits = 71,
237 ShadowTransparency = 72,
240 ShadowBlendMode = 75,
250 CurvedCharAngleInOut = 83,
258 RepeatDistanceUnit = 86,
261 ScaleVisibility = 23,
429 void calculateLabelSize(
const QFontMetricsF* fm, QString text,
double& labelX,
double& labelY,
QgsFeature* f = 0 );
446 bool active,
bool useExpr,
const QString& expr,
const QString& field );
454 QString updateDataDefinedString(
const QString& value );
510 QMap<QgsPalLayerSettings::DataDefinedProperties, QPair<QString, int> >
dataDefinedNames()
const {
return mDataDefinedNames; }
545 bool dataDefinedValEval(
const QString& valType,
549 void parseTextStyle( QFont& labelFont,
553 void parseTextBuffer();
555 void parseTextFormatting();
557 void parseShapeBackground();
559 void parseDropShadow();
566 QMap<DataDefinedProperties, QVariant> dataDefinedValues;
568 QMap<QgsPalLayerSettings::DataDefinedProperties, QPair<QString, int> > mDataDefinedNames;
570 QFontDatabase mFontDB;
592 , mUseOrigin( false )
594 , mRotationOffset( 0.0 )
595 , mUseRotation( false )
597 , mUseCenter( false )
601 , mPictureBuffer( 0.0 )
607 const QString&
text()
const {
return mText; }
608 void setText(
const QString& text ) { mText = text; }
617 void setRotation(
const double rotation ) { mRotation = rotation; }
637 const QPicture*
picture()
const {
return mPicture; }
657 double mRotationOffset;
673 double mPictureBuffer;
691 QList<QgsLabelPosition> labelsAtPosition(
const QgsPoint& p )
const;
693 QList<QgsLabelPosition> labelsWithinRect(
const QgsRectangle& r )
const;
721 void numCandidatePositions(
int& candPoint,
int& candLine,
int& candPolygon );
722 void setNumCandidatePositions(
int candPoint,
int candLine,
int candPolygon );
724 enum Search {
Chain, Popmusic_Tabu, Popmusic_Chain, Popmusic_Tabu_Chain, Falp };
726 void setSearchMethod(
Search s );
727 Search searchMethod()
const;
731 const QList<QgsLabelCandidate>&
candidates() {
return mCandidates; }
750 Q_DECL_DEPRECATED
virtual void init(
QgsMapRenderer* mr )
override;
759 static bool staticWillUseLayer(
const QString& layerID );
762 virtual void clearActiveLayers()
override;
764 virtual void clearActiveLayer(
const QString& layerID )
override;
775 virtual void exit()
override;
779 Q_DECL_DEPRECATED
virtual QList<QgsLabelPosition> labelsAtPosition(
const QgsPoint& p )
override;
782 Q_DECL_DEPRECATED
virtual QList<QgsLabelPosition> labelsWithinRect(
const QgsRectangle& r )
override;
810 void loadEngineSettings();
811 void saveEngineSettings();
812 void clearEngineSettings();
825 static QStringList splitToLines(
const QString& text,
const QString& wrapCharacter );
830 const QMap< QgsPalLayerSettings::DataDefinedProperties, QVariant >& ddValues );
834 const QMap< QgsPalLayerSettings::DataDefinedProperties, QVariant >& ddValues );
838 const QMap< QgsPalLayerSettings::DataDefinedProperties, QVariant >& ddValues );
842 const QMap< QgsPalLayerSettings::DataDefinedProperties, QVariant >& ddValues );
846 const QMap< QgsPalLayerSettings::DataDefinedProperties, QVariant >& ddValues );
848 void deleteTemporaryData();
875 #endif // QGSPALLABELING_H
Class for parsing and evaluation of expressions (formerly called "search strings").
void setShowingCandidates(bool showing)
A rectangle specified with double values.
double maxCurvedCharAngleOut
QString leftDirectionSymbol
QgsMapUnitScale shapeSizeMapUnitScale
A container class for data source field mapping or expression.
QgsMapUnitScale shadowRadiusMapUnitScale
void setOrigin(const QgsPoint &point)
SizeUnit repeatDistanceUnit
const QgsMapSettings * mMapSettings
const QString & text() const
A class to query the labeling structure at a given point (small wraper around pal RTree class) ...
void setShowingPartialsLabels(bool showing)
QPainter::CompositionMode bufferBlendMode
A layer of spacial entites.
double rotationOffset() const
QgsMapUnitScale shadowOffsetMapUnitScale
const QgsPoint & size() const
bool mShowingPartialsLabels
#define Q_NOWARN_DEPRECATED_PUSH
QuadrantPosition quadOffset
void setUseOrigin(const bool use)
Container of fields for a vector layer.
void setUseCenter(const bool use)
QgsMapUnitScale repeatDistanceMapUnitScale
MultiLineAlign multilineAlign
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
const QgsPoint & origin() const
A non GUI class for rendering a map layer set onto a QPainter.
const QgsPoint & center() const
double maxCurvedCharAngleIn
bool reverseDirectionSymbol
void setRotationOffset(const double rotation)
Qt::PenJoinStyle bufferJoinStyle
QgsMapUnitScale fontSizeMapUnitScale
const QgsPoint & offset() const
The QgsMapSettings class contains configuration for rendering of the map.
QgsMapUnitScale shapeBorderWidthMapUnitScale
Perform transforms between map coordinates and device coordinates.
Q_DECL_DEPRECATED void setStoredWithProject(bool store)
void setRotation(const double rotation)
QList< QgsPalGeometry * > geometries
const QgsCoordinateTransform * ct
QgsMapUnitScale shapeRadiiMapUnitScale
const QPicture * picture() const
double rasterCompressFactor
bool bufferSizeInMapUnits
QgsPalLayerSettings mInvalidLayerSettings
SizeUnit shapeBorderWidthUnits
QPainter::CompositionMode blendMode
QHash< QString, QgsDiagramLayerSettings > mActiveDiagramLayers
Q_DECL_DEPRECATED bool isStoredWithProject() const
void setCenter(const QgsPoint &point)
const QgsMapToPixel * xform
QMap< QgsPalLayerSettings::DataDefinedProperties, QgsDataDefined * > dataDefinedProperties
Map of current data defined properties.
bool isShowingPartialsLabels() const
void setText(const QString &text)
QgsMapUnitScale bufferSizeMapUnitScale
QPainter::CompositionMode shapeBlendMode
SizeUnit shadowOffsetUnits
SizeUnit
Units used for option sizes, before being converted to rendered sizes.
const QList< QgsLabelCandidate > & candidates()
A class to represent a point.
QHash< QString, QgsPalLayerSettings > mActiveLayers
Qt::PenJoinStyle shapeJoinStyle
unsigned int upsidedownLabels
void setDpiRatio(const double ratio)
unsigned int placementFlags
#define Q_NOWARN_DEPRECATED_POP
QString rightDirectionSymbol
bool isShowingCandidates() const
void setDrawingOutlineLabels(bool outline)
Contains information about the context of a rendering operation.
void setShowingShadowRectangles(bool showing)
void setPicture(QPicture *picture)
void setOffset(const QgsPoint &point)
QgsMapUnitScale distMapUnitScale
Struct for storing maximum and minimum scales for measurements in map units.
bool shadowRadiusAlphaOnly
SizeUnit shadowRadiusUnits
QgsLabelCandidate(QRectF r, double c)
LabelPositon is a candidate feature label position.
bool labelOffsetInMapUnits
double pictureBuffer() const
QPainter::CompositionMode shadowBlendMode
bool isExpression
Is this label made from a expression string eg FieldName || 'mm'.
void setSize(const QgsPoint &point)
Class that stores computed placement from labeling engine.
bool isShowingAllLabels() const
void setShowingAllLabels(bool showing)
QMap< QgsPalLayerSettings::DataDefinedProperties, QPair< QString, int > > dataDefinedNames() const
Map of data defined enum to names and old-style indecies The QPair contains a new string for layer pr...
bool isShowingShadowRectangles() const
QgsMapUnitScale shapeOffsetMapUnitScale
QList< QgsLabelCandidate > mCandidates
Labeling engine interface.
void setPictureBuffer(const double buffer)
SizeUnit shapeOffsetUnits
bool isDrawingOutlineLabels() const
void setUseRotation(const bool use)
Represents a vector layer which manages a vector based data sets.
Maintains current state of more grainular and temporal values when creating/painting component parts ...
RotationType shapeRotationType
QgsMapUnitScale labelOffsetMapUnitScale
QgsLabelingResults * mResults
const QgsFields * mCurFields
DirectionSymbols placeDirectionSymbol