QGIS API Documentation
2.4.0-Chugiak
|
A label that can be placed onto a map composition. More...
#include <qgscomposerlabel.h>
Public Slots | |
void | refreshExpressionContext () |
Public Slots inherited from QgsComposerItem | |
virtual void | setRotation (double r) |
Sets the item rotation. More... | |
virtual void | setItemRotation (double r, bool adjustPosition=false) |
Sets the item rotation. More... | |
void | repaint () |
Public Member Functions | |
QgsComposerLabel (QgsComposition *composition) | |
~QgsComposerLabel () | |
virtual int | type () const |
return correct graphics item type. More... | |
void | paint (QPainter *painter, const QStyleOptionGraphicsItem *itemStyle, QWidget *pWidget) |
Reimplementation of QCanvasItem::paint. More... | |
void | adjustSizeToText () |
resizes the widget such that the text fits to the item. More... | |
QString | text () |
void | setText (const QString &text) |
int | htmlState () |
void | setHtmlState (int state) |
QString | displayText () const |
Returns the text as it appears on screen (with replaced data field) More... | |
void | setExpressionContext (QgsFeature *feature, QgsVectorLayer *layer, QMap< QString, QVariant > substitutions=(QMap< QString, QVariant >())) |
Sets the current feature, the current layer and a list of local variable substitutions for evaluating expressions. More... | |
QFont | font () const |
void | setFont (const QFont &f) |
Qt::AlignmentFlag | vAlign () const |
Accessor for the vertical alignment of the label. More... | |
Qt::AlignmentFlag | hAlign () const |
Accessor for the horizontal alignment of the label. More... | |
void | setHAlign (Qt::AlignmentFlag a) |
Mutator for the horizontal alignment of the label. More... | |
void | setVAlign (Qt::AlignmentFlag a) |
Mutator for the vertical alignment of the label. More... | |
double | margin () |
brief Accessor for the margin of the label More... | |
void | setMargin (double m) |
brief Mutator for the margin of the label More... | |
void | setFontColor (const QColor &c) |
Sets text color. More... | |
QColor | fontColor () const |
Get font color. More... | |
bool | writeXML (QDomElement &elem, QDomDocument &doc) const |
stores state in Dom element More... | |
bool | readXML (const QDomElement &itemElem, const QDomDocument &doc) |
sets state from Dom document More... | |
Public Member Functions inherited from QgsComposerItem | |
QgsComposerItem (QgsComposition *composition, bool manageZValue=true) | |
Constructor. More... | |
QgsComposerItem (qreal x, qreal y, qreal width, qreal height, QgsComposition *composition, bool manageZValue=true) | |
Constructor with box position and composer object. More... | |
virtual | ~QgsComposerItem () |
virtual void | setSelected (bool s) |
Set selected, selected item should be highlighted. More... | |
virtual bool | selected () const |
Is selected. More... | |
virtual bool | writeSettings () |
stores state in project More... | |
virtual bool | readSettings () |
read state from project More... | |
virtual bool | removeSettings () |
delete settings from project file More... | |
void | move (double dx, double dy) |
Moves item in canvas coordinates. More... | |
virtual void | moveContent (double dx, double dy) |
Move Content of item. More... | |
virtual void | zoomContent (int delta, double x, double y) |
Zoom content of item. More... | |
int | page () const |
Gets the page the item is currently on. More... | |
QPointF | pagePos () const |
Returns the item's position relative to its current page. More... | |
void | updatePagePos (double newPageWidth, double newPageHeight) |
Moves the item so that it retains its relative position on the page when the paper size changes. More... | |
void | setItemPosition (double x, double y, ItemPositionMode itemPoint=UpperLeft, int page=-1) |
Moves the item to a new position (in canvas coordinates) More... | |
void | setItemPosition (double x, double y, double width, double height, ItemPositionMode itemPoint=UpperLeft, bool posIncludesFrame=false, int page=-1) |
Sets item position and width / height in one go. More... | |
ItemPositionMode | lastUsedPositionMode () |
Returns item's last used position mode. More... | |
virtual void | setSceneRect (const QRectF &rectangle) |
Sets this items bound in scene coordinates such that 1 item size units corresponds to 1 scene size unit. More... | |
bool | _writeXML (QDomElement &itemElem, QDomDocument &doc) const |
Writes parameter that are not subclass specific in document. More... | |
bool | _readXML (const QDomElement &itemElem, const QDomDocument &doc) |
Reads parameter that are not subclass specific in document. More... | |
bool | hasFrame () const |
Whether this item has a frame or not. More... | |
void | setFrameEnabled (bool drawFrame) |
Set whether this item has a frame drawn around it or not. More... | |
virtual void | setFrameOutlineWidth (double outlineWidth) |
Sets frame outline width. More... | |
double | frameOutlineWidth () const |
Returns the frame's outline width. More... | |
Qt::PenJoinStyle | frameJoinStyle () const |
Returns the join style used for drawing the item's frame. More... | |
void | setFrameJoinStyle (Qt::PenJoinStyle style) |
Sets join style used when drawing the item's frame. More... | |
virtual double | estimatedFrameBleed () const |
Returns the estimated amount the item's frame bleeds outside the item's actual rectangle. More... | |
virtual QRectF | rectWithFrame () const |
Returns the item's rectangular bounds, including any bleed caused by the item's frame. More... | |
bool | hasBackground () const |
Whether this item has a Background or not. More... | |
void | setBackgroundEnabled (bool drawBackground) |
Set whether this item has a Background drawn around it or not. More... | |
QColor | backgroundColor () const |
Gets the background color for this item. More... | |
void | setBackgroundColor (const QColor &backgroundColor) |
Sets the background color for this item. More... | |
QPainter::CompositionMode | blendMode () const |
Returns the item's composition blending mode. More... | |
void | setBlendMode (QPainter::CompositionMode blendMode) |
Sets the item's composition blending mode. More... | |
int | transparency () const |
Returns the item's transparency. More... | |
void | setTransparency (int transparency) |
Sets the item's transparency. More... | |
bool | effectsEnabled () const |
Returns true if effects (eg blend modes) are enabled for the item. More... | |
void | setEffectsEnabled (bool effectsEnabled) |
Sets whether effects (eg blend modes) are enabled for the item. More... | |
virtual void | addItem (QgsComposerItem *item) |
Composite operations for item groups do nothing per default. More... | |
virtual void | removeItems () |
const QgsComposition * | composition () const |
QgsComposition * | composition () |
virtual void | beginItemCommand (const QString &text) |
void | beginCommand (const QString &commandText, QgsComposerMergeCommand::Context c=QgsComposerMergeCommand::Unknown) |
Starts new composer undo command. More... | |
virtual void | endItemCommand () |
void | endCommand () |
Finish current command and push it onto the undo stack. More... | |
void | cancelCommand () |
void | drawText (QPainter *p, double x, double y, const QString &text, const QFont &font) const |
Draws Text. More... | |
void | drawText (QPainter *p, const QRectF &rect, const QString &text, const QFont &font, Qt::AlignmentFlag halignment=Qt::AlignLeft, Qt::AlignmentFlag valignment=Qt::AlignTop, int flags=Qt::TextWordWrap) const |
Like the above, but with a rectangle for multiline text. More... | |
double | textWidthMillimeters (const QFont &font, const QString &text) const |
Returns the font width in millimeters (considers upscaling and downscaling with FONT_WORKAROUND_SCALE. More... | |
double | fontHeightCharacterMM (const QFont &font, const QChar &c) const |
Returns the font height of a character in millimeters. More... | |
double | fontAscentMillimeters (const QFont &font) const |
Returns the font ascent in Millimeters (considers upscaling and downscaling with FONT_WORKAROUND_SCALE. More... | |
double | fontDescentMillimeters (const QFont &font) const |
Returns the font descent in Millimeters (considers upscaling and downscaling with FONT_WORKAROUND_SCALE. More... | |
double | fontHeightMillimeters (const QFont &font) const |
Returns the font height in Millimeters (considers upscaling and downscaling with FONT_WORKAROUND_SCALE. More... | |
double | pixelFontSize (double pointSize) const |
Calculates font to from point size to pixel size. More... | |
QFont | scaledFontPixelSize (const QFont &font) const |
Returns a font where size is in pixel and font size is upscaled with FONT_WORKAROUND_SCALE. More... | |
void | setPositionLock (bool lock) |
Locks / unlocks the item position for mouse drags. More... | |
bool | positionLock () const |
Returns position lock for mouse drags (true means locked) More... | |
double | itemRotation () const |
Returns the rotation for the composer item. More... | |
Q_DECL_DEPRECATED double | rotation () const |
Returns the rotation for the composer item. More... | |
virtual void | updateItem () |
Updates item, with the possibility to do custom update for subclasses. More... | |
QString | id () const |
Get item's id (which is not necessarly unique) More... | |
virtual void | setId (const QString &id) |
Set item's id (which is not necessarly unique) More... | |
QString | uuid () const |
Get item identification name. More... | |
virtual int | numberExportLayers () const |
Get the number of layers that this item requires for exporting as layers. More... | |
virtual void | setCurrentExportLayer (int layerIdx=-1) |
Sets the current layer to draw for exporting. More... | |
Private Slots | |
void | loadingHtmlFinished (bool) |
Private Member Functions | |
double | htmlUnitsToMM () |
void | itemShiftAdjustSize (double newWidth, double newHeight, double &xShift, double &yShift) const |
Helper function to calculate x/y shift for adjustSizeToText() depending on rotation, current size and alignment. More... | |
void | replaceDateText (QString &text) const |
Replaces replace '$CURRENT_DATE<(FORMAT)>' with the current date (e.g. More... | |
Private Attributes | |
QString | mText |
int | mHtmlState |
double | mHtmlUnitsToMM |
bool | mHtmlLoaded |
QFont | mFont |
double | mMargin |
QColor | mFontColor |
Qt::AlignmentFlag | mHAlignment |
Qt::AlignmentFlag | mVAlignment |
QgsFeature * | mExpressionFeature |
QgsVectorLayer * | mExpressionLayer |
QMap< QString, QVariant > | mSubstitutions |
Additional Inherited Members | |
Public Types inherited from QgsComposerItem | |
enum | ItemType { ComposerItem = UserType + 100, ComposerArrow, ComposerItemGroup, ComposerLabel, ComposerLegend, ComposerMap, ComposerPaper, ComposerPicture, ComposerScaleBar, ComposerShape, ComposerTable, ComposerAttributeTable, ComposerTextTable, ComposerFrame } |
enum | MouseMoveAction { MoveItem, ResizeUp, ResizeDown, ResizeLeft, ResizeRight, ResizeLeftUp, ResizeRightUp, ResizeLeftDown, ResizeRightDown, NoAction } |
Describes the action (move or resize in different directon) to be done during mouse move. More... | |
enum | ItemPositionMode { UpperLeft, UpperMiddle, UpperRight, MiddleLeft, Middle, MiddleRight, LowerLeft, LowerMiddle, LowerRight } |
Signals inherited from QgsComposerItem | |
void | itemRotationChanged (double newRotation) |
Is emitted on item rotation change. More... | |
void | itemChanged () |
Used e.g. More... | |
void | sizeChanged () |
Emitted if the rectangle changes. More... | |
void | frameChanged () |
Emitted if the item's frame style changes. More... | |
Protected Member Functions inherited from QgsComposerItem | |
virtual void | drawSelectionBoxes (QPainter *p) |
Draw selection boxes around item. More... | |
virtual void | drawFrame (QPainter *p) |
Draw black frame around item. More... | |
virtual void | drawBackground (QPainter *p) |
Draw background. More... | |
void | drawArrowHead (QPainter *p, double x, double y, double angle, double arrowHeadWidth) const |
Draws arrowhead. More... | |
double | angle (const QPointF &p1, const QPointF &p2) const |
Returns angle of the line from p1 to p2 (clockwise, starting at N) More... | |
double | rectHandlerBorderTolerance () const |
Returns the current (zoom level dependent) tolerance to decide if mouse position is close enough to the item border for resizing. More... | |
double | lockSymbolSize () const |
Returns the size of the lock symbol depending on the composer zoom level and the item size. More... | |
double | horizontalViewScaleFactor () const |
Returns the zoom factor of the graphics view. More... | |
bool | imageSizeConsideringRotation (double &width, double &height, double rotation) const |
Calculates width and hight of the picture (in mm) such that it fits into the item frame with the given rotation. More... | |
Q_DECL_DEPRECATED bool | imageSizeConsideringRotation (double &width, double &height) const |
Calculates width and hight of the picture (in mm) such that it fits into the item frame with the given rotation. More... | |
QRectF | largestRotatedRectWithinBounds (QRectF originalRect, QRectF boundsRect, double rotation) const |
Calculates the largest scaled version of originalRect which fits within boundsRect, when it is rotated by a specified amount. More... | |
bool | cornerPointOnRotatedAndScaledRect (double &x, double &y, double width, double height, double rotation) const |
Calculates corner point after rotation and scaling. More... | |
Q_DECL_DEPRECATED bool | cornerPointOnRotatedAndScaledRect (double &x, double &y, double width, double height) const |
Calculates corner point after rotation and scaling. More... | |
void | sizeChangedByRotation (double &width, double &height, double rotation) |
Calculates width / height of the bounding box of a rotated rectangle. More... | |
Q_DECL_DEPRECATED void | sizeChangedByRotation (double &width, double &height) |
Calculates width / height of the bounding box of a rotated rectangle. More... | |
void | rotate (double angle, double &x, double &y) const |
Rotates a point / vector. More... | |
QGraphicsLineItem * | hAlignSnapItem () |
Return horizontal align snap item. More... | |
void | deleteHAlignSnapItem () |
QGraphicsLineItem * | vAlignSnapItem () |
Return vertical align snap item. More... | |
void | deleteVAlignSnapItem () |
void | deleteAlignItems () |
Protected Attributes inherited from QgsComposerItem | |
QgsComposition * | mComposition |
QgsComposerItem::MouseMoveAction | mCurrentMouseMoveAction |
QPointF | mMouseMoveStartPos |
Start point of the last mouse move action (in scene coordinates) More... | |
QPointF | mLastMouseEventPos |
Position of the last mouse move event (in scene coordinates) More... | |
QGraphicsRectItem * | mBoundingResizeRectangle |
Rectangle used during move and resize actions. More... | |
QGraphicsLineItem * | mHAlignSnapItem |
QGraphicsLineItem * | mVAlignSnapItem |
bool | mFrame |
True if item fram needs to be painted. More... | |
bool | mBackground |
True if item background needs to be painted. More... | |
QColor | mBackgroundColor |
Background color. More... | |
Qt::PenJoinStyle | mFrameJoinStyle |
Frame join style. More... | |
bool | mItemPositionLocked |
True if item position and size cannot be changed with mouse move. More... | |
double | mLastValidViewScaleFactor |
Backup to restore item appearance if no view scale factor is available. More... | |
double | mItemRotation |
Item rotation in degrees, clockwise. More... | |
QPainter::CompositionMode | mBlendMode |
Composition blend mode for item. More... | |
bool | mEffectsEnabled |
QgsComposerEffect * | mEffect |
int | mTransparency |
Item transparency. More... | |
ItemPositionMode | mLastUsedPositionMode |
The item's position mode. More... | |
int | mCurrentExportLayer |
The layer that needs to be exported. More... | |
A label that can be placed onto a map composition.
Definition at line 29 of file qgscomposerlabel.h.
QgsComposerLabel::QgsComposerLabel | ( | QgsComposition * | composition | ) |
Definition at line 33 of file qgscomposerlabel.cpp.
References QgsComposition::atlasComposition(), QgsComposition::atlasMode(), QgsAtlasComposition::coverageLayer(), QgsAtlasComposition::currentFeature(), htmlUnitsToMM(), QgsComposerItem::mComposition, mFont, mHtmlUnitsToMM, QgsComposition::PreviewAtlas, refreshExpressionContext(), and setExpressionContext().
QgsComposerLabel::~QgsComposerLabel | ( | ) |
Definition at line 65 of file qgscomposerlabel.cpp.
void QgsComposerLabel::adjustSizeToText | ( | ) |
resizes the widget such that the text fits to the item.
Keeps top left point
Definition at line 254 of file qgscomposerlabel.cpp.
References displayText(), QgsComposerItem::fontHeightMillimeters(), QgsComposerItem::hasFrame(), itemShiftAdjustSize(), mFont, mMargin, QgsComposerItem::setSceneRect(), and QgsComposerItem::textWidthMillimeters().
Referenced by QgsComposerView::mouseReleaseEvent().
QString QgsComposerLabel::displayText | ( | ) | const |
Returns the text as it appears on screen (with replaced data field)
Definition at line 215 of file qgscomposerlabel.cpp.
References QgsComposition::itemPageNumber(), QgsComposerItem::mComposition, mExpressionFeature, mExpressionLayer, mSubstitutions, mText, replaceDateText(), and QgsExpression::replaceExpressionText().
Referenced by adjustSizeToText(), and paint().
QFont QgsComposerLabel::font | ( | ) | const |
Definition at line 272 of file qgscomposerlabel.cpp.
References mFont.
|
inline |
Get font color.
Definition at line 88 of file qgscomposerlabel.h.
|
inline |
Accessor for the horizontal alignment of the label.
Definition at line 67 of file qgscomposerlabel.h.
|
inline |
Definition at line 48 of file qgscomposerlabel.h.
|
private |
Definition at line 172 of file qgscomposerlabel.cpp.
References QgsComposerItem::mComposition, and QgsComposition::printResolution().
Referenced by QgsComposerLabel().
|
private |
Helper function to calculate x/y shift for adjustSizeToText() depending on rotation, current size and alignment.
Definition at line 380 of file qgscomposerlabel.cpp.
References mHAlignment, QgsComposerItem::mItemRotation, and mVAlignment.
Referenced by adjustSizeToText().
|
privateslot |
|
inline |
brief Accessor for the margin of the label
Definition at line 79 of file qgscomposerlabel.h.
void QgsComposerLabel::paint | ( | QPainter * | painter, |
const QStyleOptionGraphicsItem * | itemStyle, | ||
QWidget * | pWidget | ||
) |
Reimplementation of QCanvasItem::paint.
Definition at line 69 of file qgscomposerlabel.cpp.
References displayText(), QgsComposerItem::drawBackground(), QgsComposerItem::drawFrame(), QgsComposerItem::drawSelectionBoxes(), QgsComposerItem::drawText(), QgsComposerItem::hasFrame(), QgsNetworkAccessManager::instance(), loadingHtmlFinished(), QgsComposerItem::mComposition, mFont, mFontColor, mHAlignment, mHtmlLoaded, mHtmlState, mHtmlUnitsToMM, mMargin, mVAlignment, QgsComposition::plotStyle(), QgsComposition::Postscript, and QgsComposition::Print.
|
virtual |
sets state from Dom document
itemElem | is Dom element corresponding to 'ComposerLabel' tag |
doc | document |
Implements QgsComposerItem.
Definition at line 312 of file qgscomposerlabel.cpp.
References QgsComposerItem::_readXML(), QgsComposerItem::itemChanged(), mFont, mFontColor, mHAlignment, mHtmlState, mMargin, mText, mVAlignment, and QgsComposerItem::setItemRotation().
Referenced by QgsComposition::addItemsFromXML().
|
slot |
Definition at line 198 of file qgscomposerlabel.cpp.
References QgsComposition::atlasComposition(), QgsComposition::atlasMode(), QgsComposition::AtlasOff, QgsAtlasComposition::coverageLayer(), QgsAtlasComposition::currentFeature(), QgsAtlasComposition::enabled(), QgsComposerItem::mComposition, and setExpressionContext().
Referenced by QgsComposerLabel().
|
private |
Replaces replace '$CURRENT_DATE<(FORMAT)>' with the current date (e.g.
$CURRENT_DATE(d 'June' yyyy)
Definition at line 224 of file qgscomposerlabel.cpp.
Referenced by displayText().
void QgsComposerLabel::setExpressionContext | ( | QgsFeature * | feature, |
QgsVectorLayer * | layer, | ||
QMap< QString, QVariant > | substitutions = ( QMap<QString, QVariant>() ) |
||
) |
Sets the current feature, the current layer and a list of local variable substitutions for evaluating expressions.
Definition at line 189 of file qgscomposerlabel.cpp.
References mExpressionFeature, mExpressionLayer, and mSubstitutions.
Referenced by QgsComposerLabel(), and refreshExpressionContext().
void QgsComposerLabel::setFont | ( | const QFont & | f | ) |
Definition at line 249 of file qgscomposerlabel.cpp.
References mFont.
|
inline |
Sets text color.
Definition at line 85 of file qgscomposerlabel.h.
|
inline |
Mutator for the horizontal alignment of the label.
a | alignment |
Definition at line 72 of file qgscomposerlabel.h.
|
inline |
Definition at line 49 of file qgscomposerlabel.h.
|
inline |
brief Mutator for the margin of the label
Definition at line 81 of file qgscomposerlabel.h.
void QgsComposerLabel::setText | ( | const QString & | text | ) |
Definition at line 183 of file qgscomposerlabel.cpp.
References QgsComposerItem::itemChanged(), mText, and text().
Referenced by QgsComposerView::mouseReleaseEvent().
|
inline |
Mutator for the vertical alignment of the label.
a | alignment |
Definition at line 77 of file qgscomposerlabel.h.
|
inline |
Definition at line 45 of file qgscomposerlabel.h.
Referenced by setText().
|
inlinevirtual |
return correct graphics item type.
Added in v1.7
Reimplemented from QgsComposerItem.
Definition at line 37 of file qgscomposerlabel.h.
References QgsComposerItem::ComposerLabel.
|
inline |
Accessor for the vertical alignment of the label.
Definition at line 63 of file qgscomposerlabel.h.
|
virtual |
stores state in Dom element
elem | is Dom element corresponding to 'Composer' tag |
doc | document |
Implements QgsComposerItem.
Definition at line 277 of file qgscomposerlabel.cpp.
References QgsComposerItem::_writeXML(), mFont, mFontColor, mHAlignment, mHtmlState, mMargin, mText, and mVAlignment.
|
private |
Definition at line 140 of file qgscomposerlabel.h.
Referenced by displayText(), and setExpressionContext().
|
private |
Definition at line 141 of file qgscomposerlabel.h.
Referenced by displayText(), and setExpressionContext().
|
private |
Definition at line 123 of file qgscomposerlabel.h.
Referenced by adjustSizeToText(), font(), paint(), QgsComposerLabel(), readXML(), setFont(), and writeXML().
|
private |
Definition at line 129 of file qgscomposerlabel.h.
Referenced by paint(), readXML(), and writeXML().
|
private |
Definition at line 132 of file qgscomposerlabel.h.
Referenced by itemShiftAdjustSize(), paint(), readXML(), and writeXML().
|
private |
Definition at line 117 of file qgscomposerlabel.h.
Referenced by loadingHtmlFinished(), and paint().
|
private |
Definition at line 114 of file qgscomposerlabel.h.
Referenced by paint(), readXML(), and writeXML().
|
private |
Definition at line 115 of file qgscomposerlabel.h.
Referenced by paint(), and QgsComposerLabel().
|
private |
Definition at line 126 of file qgscomposerlabel.h.
Referenced by adjustSizeToText(), paint(), readXML(), and writeXML().
|
private |
Definition at line 142 of file qgscomposerlabel.h.
Referenced by displayText(), and setExpressionContext().
|
private |
Definition at line 111 of file qgscomposerlabel.h.
Referenced by displayText(), readXML(), setText(), and writeXML().
|
private |
Definition at line 135 of file qgscomposerlabel.h.
Referenced by itemShiftAdjustSize(), paint(), readXML(), and writeXML().