QGIS API Documentation  2.0.1-Dufour
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Types | Public Slots | Signals | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Friends | List of all members
QgsComposerItem Class Reference

A item that forms part of a map composition. More...

#include <qgscomposeritem.h>

Inheritance diagram for QgsComposerItem:
Inheritance graph
[legend]
Collaboration diagram for QgsComposerItem:
Collaboration graph
[legend]

Public Types

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
}

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.
void sizeChanged ()
 Emitted if the rectangle changes.

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 ()
 Is selected.
virtual bool writeSettings ()
 stores state in project
virtual bool readSettings ()
 read state from project
virtual bool removeSettings ()
 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.
ItemPositionMode lastUsedPositionMode ()
 Returns item's last used position mode.
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 hasFrame () const
 Whether this item has a frame or not.
void setFrameEnabled (bool drawFrame)
 Set whether this item has a frame drawn around it or not.
bool hasBackground () const
 Whether this item has a Background or not.
void setBackgroundEnabled (bool drawBackground)
 Set whether this item has a Background drawn around it or not.
QColor backgroundColor () const
 Gets the background color for this item.
void setBackgroundColor (const QColor &backgroundColor)
 Sets the background color for this item.
QPainter::CompositionMode blendMode () const
 Returns the item's composition blending mode.
void setBlendMode (QPainter::CompositionMode blendMode)
 Sets the item's composition blending mode.
int transparency () const
 Returns the item's transparency.
void setTransparency (int transparency)
 Sets the item's transparency.
bool effectsEnabled () const
 Returns true if effects (eg blend modes) are enabled for the item.
void setEffectsEnabled (bool effectsEnabled)
 Sets whether effects (eg blend modes) are enabled for the item.
virtual void addItem (QgsComposerItem *item)
 Composite operations for item groups do nothing per default.
virtual void removeItems ()
const QgsCompositioncomposition () const
QgsCompositioncomposition ()
virtual void beginItemCommand (const QString &text)
void beginCommand (const QString &commandText, QgsComposerMergeCommand::Context c=QgsComposerMergeCommand::Unknown)
 Starts new composer undo command.
