Quantum GIS API Documentation
1.7.4
|
A item that forms part of a map composition. More...
#include <qgscomposeritem.h>
Public Types | |
enum | ItemType { ComposerItem = UserType + 100, ComposerArrow, ComposerItemGroup, ComposerLabel, ComposerLegend, ComposerMap, ComposerPaper, ComposerPicture, ComposerScaleBar, ComposerShape, ComposerTable, ComposerAttributeTable, ComposerTextTable } |
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 } |
Public Slots | |
virtual void | setRotation (double r) |
void | repaint () |
Signals | |
void | rotationChanged (double newRotation) |
Is emitted on rotation change to notify north arrow pictures. | |
void | itemChanged () |
Used e.g. | |
Public Member Functions | |
QgsComposerItem (QgsComposition *composition, bool manageZValue=true) | |
Constructor. | |
QgsComposerItem (qreal x, qreal y, qreal width, qreal height, QgsComposition *composition, bool manageZValue=true) | |
Constructor with box position and composer object. | |
virtual | ~QgsComposerItem () |
virtual int | type () const |
return correct graphics item type. | |
virtual void | setSelected (bool s) |
Set selected, selected item should be highlighted. | |
virtual bool | selected (void) |
Is selected. | |
virtual bool | writeSettings (void) |
stores state in project | |
virtual bool | readSettings (void) |
read state from project | |
virtual bool | removeSettings (void) |
delete settings from project file | |
void | move (double dx, double dy) |
Moves item in canvas coordinates. | |
virtual void | moveContent (double dx, double dy) |
Move Content of item. | |
virtual void | zoomContent (int delta, double x, double y) |
Zoom content of item. | |
void | setItemPosition (double x, double y, ItemPositionMode itemPoint=UpperLeft) |
Moves the item to a new position (in canvas coordinates) | |
void | setItemPosition (double x, double y, double width, double height, ItemPositionMode itemPoint=UpperLeft) |
Sets item position and width / height in one go. | |
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. | |
virtual bool | writeXML (QDomElement &elem, QDomDocument &doc) const =0 |
stores state in Dom element | |
bool | _writeXML (QDomElement &itemElem, QDomDocument &doc) const |
Writes parameter that are not subclass specific in document. | |
virtual bool | readXML (const QDomElement &itemElem, const QDomDocument &doc)=0 |
sets state from Dom document | |
bool | _readXML (const QDomElement &itemElem, const QDomDocument &doc) |
Reads parameter that are not subclass specific in document. | |
bool | frame () const |
void | setFrame (bool drawFrame) |
virtual void | addItem (QgsComposerItem *item) |
Composite operations for item groups do nothing per default. | |
virtual void | removeItems () |
const QgsComposition * | composition () const |
void | beginCommand (const QString &commandText, QgsComposerMergeCommand::Context c=QgsComposerMergeCommand::Unknown) |
Starts new composer undo command. | |
void | endCommand () |
Finish current command and push it onto the undo stack. | |
void | cancelCommand () |
void | drawText (QPainter *p, double x, double y, const QString &text, const QFont &font) const |
Draws Text. | |
void | drawText (QPainter *p, const QRectF &rect, const QString &text, const QFont &font, Qt::AlignmentFlag halignement=Qt::AlignLeft, Qt::AlignmentFlag valignement=Qt::AlignTop) const |
Like the above, but with a rectangle for multiline text. | |
double | textWidthMillimeters (const QFont &font, const QString &text) const |
Returns the font width in millimeters (considers upscaling and downscaling with FONT_WORKAROUND_SCALE. | |
double | fontHeightCharacterMM (const QFont &font, const QChar &c) const |
Returns the font height of a character in millimeters. | |
double | fontAscentMillimeters (const QFont &font) const |
Returns the font ascent in Millimeters (considers upscaling and downscaling with FONT_WORKAROUND_SCALE. | |
double | pixelFontSize (double pointSize) const |
Calculates font to from point size to pixel size. | |
QFont | scaledFontPixelSize (const QFont &font) const |
Returns a font where size is in pixel and font size is upscaled with FONT_WORKAROUND_SCALE. | |
void | setPositionLock (bool lock) |
Locks / unlocks the item position for mouse drags. | |
bool | positionLock () const |
Returns position lock for mouse drags (true means locked) | |
void | updateCursor (const QPointF &itemPos) |
Update mouse cursor at (item) position. | |
double | rotation () const |
Protected Member Functions | |
virtual void | mouseMoveEvent (QGraphicsSceneMouseEvent *event) |
virtual void | mousePressEvent (QGraphicsSceneMouseEvent *event) |
virtual void | mouseReleaseEvent (QGraphicsSceneMouseEvent *event) |
virtual void | hoverMoveEvent (QGraphicsSceneHoverEvent *event) |
Qt::CursorShape | cursorForPosition (const QPointF &itemCoordPos) |
Finds out the appropriate cursor for the current mouse position in the widget (e.g. | |
QgsComposerItem::MouseMoveAction | mouseMoveActionForPosition (const QPointF &itemCoordPos) |
Finds out which mouse move action to choose depending on the cursor position inside the widget. | |
void | changeItemRectangle (const QPointF ¤tPosition, const QPointF &mouseMoveStartPos, const QGraphicsRectItem *originalItem, double dx, double dy, QGraphicsRectItem *changeItem) |
Changes the rectangle of an item depending on current mouse action (resize or move) | |
virtual void | drawSelectionBoxes (QPainter *p) |
Draw selection boxes around item. | |
virtual void | drawFrame (QPainter *p) |
Draw black frame around item. | |
virtual void | drawBackground (QPainter *p) |
Draw background. | |
void | drawArrowHead (QPainter *p, double x, double y, double angle, double arrowHeadWidth) const |
Draws arrowhead. | |
double | angle (const QPointF &p1, const QPointF &p2) const |
Returns angle of the line from p1 to p2 (clockwise, starting at N) | |
double | rectHandlerBorderTolerance () const |
Returns the current (zoom level dependent) tolerance to decide if mouse position is close enough to the \ item border for resizing. | |
double | lockSymbolSize () const |
Returns the size of the lock symbol depending on the composer zoom level and the item size. | |
double | horizontalViewScaleFactor () const |
Returns the zoom factor of the graphics view. | |
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. | |
bool | cornerPointOnRotatedAndScaledRect (double &x, double &y, double width, double height) const |
Calculates corner point after rotation and scaling. | |
QPointF | pointOnLineWithDistance (const QPointF &startPoint, const QPointF &directionPoint, double distance) const |
Returns a point on the line from startPoint to directionPoint that is a certain distance away from the starting point. | |
void | sizeChangedByRotation (double &width, double &height) |
Calculates width / height of the bounding box of a rotated rectangle (mRotation) | |
void | rotate (double angle, double &x, double &y) const |
Rotates a point / vector. | |
Protected Attributes | |
QgsComposition * | mComposition |
QgsComposerItem::MouseMoveAction | mCurrentMouseMoveAction |
QPointF | mMouseMoveStartPos |
Start point of the last mouse move action (in scene coordinates) | |
QPointF | mLastMouseEventPos |
Position of the last mouse move event (in scene coordinates) | |
QGraphicsRectItem * | mBoundingResizeRectangle |
Rectangle used during move and resize actions. | |
bool | mFrame |
True if item fram needs to be painted. | |
bool | mItemPositionLocked |
True if item position and size cannot be changed with mouse move. | |
double | mLastValidViewScaleFactor |
Backup to restore item appearance if no view scale factor is available. | |
double | mRotation |
Item rotation in degrees, clockwise. |
A item that forms part of a map composition.
Definition at line 33 of file qgscomposeritem.h.
UpperLeft | |
UpperMiddle | |
UpperRight | |
MiddleLeft | |
Middle | |
MiddleRight | |
LowerLeft | |
LowerMiddle | |
LowerRight |
Definition at line 73 of file qgscomposeritem.h.
Definition at line 38 of file qgscomposeritem.h.
Describes the action (move or resize in different directon) to be done during mouse move.
MoveItem | |
ResizeUp | |
ResizeDown | |
ResizeLeft | |
ResizeRight | |
ResizeLeftUp | |
ResizeRightUp | |
ResizeLeftDown | |
ResizeRightDown | |
NoAction |
Definition at line 59 of file qgscomposeritem.h.
QgsComposerItem::QgsComposerItem | ( | QgsComposition * | composition, |
bool | manageZValue = true |
||
) |
Constructor.
composition | parent composition |
manageZValue | true if the z-Value of this object should be managed by mComposition |
Definition at line 38 of file qgscomposeritem.cpp.
References QgsComposition::addItemToZList(), and mComposition.
QgsComposerItem::QgsComposerItem | ( | qreal | x, |
qreal | y, | ||
qreal | width, | ||
qreal | height, | ||
QgsComposition * | composition, | ||
bool | manageZValue = true |
||
) |
Constructor with box position and composer object.
x | x coordinate of item |
y | y coordinate of item |
width | width of item |
height | height of item |
composition | parent composition |
manageZValue | true if the z-Value of this object should be managed by mComposition |
Definition at line 64 of file qgscomposeritem.cpp.
References QgsComposition::addItemToZList(), and mComposition.
QgsComposerItem::~QgsComposerItem | ( | ) | [virtual] |
Definition at line 94 of file qgscomposeritem.cpp.
References mBoundingResizeRectangle, mComposition, and QgsComposition::removeItemFromZList().
bool QgsComposerItem::_readXML | ( | const QDomElement & | itemElem, |
const QDomDocument & | doc | ||
) |
Reads parameter that are not subclass specific in document.
Usually called from readXML methods of subclasses
Definition at line 181 of file qgscomposeritem.cpp.
References frame(), mFrame, mItemPositionLocked, mLastValidViewScaleFactor, mRotation, positionLock(), and setSceneRect().
Referenced by QgsComposerShape::readXML(), QgsComposerPicture::readXML(), QgsComposerLabel::readXML(), QgsComposerArrow::readXML(), QgsComposerLegend::readXML(), QgsComposerScaleBar::readXML(), QgsComposerMap::readXML(), and QgsComposerTable::tableReadXML().
bool QgsComposerItem::_writeXML | ( | QDomElement & | itemElem, |
QDomDocument & | doc | ||
) | const |
Writes parameter that are not subclass specific in document.
Usually called from writeXML methods of subclasses
Definition at line 117 of file qgscomposeritem.cpp.
References mFrame, mItemPositionLocked, mLastValidViewScaleFactor, and mRotation.
Referenced by QgsComposerTable::tableWriteXML(), QgsComposerTextTable::writeXML(), QgsComposerShape::writeXML(), QgsComposerPicture::writeXML(), QgsComposerLabel::writeXML(), QgsComposerArrow::writeXML(), QgsComposerLegend::writeXML(), QgsComposerScaleBar::writeXML(), and QgsComposerMap::writeXML().
virtual void QgsComposerItem::addItem | ( | QgsComposerItem * | item | ) | [inline, virtual] |
Composite operations for item groups do nothing per default.
Reimplemented in QgsComposerItemGroup.
Definition at line 167 of file qgscomposeritem.h.
double QgsComposerItem::angle | ( | const QPointF & | p1, |
const QPointF & | p2 | ||
) | const [protected] |
Returns angle of the line from p1 to p2 (clockwise, starting at N)
Definition at line 833 of file qgscomposeritem.cpp.
References M_PI.
Referenced by QgsComposerArrow::drawHardcodedMarker(), and QgsComposerArrow::drawSVGMarker().
void QgsComposerItem::beginCommand | ( | const QString & | commandText, |
QgsComposerMergeCommand::Context | c = QgsComposerMergeCommand::Unknown |
||
) |
Starts new composer undo command.
commandText | command title |
c | context for mergeable commands (unknown for non-mergeable commands |
Definition at line 274 of file qgscomposeritem.cpp.
References QgsComposition::beginCommand(), and mComposition.
Referenced by mouseReleaseEvent(), and QgsComposerView::wheelEvent().
void QgsComposerItem::cancelCommand | ( | ) |
Definition at line 290 of file qgscomposeritem.cpp.
References QgsComposition::cancelCommand(), and mComposition.
void QgsComposerItem::changeItemRectangle | ( | const QPointF & | currentPosition, |
const QPointF & | mouseMoveStartPos, | ||
const QGraphicsRectItem * | originalItem, | ||
double | dx, | ||
double | dy, | ||
QGraphicsRectItem * | changeItem | ||
) | [protected] |
Changes the rectangle of an item depending on current mouse action (resize or move)
currentPosition | current position of mouse cursor |
mouseMoveStartPos | cursor position at the start of the current mouse action |
originalItem | Item position at the start of the mouse action |
dx | x-Change of mouse cursor |
dy | y-Change of mouse cursor |
changeItem | Item to change size (can be the same as originalItem or a differen one) |
Definition at line 482 of file qgscomposeritem.cpp.
References mComposition, mCurrentMouseMoveAction, MoveItem, NoAction, ResizeDown, ResizeLeft, ResizeLeftDown, ResizeLeftUp, ResizeRight, ResizeRightDown, ResizeRightUp, ResizeUp, setSceneRect(), and QgsComposition::snapPointToGrid().
Referenced by mouseMoveEvent(), and mouseReleaseEvent().
const QgsComposition* QgsComposerItem::composition | ( | ) | const [inline] |
Definition at line 170 of file qgscomposeritem.h.
Referenced by QgsComposerMap::QgsComposerMap(), and QgsComposerAttributeTable::readXML().
bool QgsComposerItem::cornerPointOnRotatedAndScaledRect | ( | double & | x, |
double & | y, | ||
double | width, | ||
double | height | ||
) | const [protected] |
Calculates corner point after rotation and scaling.
Definition at line 1005 of file qgscomposeritem.cpp.
References M_PI, and mRotation.
Referenced by imageSizeConsideringRotation().
Qt::CursorShape QgsComposerItem::cursorForPosition | ( | const QPointF & | itemCoordPos | ) | [protected] |
Finds out the appropriate cursor for the current mouse position in the widget (e.g.
move in the middle, resize at border)
Definition at line 383 of file qgscomposeritem.cpp.
References mouseMoveActionForPosition(), MoveItem, NoAction, ResizeDown, ResizeLeftDown, ResizeLeftUp, ResizeRightDown, ResizeRightUp, and ResizeUp.
Referenced by hoverMoveEvent(), and updateCursor().
void QgsComposerItem::drawArrowHead | ( | QPainter * | p, |
double | x, | ||
double | y, | ||
double | angle, | ||
double | arrowHeadWidth | ||
) | const [protected] |
Draws arrowhead.
Definition at line 762 of file qgscomposeritem.cpp.
References M_PI.
Referenced by QgsComposerArrow::drawHardcodedMarker().
void QgsComposerItem::drawBackground | ( | QPainter * | p | ) | [protected, virtual] |
Draw background.
Definition at line 716 of file qgscomposeritem.cpp.
Referenced by QgsComposerLabel::paint(), QgsPaperItem::paint(), QgsComposerTable::paint(), QgsComposerPicture::paint(), QgsComposerScaleBar::paint(), QgsComposerArrow::paint(), QgsComposerShape::paint(), QgsComposerMap::paint(), and QgsComposerLegend::paintAndDetermineSize().
void QgsComposerItem::drawFrame | ( | QPainter * | p | ) | [protected, virtual] |
Draw black frame around item.
Reimplemented in QgsComposerItemGroup.
Definition at line 633 of file qgscomposeritem.cpp.
References mFrame.
Referenced by QgsComposerLabel::paint(), QgsComposerTable::paint(), QgsComposerPicture::paint(), QgsComposerScaleBar::paint(), QgsComposerArrow::paint(), QgsComposerShape::paint(), QgsComposerMap::paint(), and QgsComposerLegend::paintAndDetermineSize().
void QgsComposerItem::drawSelectionBoxes | ( | QPainter * | p | ) | [protected, virtual] |
Draw selection boxes around item.
Definition at line 593 of file qgscomposeritem.cpp.
References QgsApplication::activeThemePath(), QgsApplication::defaultThemePath(), lockSymbolSize(), mComposition, mItemPositionLocked, QgsComposition::plotStyle(), QgsComposition::Preview, and rectHandlerBorderTolerance().
Referenced by QgsComposerLabel::paint(), QgsComposerTable::paint(), QgsComposerPicture::paint(), QgsComposerItemGroup::paint(), QgsComposerScaleBar::paint(), QgsComposerArrow::paint(), QgsComposerShape::paint(), QgsComposerMap::paint(), and QgsComposerLegend::paintAndDetermineSize().
void QgsComposerItem::drawText | ( | QPainter * | p, |
double | x, | ||
double | y, | ||
const QString & | text, | ||
const QFont & | font | ||
) | const |
Draws Text.
Takes care about all the composer specific issues (calculation to pixel, scaling of font and painter to work arount the Qt font bug)
Definition at line 735 of file qgscomposeritem.cpp.
References FONT_WORKAROUND_SCALE, and scaledFontPixelSize().
Referenced by QgsNumericScaleBarStyle::draw(), QgsComposerMap::drawAnnotation(), QgsComposerLegend::drawGroupItem(), QgsScaleBarStyle::drawLabels(), QgsComposerLegend::drawLayerChildItems(), QgsComposerLegend::drawLayerItem(), QgsComposerLabel::paint(), QgsComposerTable::paint(), and QgsComposerLegend::paintAndDetermineSize().
void QgsComposerItem::drawText | ( | QPainter * | p, |
const QRectF & | rect, | ||
const QString & | text, | ||
const QFont & | font, | ||
Qt::AlignmentFlag | halignement = Qt::AlignLeft , |
||
Qt::AlignmentFlag | valignement = Qt::AlignTop |
||
) | const |
Like the above, but with a rectangle for multiline text.
Definition at line 748 of file qgscomposeritem.cpp.
References FONT_WORKAROUND_SCALE, and scaledFontPixelSize().
void QgsComposerItem::endCommand | ( | ) |
Finish current command and push it onto the undo stack.
Definition at line 282 of file qgscomposeritem.cpp.
References QgsComposition::endCommand(), and mComposition.
Referenced by mouseReleaseEvent().
double QgsComposerItem::fontAscentMillimeters | ( | const QFont & | font | ) | const |
Returns the font ascent in Millimeters (considers upscaling and downscaling with FONT_WORKAROUND_SCALE.
Definition at line 813 of file qgscomposeritem.cpp.
References FONT_WORKAROUND_SCALE, and scaledFontPixelSize().
Referenced by QgsComposerTable::adaptItemFrame(), QgsComposerLabel::adjustSizeToText(), QgsNumericScaleBarStyle::calculateBoxSize(), QgsScaleBarStyle::calculateBoxSize(), QgsDoubleBoxScaleBarStyle::draw(), QgsNumericScaleBarStyle::draw(), QgsSingleBoxScaleBarStyle::draw(), QgsTicksScaleBarStyle::draw(), QgsComposerLegend::drawGroupItem(), QgsComposerTable::drawHorizontalGridLines(), QgsScaleBarStyle::drawLabels(), QgsComposerLegend::drawLayerItem(), QgsComposerMap::maxExtension(), QgsComposerTable::paint(), QgsComposerLegend::paintAndDetermineSize(), and QgsComposerAttributeTable::setSceneRect().
double QgsComposerItem::fontHeightCharacterMM | ( | const QFont & | font, |
const QChar & | c | ||
) | const |
Returns the font height of a character in millimeters.
Definition at line 806 of file qgscomposeritem.cpp.
References FONT_WORKAROUND_SCALE, and scaledFontPixelSize().
Referenced by QgsComposerMap::drawCoordinateAnnotation(), and QgsComposerLegend::drawLayerChildItems().
bool QgsComposerItem::frame | ( | ) | const [inline] |
Definition at line 163 of file qgscomposeritem.h.
Referenced by _readXML().
double QgsComposerItem::horizontalViewScaleFactor | ( | ) | const [protected] |
Returns the zoom factor of the graphics view.
Definition at line 851 of file qgscomposeritem.cpp.
References mLastValidViewScaleFactor.
Referenced by QgsComposerMap::cache(), QgsComposerArrow::drawSVGMarker(), lockSymbolSize(), QgsComposerMap::paint(), and rectHandlerBorderTolerance().
void QgsComposerItem::hoverMoveEvent | ( | QGraphicsSceneHoverEvent * | event | ) | [protected, virtual] |
Definition at line 727 of file qgscomposeritem.cpp.
References cursorForPosition().
bool QgsComposerItem::imageSizeConsideringRotation | ( | double & | width, |
double & | height | ||
) | const [protected] |
Calculates width and hight of the picture (in mm) such that it fits into the item frame with the given rotation.
Definition at line 922 of file qgscomposeritem.cpp.
References cornerPointOnRotatedAndScaledRect(), mRotation, and pointOnLineWithDistance().
Referenced by QgsComposerPicture::setSceneRect(), and QgsComposerShape::setSceneRect().
void QgsComposerItem::itemChanged | ( | ) | [signal] |
Used e.g.
by the item widgets to update the gui elements
Referenced by QgsComposerMap::moveContent(), QgsComposerAttributeTable::readXML(), QgsComposerShape::readXML(), QgsComposerPicture::readXML(), QgsComposerLabel::readXML(), QgsComposerArrow::readXML(), QgsComposerLegend::readXML(), QgsComposerMap::readXML(), QgsComposerMap::setNewScale(), QgsComposerPicture::setPictureFile(), QgsComposerPicture::setSceneRect(), QgsComposerMap::setSceneRect(), and QgsComposerMap::zoomContent().
double QgsComposerItem::lockSymbolSize | ( | ) | const [protected] |
Returns the size of the lock symbol depending on the composer zoom level and the item size.
Definition at line 888 of file qgscomposeritem.cpp.
References horizontalViewScaleFactor().
Referenced by drawSelectionBoxes().
QgsComposerItem::MouseMoveAction QgsComposerItem::mouseMoveActionForPosition | ( | const QPointF & | itemCoordPos | ) | [protected] |
Finds out which mouse move action to choose depending on the cursor position inside the widget.
Definition at line 413 of file qgscomposeritem.cpp.
References mItemPositionLocked, MoveItem, NoAction, rectHandlerBorderTolerance(), ResizeDown, ResizeLeft, ResizeLeftDown, ResizeLeftUp, ResizeRight, ResizeRightDown, ResizeRightUp, and ResizeUp.
Referenced by cursorForPosition(), and mousePressEvent().
void QgsComposerItem::mouseMoveEvent | ( | QGraphicsSceneMouseEvent * | event | ) | [protected, virtual] |
Definition at line 298 of file qgscomposeritem.cpp.
References changeItemRectangle(), mBoundingResizeRectangle, mItemPositionLocked, mLastMouseEventPos, and mMouseMoveStartPos.
void QgsComposerItem::mousePressEvent | ( | QGraphicsSceneMouseEvent * | event | ) | [protected, virtual] |
Definition at line 315 of file qgscomposeritem.cpp.
References mBoundingResizeRectangle, mCurrentMouseMoveAction, mItemPositionLocked, mLastMouseEventPos, mMouseMoveStartPos, and mouseMoveActionForPosition().
void QgsComposerItem::mouseReleaseEvent | ( | QGraphicsSceneMouseEvent * | event | ) | [protected, virtual] |
Definition at line 348 of file qgscomposeritem.cpp.
References beginCommand(), changeItemRectangle(), endCommand(), mBoundingResizeRectangle, mCurrentMouseMoveAction, MathUtils::min(), mItemPositionLocked, mMouseMoveStartPos, and MoveItem.
void QgsComposerItem::move | ( | double | dx, |
double | dy | ||
) |
Moves item in canvas coordinates.
Definition at line 644 of file qgscomposeritem.cpp.
References setSceneRect().
virtual void QgsComposerItem::moveContent | ( | double | dx, |
double | dy | ||
) | [inline, virtual] |
Move Content of item.
Does nothing per default (but implemented in composer map)
dx | move in x-direction (canvas coordinates) |
dy | move in y-direction(canvas coordinates) |
Reimplemented in QgsComposerMap.
Definition at line 124 of file qgscomposeritem.h.
Referenced by QgsComposerView::mouseReleaseEvent().
double QgsComposerItem::pixelFontSize | ( | double | pointSize | ) | const |
Calculates font to from point size to pixel size.
Definition at line 820 of file qgscomposeritem.cpp.
Referenced by scaledFontPixelSize().
QPointF QgsComposerItem::pointOnLineWithDistance | ( | const QPointF & | startPoint, |
const QPointF & | directionPoint, | ||
double | distance | ||
) | const [protected] |
Returns a point on the line from startPoint to directionPoint that is a certain distance away from the starting point.
Reimplemented in QgsComposerShape.
Definition at line 1042 of file qgscomposeritem.cpp.
Referenced by QgsComposerMap::drawGrid(), and imageSizeConsideringRotation().
bool QgsComposerItem::positionLock | ( | ) | const [inline] |
Returns position lock for mouse drags (true means locked)
Definition at line 212 of file qgscomposeritem.h.
Referenced by _readXML(), and QgsComposerView::mousePressEvent().
bool QgsComposerItem::readSettings | ( | void | ) | [virtual] |
read state from project
Definition at line 113 of file qgscomposeritem.cpp.
virtual bool QgsComposerItem::readXML | ( | const QDomElement & | itemElem, |
const QDomDocument & | doc | ||
) | [pure virtual] |
sets state from Dom document
itemElem | is Dom node corresponding to item tag |
doc | is Dom document |
Implemented in QgsComposerMap, QgsComposerScaleBar, QgsComposerLegend, QgsComposerArrow, QgsComposerLabel, QgsComposerPicture, QgsComposerItemGroup, QgsComposerShape, QgsComposerAttributeTable, QgsPaperItem, QgsComposerTable, and QgsComposerTextTable.
Referenced by QgsComposerItemCommand::restoreState().
double QgsComposerItem::rectHandlerBorderTolerance | ( | ) | const [protected] |
Returns the current (zoom level dependent) tolerance to decide if mouse position is close enough to the \ item border for resizing.
Definition at line 870 of file qgscomposeritem.cpp.
References horizontalViewScaleFactor().
Referenced by drawSelectionBoxes(), and mouseMoveActionForPosition().
virtual void QgsComposerItem::removeItems | ( | ) | [inline, virtual] |
Reimplemented in QgsComposerItemGroup.
Definition at line 168 of file qgscomposeritem.h.
bool QgsComposerItem::removeSettings | ( | void | ) | [virtual] |
delete settings from project file
Definition at line 115 of file qgscomposeritem.cpp.
void QgsComposerItem::repaint | ( | ) | [slot] |
Definition at line 1098 of file qgscomposeritem.cpp.
Referenced by QgsComposerItemCommand::restoreState(), and QgsComposerAttributeTable::setComposerMap().
void QgsComposerItem::rotate | ( | double | angle, |
double & | x, | ||
double & | y | ||
) | const [protected] |
Rotates a point / vector.
angle | rotation angle in degrees, counterclockwise |
x | in/out: x coordinate before / after the rotation |
y | in/out: y cooreinate before / after the rotation |
Definition at line 1088 of file qgscomposeritem.cpp.
References M_PI.
Referenced by QgsComposerMap::mapPolygon(), QgsComposerMap::mapToItemCoords(), sizeChangedByRotation(), and QgsComposerMap::transformShift().
double QgsComposerItem::rotation | ( | ) | const [inline] |
Definition at line 218 of file qgscomposeritem.h.
Referenced by QgsComposerMap::drawCoordinateAnnotation(), and QgsComposerPicture::setRotationMap().
void QgsComposerItem::rotationChanged | ( | double | newRotation | ) | [signal] |
Is emitted on rotation change to notify north arrow pictures.
Referenced by QgsComposerPicture::readXML(), QgsComposerMap::setMapRotation(), setRotation(), and QgsComposerPicture::setRotationMap().
QFont QgsComposerItem::scaledFontPixelSize | ( | const QFont & | font | ) | const |
Returns a font where size is in pixel and font size is upscaled with FONT_WORKAROUND_SCALE.
Definition at line 825 of file qgscomposeritem.cpp.
References FONT_WORKAROUND_SCALE, and pixelFontSize().
Referenced by drawText(), fontAscentMillimeters(), fontHeightCharacterMM(), and textWidthMillimeters().
virtual bool QgsComposerItem::selected | ( | void | ) | [inline, virtual] |
Is selected.
Definition at line 107 of file qgscomposeritem.h.
void QgsComposerItem::setFrame | ( | bool | drawFrame | ) | [inline] |
Definition at line 164 of file qgscomposeritem.h.
void QgsComposerItem::setItemPosition | ( | double | x, |
double | y, | ||
ItemPositionMode | itemPoint = UpperLeft |
||
) |
Moves the item to a new position (in canvas coordinates)
Definition at line 651 of file qgscomposeritem.cpp.
void QgsComposerItem::setItemPosition | ( | double | x, |
double | y, | ||
double | width, | ||
double | height, | ||
ItemPositionMode | itemPoint = UpperLeft |
||
) |
Sets item position and width / height in one go.
Definition at line 658 of file qgscomposeritem.cpp.
References LowerLeft, LowerMiddle, LowerRight, Middle, MiddleLeft, MiddleRight, setSceneRect(), UpperMiddle, and UpperRight.
void QgsComposerItem::setPositionLock | ( | bool | lock | ) | [inline] |
Locks / unlocks the item position for mouse drags.
Definition at line 208 of file qgscomposeritem.h.
Referenced by QgsComposerView::mousePressEvent().
void QgsComposerItem::setRotation | ( | double | r | ) | [virtual, slot] |
Reimplemented in QgsComposerShape, and QgsComposerPicture.
Definition at line 908 of file qgscomposeritem.cpp.
References mRotation, and rotationChanged().
Referenced by QgsComposerMap::setMapRotation().
void QgsComposerItem::setSceneRect | ( | const QRectF & | rectangle | ) | [virtual] |
Sets this items bound in scene coordinates such that 1 item size units corresponds to 1 scene size unit.
Reimplemented in QgsComposerMap, QgsComposerAttributeTable, QgsComposerShape, QgsComposerPicture, QgsComposerArrow, and QgsComposerItemGroup.
Definition at line 686 of file qgscomposeritem.cpp.
Referenced by _readXML(), QgsComposerTable::adaptItemFrame(), QgsComposerLegend::adjustBoxSize(), QgsComposerScaleBar::adjustBoxSize(), QgsComposerLabel::adjustSizeToText(), changeItemRectangle(), QgsComposerView::mousePressEvent(), move(), QgsComposerLegend::paintAndDetermineSize(), and setItemPosition().
void QgsComposerItem::setSelected | ( | bool | s | ) | [virtual] |
Set selected, selected item should be highlighted.
Definition at line 104 of file qgscomposeritem.cpp.
References QgsDebugMsg.
Referenced by QgsComposerView::addComposerArrow(), QgsComposerView::addComposerLabel(), QgsComposerView::addComposerLegend(), QgsComposerView::addComposerMap(), QgsComposerView::addComposerPicture(), QgsComposerView::addComposerScaleBar(), QgsComposerView::addComposerShape(), QgsComposerView::addComposerTable(), QgsComposerItemGroup::addItem(), QgsComposerView::groupItems(), QgsComposerView::mousePressEvent(), and QgsComposerView::sendItemAddedSignal().
void QgsComposerItem::sizeChangedByRotation | ( | double & | width, |
double & | height | ||
) | [protected] |
Calculates width / height of the bounding box of a rotated rectangle (mRotation)
Definition at line 1051 of file qgscomposeritem.cpp.
References mRotation, and rotate().
Referenced by QgsComposerPicture::setRotation(), and QgsComposerShape::setRotation().
double QgsComposerItem::textWidthMillimeters | ( | const QFont & | font, |
const QString & | text | ||
) | const |
Returns the font width in millimeters (considers upscaling and downscaling with FONT_WORKAROUND_SCALE.
Definition at line 799 of file qgscomposeritem.cpp.
References FONT_WORKAROUND_SCALE, and scaledFontPixelSize().
Referenced by QgsComposerLabel::adjustSizeToText(), QgsNumericScaleBarStyle::calculateBoxSize(), QgsScaleBarStyle::calculateBoxSize(), QgsComposerTable::calculateMaxColumnWidths(), QgsComposerMap::drawCoordinateAnnotation(), QgsComposerLegend::drawGroupItem(), QgsScaleBarStyle::drawLabels(), QgsComposerLegend::drawLayerChildItems(), QgsComposerLegend::drawLayerItem(), QgsComposerMap::maxExtension(), QgsComposerScaleBar::paint(), and QgsComposerLegend::paintAndDetermineSize().
virtual int QgsComposerItem::type | ( | ) | const [inline, virtual] |
return correct graphics item type.
Added in v1.7
Reimplemented in QgsComposerMap, QgsComposerAttributeTable, QgsComposerLegend, QgsComposerShape, QgsComposerArrow, QgsComposerScaleBar, QgsComposerPicture, QgsComposerTable, QgsPaperItem, QgsComposerItemGroup, QgsComposerLabel, and QgsComposerTextTable.
Definition at line 101 of file qgscomposeritem.h.
void QgsComposerItem::updateCursor | ( | const QPointF & | itemPos | ) |
Update mouse cursor at (item) position.
Definition at line 903 of file qgscomposeritem.cpp.
References cursorForPosition().
Referenced by QgsComposerView::mousePressEvent().
bool QgsComposerItem::writeSettings | ( | void | ) | [virtual] |
stores state in project
Definition at line 111 of file qgscomposeritem.cpp.
virtual bool QgsComposerItem::writeXML | ( | QDomElement & | elem, |
QDomDocument & | doc | ||
) | const [pure virtual] |
stores state in Dom element
elem | is Dom element corresponding to 'Composer' tag |
doc | is the Dom document |
Implemented in QgsComposerMap, QgsComposerScaleBar, QgsComposerLegend, QgsComposerArrow, QgsComposerLabel, QgsComposerAttributeTable, QgsComposerPicture, QgsComposerItemGroup, QgsComposerShape, QgsPaperItem, QgsComposerTable, and QgsComposerTextTable.
Referenced by QgsComposerItemCommand::saveState().
virtual void QgsComposerItem::zoomContent | ( | int | delta, |
double | x, | ||
double | y | ||
) | [inline, virtual] |
Zoom content of item.
Does nothing per default (but implemented in composer map)
delta | value from wheel event that describes magnitude and direction (positive /negative number) |
x | x-position of mouse cursor (in item coordinates) |
y | y-position of mouse cursor (in item coordinates) |
Reimplemented in QgsComposerMap.
Definition at line 130 of file qgscomposeritem.h.
QGraphicsRectItem* QgsComposerItem::mBoundingResizeRectangle [protected] |
Rectangle used during move and resize actions.
Definition at line 235 of file qgscomposeritem.h.
Referenced by mouseMoveEvent(), mousePressEvent(), mouseReleaseEvent(), and ~QgsComposerItem().
QgsComposition* QgsComposerItem::mComposition [protected] |
Definition at line 226 of file qgscomposeritem.h.
Referenced by beginCommand(), cancelCommand(), changeItemRectangle(), QgsComposerItemGroup::drawFrame(), drawSelectionBoxes(), QgsComposerArrow::drawSVGMarker(), endCommand(), QgsComposerLegend::layerIdList(), QgsPaperItem::paint(), QgsComposerMap::paint(), QgsComposerItem(), QgsComposerMap::QgsComposerMap(), QgsComposerPicture::readXML(), QgsComposerLegend::readXML(), QgsComposerScaleBar::readXML(), QgsComposerPicture::setRotationMap(), ~QgsComposerItem(), and QgsComposerItemGroup::~QgsComposerItemGroup().
Definition at line 228 of file qgscomposeritem.h.
Referenced by changeItemRectangle(), mousePressEvent(), and mouseReleaseEvent().
bool QgsComposerItem::mFrame [protected] |
True if item fram needs to be painted.
Definition at line 238 of file qgscomposeritem.h.
Referenced by _readXML(), _writeXML(), QgsComposerItemGroup::drawFrame(), and drawFrame().
bool QgsComposerItem::mItemPositionLocked [protected] |
True if item position and size cannot be changed with mouse move.
Definition at line 242 of file qgscomposeritem.h.
Referenced by _readXML(), _writeXML(), drawSelectionBoxes(), mouseMoveActionForPosition(), mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().
QPointF QgsComposerItem::mLastMouseEventPos [protected] |
Position of the last mouse move event (in scene coordinates)
Definition at line 232 of file qgscomposeritem.h.
Referenced by mouseMoveEvent(), and mousePressEvent().
double QgsComposerItem::mLastValidViewScaleFactor [mutable, protected] |
Backup to restore item appearance if no view scale factor is available.
Definition at line 245 of file qgscomposeritem.h.
Referenced by _readXML(), _writeXML(), QgsComposerMap::cache(), horizontalViewScaleFactor(), and QgsComposerMap::paint().
QPointF QgsComposerItem::mMouseMoveStartPos [protected] |
Start point of the last mouse move action (in scene coordinates)
Definition at line 230 of file qgscomposeritem.h.
Referenced by mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().
double QgsComposerItem::mRotation [protected] |
Item rotation in degrees, clockwise.
Definition at line 248 of file qgscomposeritem.h.
Referenced by _readXML(), _writeXML(), cornerPointOnRotatedAndScaledRect(), imageSizeConsideringRotation(), QgsComposerMap::mapPolygon(), QgsComposerMap::mapToItemCoords(), QgsComposerPicture::paint(), QgsComposerShape::paint(), QgsComposerMap::paint(), QgsComposerMap::requestedExtent(), setRotation(), QgsComposerPicture::setRotationMap(), sizeChangedByRotation(), QgsComposerMap::transformShift(), QgsComposerMap::xGridLines(), and QgsComposerMap::yGridLines().