virtual void endItemCommand ()
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 halignment=Qt::AlignLeft, Qt::AlignmentFlag valignment=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 fontDescentMillimeters (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
virtual void updateItem ()
 Updates item, with the possibility to do custom update for subclasses.
QString id () const
 Get item's id (which is not necessarly unique)
virtual void setId (const QString &id)
 Set item's id (which is not necessarly unique)
QString uuid () const
 Get item identification name.

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 &currentPosition, 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.
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.
QGraphicsLineItem * hAlignSnapItem ()
 Return horizontal align snap item.
void deleteHAlignSnapItem ()
QGraphicsLineItem * vAlignSnapItem ()
 Return vertical align snap item.
void deleteVAlignSnapItem ()
void deleteAlignItems ()

Protected Attributes

QgsCompositionmComposition
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.
QGraphicsLineItem * mHAlignSnapItem
QGraphicsLineItem * mVAlignSnapItem
bool mFrame
 True if item fram needs to be painted.
bool mBackground
 True if item background needs to be painted.
QColor mBackgroundColor
 Background color.
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.
QPainter::CompositionMode mBlendMode
 Composition blend mode for item.
bool mEffectsEnabled
QgsComposerEffectmEffect
int mTransparency
 Item transparency.
ItemPositionMode mLastUsedPositionMode
 The item's position mode.

Private Member Functions

void init (bool manageZValue)

Private Attributes

QString mId
QString mUuid
QString mTemplateUuid

Friends

class QgsComposerItemGroup

Detailed Description

A item that forms part of a map composition.

Definition at line 36 of file qgscomposeritem.h.

Member Enumeration Documentation

Enumerator:
UpperLeft 
UpperMiddle 
UpperRight 
MiddleLeft 
Middle 
MiddleRight 
LowerLeft 
LowerMiddle 
LowerRight 

Definition at line 77 of file qgscomposeritem.h.

Enumerator:
ComposerItem 
ComposerArrow 
ComposerItemGroup 
ComposerLabel 
ComposerLegend 
ComposerMap 
ComposerPaper 
ComposerPicture 
ComposerScaleBar 
ComposerShape 
ComposerTable 
ComposerAttributeTable 
ComposerTextTable 
ComposerFrame 

Definition at line 41 of file qgscomposeritem.h.

Describes the action (move or resize in different directon) to be done during mouse move.

Enumerator:
MoveItem 
ResizeUp 
ResizeDown 
ResizeLeft 
ResizeRight 
ResizeLeftUp 
ResizeRightUp 
ResizeLeftDown 
ResizeRightDown 
NoAction 

Definition at line 63 of file qgscomposeritem.h.

Constructor & Destructor Documentation

QgsComposerItem::QgsComposerItem ( QgsComposition composition,
bool  manageZValue = true 
)

Constructor.

Parameters
compositionparent composition
manageZValuetrue if the z-Value of this object should be managed by mComposition

Definition at line 45 of file qgscomposeritem.cpp.

References init().

QgsComposerItem::QgsComposerItem ( qreal  x,
qreal  y,
qreal  width,
qreal  height,
QgsComposition composition,
bool  manageZValue = true 
)

Constructor with box position and composer object.

Parameters
xx coordinate of item
yy coordinate of item
widthwidth of item
heightheight of item
compositionparent composition
manageZValuetrue if the z-Value of this object should be managed by mComposition

Definition at line 68 of file qgscomposeritem.cpp.

References init().

QgsComposerItem::~QgsComposerItem ( )
virtual

Member Function Documentation

bool QgsComposerItem::_readXML ( const QDomElement &  itemElem,
const QDomDocument &  doc 
)
bool QgsComposerItem::_writeXML ( QDomElement &  itemElem,
QDomDocument &  doc 
) const
virtual void QgsComposerItem::addItem ( QgsComposerItem item)
inlinevirtual

Composite operations for item groups do nothing per default.

Reimplemented in QgsComposerItemGroup.

Definition at line 235 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 1036 of file qgscomposeritem.cpp.

References M_PI.

Referenced by QgsComposerArrow::drawHardcodedMarker(), and QgsComposerArrow::drawSVGMarker().

QColor QgsComposerItem::backgroundColor ( ) const
inline

Gets the background color for this item.

Returns
background color
Note
introduced in 2.0

Definition at line 205 of file qgscomposeritem.h.

Referenced by QgsComposerMap::cache(), and setBackgroundColor().

void QgsComposerItem::beginCommand ( const QString &  commandText,
QgsComposerMergeCommand::Context  c = QgsComposerMergeCommand::Unknown 
)

Starts new composer undo command.

Parameters
commandTextcommand title
ccontext for mergeable commands (unknown for non-mergeable commands

Definition at line 348 of file qgscomposeritem.cpp.

References QgsComposition::beginCommand(), and mComposition.

Referenced by QgsComposerView::wheelEvent().

virtual void QgsComposerItem::beginItemCommand ( const QString &  text)
inlinevirtual

Reimplemented in QgsComposerFrame.

Definition at line 241 of file qgscomposeritem.h.

Referenced by mouseReleaseEvent(), and QgsComposition::removeComposerItem().

QPainter::CompositionMode QgsComposerItem::blendMode ( ) const
inline

Returns the item's composition blending mode.

Definition at line 215 of file qgscomposeritem.h.

Referenced by setBlendMode(), QgsComposerMap::setGridBlendMode(), and QgsComposerMap::setOverviewBlendMode().

void QgsComposerItem::cancelCommand ( )

Definition at line 364 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)

Parameters
currentPositioncurrent position of mouse cursor
mouseMoveStartPoscursor position at the start of the current mouse action
originalItemItem position at the start of the mouse action
dxx-Change of mouse cursor
dyy-Change of mouse cursor
changeItemItem to change size (can be the same as originalItem or a differen one)

Definition at line 571 of file qgscomposeritem.cpp.

References QgsComposition::alignItem(), QgsComposition::alignmentSnap(), QgsComposition::alignPos(), deleteAlignItems(), deleteHAlignSnapItem(), deleteVAlignSnapItem(), hAlignSnapItem(), mComposition, mCurrentMouseMoveAction, MoveItem, NoAction, QgsComposition::numPages(), QgsComposition::paperHeight(), QgsComposition::paperWidth(), ResizeDown, ResizeLeft, ResizeLeftDown, ResizeLeftUp, ResizeRight, ResizeRightDown, ResizeRightUp, ResizeUp, setSceneRect(), QgsComposition::snapPointToGrid(), QgsComposition::spaceBetweenPages(), updateItem(), and vAlignSnapItem().

Referenced by mouseMoveEvent(), and mouseReleaseEvent().

const QgsComposition* QgsComposerItem::composition ( ) const
inline
QgsComposition* QgsComposerItem::composition ( )
inline

Definition at line 239 of file qgscomposeritem.h.

bool QgsComposerItem::cornerPointOnRotatedAndScaledRect ( double &  x,
double &  y,
double  width,
double  height 
) const
protected

Calculates corner point after rotation and scaling.

Definition at line 1189 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 476 of file qgscomposeritem.cpp.

References mouseMoveActionForPosition(), MoveItem, NoAction, ResizeDown, ResizeLeft, ResizeLeftDown, ResizeLeftUp, ResizeRight, ResizeRightDown, ResizeRightUp, and ResizeUp.

Referenced by hoverMoveEvent(), and updateCursor().

void QgsComposerItem::deleteAlignItems ( )
protected
void QgsComposerItem::deleteHAlignSnapItem ( )
protected

Definition at line 1297 of file qgscomposeritem.cpp.

References mHAlignSnapItem.

Referenced by changeItemRectangle(), and deleteAlignItems().

void QgsComposerItem::deleteVAlignSnapItem ( )
protected

Definition at line 1307 of file qgscomposeritem.cpp.

References mVAlignSnapItem.

Referenced by changeItemRectangle(), and deleteAlignItems().

void QgsComposerItem::drawArrowHead ( QPainter *  p,
double  x,
double  y,
double  angle,
double  arrowHeadWidth 
) const
protected

Draws arrowhead.

Definition at line 958 of file qgscomposeritem.cpp.

References M_PI.

Referenced by QgsComposerArrow::drawHardcodedMarker().

void QgsComposerItem::drawBackground ( QPainter *  p)
protectedvirtual
void QgsComposerItem::drawFrame ( QPainter *  p)
protectedvirtual
void QgsComposerItem::drawSelectionBoxes ( QPainter *  p)
protectedvirtual
void QgsComposerItem::drawText ( QPainter *  p,
double  x,
double  y,
const QString &  text,
const QFont &  font 
) const
void QgsComposerItem::drawText ( QPainter *  p,
const QRectF &  rect,
const QString &  text,
const QFont &  font,
Qt::AlignmentFlag  halignment = Qt::AlignLeft,
Qt::AlignmentFlag  valignment = Qt::AlignTop 
) const

Like the above, but with a rectangle for multiline text.

Definition at line 944 of file qgscomposeritem.cpp.

References FONT_WORKAROUND_SCALE, and scaledFontPixelSize().

bool QgsComposerItem::effectsEnabled ( ) const
inline

Returns true if effects (eg blend modes) are enabled for the item.

Note
introduced in 2.0

Definition at line 228 of file qgscomposeritem.h.

Referenced by setEffectsEnabled().

void QgsComposerItem::endCommand ( )

Finish current command and push it onto the undo stack.

Definition at line 356 of file qgscomposeritem.cpp.

References QgsComposition::endCommand(), and mComposition.

virtual void QgsComposerItem::endItemCommand ( )
inlinevirtual

Reimplemented in QgsComposerFrame.

Definition at line 248 of file qgscomposeritem.h.

Referenced by mouseReleaseEvent(), and QgsComposition::removeComposerItem().

double QgsComposerItem::fontAscentMillimeters ( const QFont &  font) const
double QgsComposerItem::fontDescentMillimeters ( const QFont &  font) const

Returns the font ascent in Millimeters (considers upscaling and downscaling with FONT_WORKAROUND_SCALE.

Definition at line 1016 of file qgscomposeritem.cpp.

References FONT_WORKAROUND_SCALE, and scaledFontPixelSize().

Referenced by QgsComposerLegend::drawTitle().

double QgsComposerItem::fontHeightCharacterMM ( const QFont &  font,
const QChar &  c 
) const

Returns the font height of a character in millimeters.

Note
this method was added in version 1.7

Definition at line 1002 of file qgscomposeritem.cpp.

References FONT_WORKAROUND_SCALE, and scaledFontPixelSize().

Referenced by QgsComposerMap::drawCoordinateAnnotation(), and QgsComposerLegend::drawSymbolItem().

QGraphicsLineItem * QgsComposerItem::hAlignSnapItem ( )
protected

Return horizontal align snap item.

Creates a new graphics line if 0

Definition at line 1273 of file qgscomposeritem.cpp.

References mHAlignSnapItem.

Referenced by changeItemRectangle().

bool QgsComposerItem::hasBackground ( ) const
inline

Whether this item has a Background or not.

Returns
true if there is a Background around this item, otherwise false.
Note
introduced since 2.0
See Also
hasBackground

Definition at line 191 of file qgscomposeritem.h.

Referenced by QgsComposerMap::cache().

bool QgsComposerItem::hasFrame ( ) const
inline

Whether this item has a frame or not.

Returns
true if there is a frame around this item, otherwise false.
Note
introduced since 1.8
See Also
hasFrame

Definition at line 175 of file qgscomposeritem.h.

double QgsComposerItem::horizontalViewScaleFactor ( ) const
protected

Returns the zoom factor of the graphics view.

Returns
the factor or -1 in case of error (e.g. graphic view does not exist)
Note
: this function was introduced in version 1.2

Definition at line 1054 of file qgscomposeritem.cpp.

References mLastValidViewScaleFactor.

Referenced by QgsComposerMap::cache(), QgsComposerArrow::drawSVGMarker(), lockSymbolSize(), QgsComposerMap::paint(), and rectHandlerBorderTolerance().

void QgsComposerItem::hoverMoveEvent ( QGraphicsSceneHoverEvent *  event)
protectedvirtual

Definition at line 920 of file qgscomposeritem.cpp.

References cursorForPosition().

QString QgsComposerItem::id ( ) const
inline

Get item's id (which is not necessarly unique)

Note
this method was added in version 1.7

Reimplemented in QgsComposerMap.

Definition at line 301 of file qgscomposeritem.h.

Referenced by QgsComposition::getComposerItemById(), and setId().

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 1125 of file qgscomposeritem.cpp.

References cornerPointOnRotatedAndScaledRect(), mRotation, QgsSymbolLayerV2Utils::pointOnLineWithDistance(), and qgsDoubleNear().

Referenced by QgsComposerPicture::setSceneRect(), QgsComposerShape::setSceneRect(), and QgsComposerLabel::setSceneRect().

void QgsComposerItem::init ( bool  manageZValue)
private

Definition at line 94 of file qgscomposeritem.cpp.

References QgsComposition::addItemToZList(), mComposition, and mEffect.

Referenced by QgsComposerItem().

void QgsComposerItem::itemChanged ( )
signal
ItemPositionMode QgsComposerItem::lastUsedPositionMode ( )
inline

Returns item's last used position mode.

Note
: This property has no effect on actual's item position, which is always the top-left corner.
: this method was added in version 2.0

Definition at line 146 of file qgscomposeritem.h.

double QgsComposerItem::lockSymbolSize ( ) const
protected

Returns the size of the lock symbol depending on the composer zoom level and the item size.

Note
: this function was introduced in version 1.2

Definition at line 1091 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 502 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)
protectedvirtual
void QgsComposerItem::mousePressEvent ( QGraphicsSceneMouseEvent *  event)
protectedvirtual
void QgsComposerItem::mouseReleaseEvent ( QGraphicsSceneMouseEvent *  event)
protectedvirtual
void QgsComposerItem::move ( double  dx,
double  dy 
)

Moves item in canvas coordinates.

Definition at line 805 of file qgscomposeritem.cpp.

References setSceneRect().

Referenced by QgsComposition::addItemsFromXML(), and QgsComposerScaleBar::correctXPositionAlignment().

virtual void QgsComposerItem::moveContent ( double  dx,
double  dy 
)
inlinevirtual

Move Content of item.

Does nothing per default (but implemented in composer map)

Parameters
dxmove in x-direction (canvas coordinates)
dymove in y-direction(canvas coordinates)

Reimplemented in QgsComposerMap.

Definition at line 128 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 1023 of file qgscomposeritem.cpp.

Referenced by scaledFontPixelSize().

bool QgsComposerItem::positionLock ( ) const
inline

Returns position lock for mouse drags (true means locked)

Note
this method was added in version 1.2

Definition at line 288 of file qgscomposeritem.h.

Referenced by _readXML(), and QgsComposerView::mousePressEvent().

bool QgsComposerItem::readSettings ( void  )
virtual

read state from project

Definition at line 135 of file qgscomposeritem.cpp.

virtual bool QgsComposerItem::readXML ( const QDomElement &  itemElem,
const QDomDocument &  doc 
)
pure virtual
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 1073 of file qgscomposeritem.cpp.

References horizontalViewScaleFactor().

Referenced by drawSelectionBoxes(), and mouseMoveActionForPosition().

virtual void QgsComposerItem::removeItems ( )
inlinevirtual

Reimplemented in QgsComposerItemGroup.

Definition at line 236 of file qgscomposeritem.h.

bool QgsComposerItem::removeSettings ( void  )
virtual

delete settings from project file

Definition at line 137 of file qgscomposeritem.cpp.

void QgsComposerItem::repaint ( )
slot
void QgsComposerItem::rotate ( double  angle,
double &  x,
double &  y 
) const
protected

Rotates a point / vector.

Parameters
anglerotation angle in degrees, counterclockwise
xin/out: x coordinate before / after the rotation
yin/out: y cooreinate before / after the rotation

Definition at line 1263 of file qgscomposeritem.cpp.

References M_PI.

Referenced by QgsComposerMap::mapPolygon(), QgsComposerMap::mapToItemCoords(), sizeChangedByRotation(), and QgsComposerMap::transformShift().

double QgsComposerItem::rotation ( ) const
inline
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 1028 of file qgscomposeritem.cpp.

References FONT_WORKAROUND_SCALE, and pixelFontSize().

Referenced by drawText(), fontAscentMillimeters(), fontDescentMillimeters(), fontHeightCharacterMM(), and textWidthMillimeters().

virtual bool QgsComposerItem::selected ( )
inlinevirtual

Is selected.

Definition at line 111 of file qgscomposeritem.h.

void QgsComposerItem::setBackgroundColor ( const QColor &  backgroundColor)

Sets the background color for this item.

Parameters
backgroundColornew background color
Returns
nothing
Note
introduced in 2.0

Definition at line 893 of file qgscomposeritem.cpp.

References backgroundColor(), and mBackgroundColor.

Referenced by _readXML().

void QgsComposerItem::setBackgroundEnabled ( bool  drawBackground)
inline

Set whether this item has a Background drawn around it or not.

Parameters
drawBackgrounddraw Background
Returns
nothing
Note
introduced in 2.0
See Also
hasBackground

Definition at line 199 of file qgscomposeritem.h.

void QgsComposerItem::setBlendMode ( QPainter::CompositionMode  blendMode)

Sets the item's composition blending mode.

Definition at line 899 of file qgscomposeritem.cpp.

References blendMode(), mBlendMode, mEffect, and QgsComposerEffect::setCompositionMode().

Referenced by _readXML().

void QgsComposerItem::setEffectsEnabled ( bool  effectsEnabled)

Sets whether effects (eg blend modes) are enabled for the item.

Note
introduced in 2.0

Definition at line 913 of file qgscomposeritem.cpp.

References effectsEnabled(), mEffect, and mEffectsEnabled.

Referenced by QgsComposition::setUseAdvancedEffects().

void QgsComposerItem::setFrameEnabled ( bool  drawFrame)
inline

Set whether this item has a frame drawn around it or not.

Parameters
drawFramedraw frame
Returns
nothing
Note
introduced in 1.8
See Also
hasFrame

Definition at line 183 of file qgscomposeritem.h.

Referenced by QgsComposerShape::QgsComposerShape().

void QgsComposerItem::setId ( const QString &  id)
virtual

Set item's id (which is not necessarly unique)

Note
this method was added in version 1.7

Definition at line 1328 of file qgscomposeritem.cpp.

References id(), and mId.

Referenced by _readXML().

void QgsComposerItem::setItemPosition ( double  x,
double  y,
ItemPositionMode  itemPoint = UpperLeft 
)

Moves the item to a new position (in canvas coordinates)

Definition at line 812 of file qgscomposeritem.cpp.

Referenced by QgsComposition::addItemsFromXML().

void QgsComposerItem::setItemPosition ( double  x,
double  y,
double  width,
double  height,
ItemPositionMode  itemPoint = UpperLeft 
)

Sets item position and width / height in one go.

Note
: this method was added in version 1.6

Definition at line 819 of file qgscomposeritem.cpp.

References LowerLeft, LowerMiddle, LowerRight, Middle, MiddleLeft, MiddleRight, mLastUsedPositionMode, setSceneRect(), UpperMiddle, and UpperRight.

void QgsComposerItem::setPositionLock ( bool  lock)
inline

Locks / unlocks the item position for mouse drags.

Note
this method was added in version 1.2

Definition at line 284 of file qgscomposeritem.h.

Referenced by QgsComposerView::mousePressEvent().

void QgsComposerItem::setRotation ( double  r)
virtualslot

Definition at line 1111 of file qgscomposeritem.cpp.

References mRotation, and rotationChanged().

Referenced by QgsComposerMap::setMapRotation().

void QgsComposerItem::setSceneRect ( const QRectF &  rectangle)
virtual
void QgsComposerItem::setSelected ( bool  s)
virtual
void QgsComposerItem::setTransparency ( int  transparency)

Sets the item's transparency.

Definition at line 906 of file qgscomposeritem.cpp.

References mTransparency, and transparency().

Referenced by _readXML().

void QgsComposerItem::sizeChanged ( )
signal

Emitted if the rectangle changes.

Referenced by setSceneRect().

void QgsComposerItem::sizeChangedByRotation ( double &  width,
double &  height 
)
protected

Calculates width / height of the bounding box of a rotated rectangle (mRotation)

Definition at line 1226 of file qgscomposeritem.cpp.

References mRotation, and rotate().

Referenced by QgsComposerLabel::adjustSizeToText(), QgsComposerShape::setRotation(), QgsComposerPicture::setRotation(), and QgsComposerLabel::setRotation().

double QgsComposerItem::textWidthMillimeters ( const QFont &  font,
const QString &  text 
) const
int QgsComposerItem::transparency ( ) const
inline

Returns the item's transparency.

Definition at line 221 of file qgscomposeritem.h.

Referenced by setTransparency().

virtual int QgsComposerItem::type ( ) const
inlinevirtual
void QgsComposerItem::updateCursor ( const QPointF &  itemPos)

Update mouse cursor at (item) position.

Note
this method was added in version 1.2

Definition at line 1106 of file qgscomposeritem.cpp.

References cursorForPosition().

Referenced by QgsComposerView::mousePressEvent().

virtual void QgsComposerItem::updateItem ( )
inlinevirtual

Updates item, with the possibility to do custom update for subclasses.

Reimplemented in QgsComposerMap.

Definition at line 297 of file qgscomposeritem.h.

Referenced by changeItemRectangle().

QString QgsComposerItem::uuid ( ) const
inline

Get item identification name.

Note
this method was added in version 2.0
there is not setter since one can't manually set the id

Definition at line 310 of file qgscomposeritem.h.

Referenced by QgsComposition::getComposerItemByUuid(), and QgsComposerItemGroup::readXML().

QGraphicsLineItem * QgsComposerItem::vAlignSnapItem ( )
protected

Return vertical align snap item.

Creates a new graphics line if 0

Definition at line 1285 of file qgscomposeritem.cpp.

References mVAlignSnapItem.

Referenced by changeItemRectangle().

bool QgsComposerItem::writeSettings ( void  )
virtual

stores state in project

Definition at line 133 of file qgscomposeritem.cpp.

virtual bool QgsComposerItem::writeXML ( QDomElement &  elem,
QDomDocument &  doc 
) const
pure virtual
virtual void QgsComposerItem::zoomContent ( int  delta,
double  x,
double  y 
)
inlinevirtual

Zoom content of item.

Does nothing per default (but implemented in composer map)

Parameters
deltavalue from wheel event that describes magnitude and direction (positive /negative number)
xx-position of mouse cursor (in item coordinates)
yy-position of mouse cursor (in item coordinates)

Reimplemented in QgsComposerMap.

Definition at line 134 of file qgscomposeritem.h.

Friends And Related Function Documentation

friend class QgsComposerItemGroup
friend

Definition at line 451 of file qgscomposeritem.h.

Member Data Documentation

bool QgsComposerItem::mBackground
protected

True if item background needs to be painted.

Definition at line 334 of file qgscomposeritem.h.

Referenced by _readXML(), _writeXML(), QgsComposerShape::drawBackground(), and drawBackground().

QColor QgsComposerItem::mBackgroundColor
protected

Background color.

Definition at line 336 of file qgscomposeritem.h.

Referenced by setBackgroundColor().

QPainter::CompositionMode QgsComposerItem::mBlendMode
protected

Composition blend mode for item.

Definition at line 349 of file qgscomposeritem.h.

Referenced by _writeXML(), and setBlendMode().

QGraphicsRectItem* QgsComposerItem::mBoundingResizeRectangle
protected

Rectangle used during move and resize actions.

Definition at line 327 of file qgscomposeritem.h.

Referenced by mouseMoveEvent(), mousePressEvent(), mouseReleaseEvent(), and ~QgsComposerItem().

QgsComposition* QgsComposerItem::mComposition
protected
QgsComposerItem::MouseMoveAction QgsComposerItem::mCurrentMouseMoveAction
protected

Definition at line 320 of file qgscomposeritem.h.

Referenced by changeItemRectangle(), mousePressEvent(), and mouseReleaseEvent().

QgsComposerEffect* QgsComposerItem::mEffect
protected

Definition at line 351 of file qgscomposeritem.h.

Referenced by init(), setBlendMode(), setEffectsEnabled(), and ~QgsComposerItem().

bool QgsComposerItem::mEffectsEnabled
protected

Definition at line 350 of file qgscomposeritem.h.

Referenced by setEffectsEnabled().

bool QgsComposerItem::mFrame
protected

True if item fram needs to be painted.

Definition at line 332 of file qgscomposeritem.h.

Referenced by _readXML(), _writeXML(), QgsComposerItemGroup::drawFrame(), QgsComposerShape::drawFrame(), and drawFrame().

QGraphicsLineItem* QgsComposerItem::mHAlignSnapItem
protected

Definition at line 328 of file qgscomposeritem.h.

Referenced by deleteHAlignSnapItem(), and hAlignSnapItem().

QString QgsComposerItem::mId
private

Definition at line 443 of file qgscomposeritem.h.

Referenced by _writeXML(), QgsComposerMap::id(), and setId().

bool QgsComposerItem::mItemPositionLocked
protected

True if item position and size cannot be changed with mouse move.

Note
: this member was added in version 1.2

Definition at line 340 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 324 of file qgscomposeritem.h.

Referenced by mouseMoveEvent(), and mousePressEvent().

ItemPositionMode QgsComposerItem::mLastUsedPositionMode
protected

The item's position mode.

Note
: this member was added in version 2.0

Definition at line 358 of file qgscomposeritem.h.

Referenced by _readXML(), _writeXML(), and setItemPosition().

double QgsComposerItem::mLastValidViewScaleFactor
mutableprotected

Backup to restore item appearance if no view scale factor is available.

Definition at line 343 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 322 of file qgscomposeritem.h.

Referenced by mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().

double QgsComposerItem::mRotation
protected
QString QgsComposerItem::mTemplateUuid
private

Definition at line 447 of file qgscomposeritem.h.

Referenced by _readXML(), and QgsComposerItemGroup::readXML().

int QgsComposerItem::mTransparency
protected

Item transparency.

Definition at line 354 of file qgscomposeritem.h.

Referenced by _writeXML(), and setTransparency().

QString QgsComposerItem::mUuid
private

Definition at line 445 of file qgscomposeritem.h.

Referenced by _readXML(), _writeXML(), and QgsComposerItemGroup::readXML().

QGraphicsLineItem* QgsComposerItem::mVAlignSnapItem
protected

Definition at line 329 of file qgscomposeritem.h.

Referenced by deleteVAlignSnapItem(), and vAlignSnapItem().


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