Quantum GIS API Documentation
1.7.5-Wroclaw
|
A composer items that draws common shapes (ellipse, triangle, rectangle) More...
#include <qgscomposershape.h>
Public Types | |
enum | Shape { Ellipse, Rectangle, Triangle } |
![]() | |
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) |
Sets item rotation and resizes item bounds such that the shape always has the same size. More... | |
![]() | |
virtual void | setRotation (double r) |
void | repaint () |
Public Member Functions | |
QgsComposerShape (QgsComposition *composition) | |
QgsComposerShape (qreal x, qreal y, qreal width, qreal height, QgsComposition *composition) | |
~QgsComposerShape () | |
virtual int | type () const |
return correct graphics item type. More... | |
void | paint (QPainter *painter, const QStyleOptionGraphicsItem *itemStyle, QWidget *pWidget) |
Reimplementation of QCanvasItem::paint - draw on canvas. 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... | |
void | setLineWidth (double width) |
double | lineWidth () const |
void | setOutlineColor (const QColor &color) |
QColor | outlineColor () const |
void | setFillColor (const QColor &color) |
QColor | fillColor () const |
QgsComposerShape::Shape | shapeType () const |
void | setShapeType (QgsComposerShape::Shape s) |
bool | transparentFill () const |
void | setTransparentFill (bool transparent) |
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... | |
![]() | |
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 (void) |
Is selected. More... | |
virtual bool | writeSettings (void) |
stores state in project More... | |
virtual bool | readSettings (void) |
read state from project More... | |
virtual bool | removeSettings (void) |
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... | |
void | setItemPosition (double x, double y, ItemPositionMode itemPoint=UpperLeft) |
Moves the item to a new position (in canvas coordinates) More... | |
void | setItemPosition (double x, double y, double width, double height, ItemPositionMode itemPoint=UpperLeft) |
Sets item position and width / height in one go. 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 | frame () const |
void | setFrame (bool drawFrame) |
virtual void | addItem (QgsComposerItem *item) |
Composite operations for item groups do nothing per default. More... | |
virtual void | removeItems () |
const QgsComposition * | composition () const |
void | beginCommand (const QString &commandText, QgsComposerMergeCommand::Context c=QgsComposerMergeCommand::Unknown) |
Starts new composer undo command. More... | |
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 halignement=Qt::AlignLeft, Qt::AlignmentFlag valignement=Qt::AlignTop) 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 | 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... | |
void | updateCursor (const QPointF &itemPos) |
Update mouse cursor at (item) position. More... | |
double | rotation () const |
Private Member Functions | |
void | initGraphicsSettings () |
Apply default graphics settings. More... | |
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. More... | |
Private Attributes | |
Shape | mShape |
Ellipse, rectangle or triangle. More... | |
QPen | mPen |
Shape outline. More... | |
QBrush | mBrush |
Shape fill. More... | |
double | mShapeWidth |
double | mShapeHeight |
Additional Inherited Members | |
![]() | |
void | rotationChanged (double newRotation) |
Is emitted on rotation change to notify north arrow pictures. More... | |
void | itemChanged () |
Used e.g. More... | |
![]() | |
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. More... | |
QgsComposerItem::MouseMoveAction | mouseMoveActionForPosition (const QPointF &itemCoordPos) |
Finds out which mouse move action to choose depending on the cursor position inside the widget. More... | |
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) More... | |
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) const |
Calculates width and hight of the picture (in mm) such that it fits into the item frame with the given rotation. More... | |
bool | cornerPointOnRotatedAndScaledRect (double &x, double &y, double width, double height) const |
Calculates corner point after rotation and scaling. More... | |
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. More... | |
void | sizeChangedByRotation (double &width, double &height) |
Calculates width / height of the bounding box of a rotated rectangle (mRotation) More... | |
void | rotate (double angle, double &x, double &y) const |
Rotates a point / vector. More... | |
![]() | |
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... | |
bool | mFrame |
True if item fram needs to be painted. 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 | mRotation |
Item rotation in degrees, clockwise. More... | |
A composer items that draws common shapes (ellipse, triangle, rectangle)
Definition at line 24 of file qgscomposershape.h.
Enumerator | |
---|---|
Ellipse | |
Rectangle | |
Triangle |
Definition at line 29 of file qgscomposershape.h.
QgsComposerShape::QgsComposerShape | ( | QgsComposition * | composition) |
Definition at line 21 of file qgscomposershape.cpp.
References initGraphicsSettings().
QgsComposerShape::QgsComposerShape | ( | qreal | x, |
qreal | y, | ||
qreal | width, | ||
qreal | height, | ||
QgsComposition * | composition | ||
) |
Definition at line 26 of file qgscomposershape.cpp.
References initGraphicsSettings(), mShapeHeight, mShapeWidth, and setSceneRect().
QgsComposerShape::~QgsComposerShape | ( | ) |
Definition at line 34 of file qgscomposershape.cpp.
QColor QgsComposerShape::fillColor | ( | ) | const |
Definition at line 187 of file qgscomposershape.cpp.
References mBrush.
|
private |
Apply default graphics settings.
Definition at line 209 of file qgscomposershape.cpp.
Referenced by QgsComposerShape().
double QgsComposerShape::lineWidth | ( | ) | const |
Definition at line 167 of file qgscomposershape.cpp.
References mPen.
QColor QgsComposerShape::outlineColor | ( | ) | const |
Definition at line 177 of file qgscomposershape.cpp.
References mPen.
void QgsComposerShape::paint | ( | QPainter * | painter, |
const QStyleOptionGraphicsItem * | itemStyle, | ||
QWidget * | pWidget | ||
) |
Reimplementation of QCanvasItem::paint - draw on canvas.
Definition at line 39 of file qgscomposershape.cpp.
References QgsComposerItem::drawBackground(), QgsComposerItem::drawFrame(), QgsComposerItem::drawSelectionBoxes(), Ellipse, mBrush, mPen, QgsComposerItem::mRotation, mShape, mShapeHeight, mShapeWidth, Rectangle, and Triangle.
|
private |
Returns a point on the line from startPoint to directionPoint that is a certain distance away from the starting point.
|
virtual |
sets state from Dom document
itemElem | is Dom node corresponding to item tag |
doc | is Dom document |
Implements QgsComposerItem.
Definition at line 108 of file qgscomposershape.cpp.
References QgsComposerItem::_readXML(), QgsComposerItem::itemChanged(), mBrush, mPen, mShape, mShapeHeight, and mShapeWidth.
void QgsComposerShape::setFillColor | ( | const QColor & | color) |
Definition at line 182 of file qgscomposershape.cpp.
References mBrush.
void QgsComposerShape::setLineWidth | ( | double | width) |
Definition at line 162 of file qgscomposershape.cpp.
References mPen.
void QgsComposerShape::setOutlineColor | ( | const QColor & | color) |
Definition at line 172 of file qgscomposershape.cpp.
References mPen.
|
virtualslot |
Sets item rotation and resizes item bounds such that the shape always has the same size.
Definition at line 222 of file qgscomposershape.cpp.
References mShapeHeight, mShapeWidth, QgsComposerItem::setRotation(), QgsComposerItem::setSceneRect(), and QgsComposerItem::sizeChangedByRotation().
|
virtual |
Sets this items bound in scene coordinates such that 1 item size units corresponds to 1 scene size unit.
Also, the shape is scaled
Reimplemented from QgsComposerItem.
Definition at line 237 of file qgscomposershape.cpp.
References QgsComposerItem::imageSizeConsideringRotation(), mShapeHeight, mShapeWidth, and QgsComposerItem::setSceneRect().
Referenced by QgsComposerShape().
|
inline |
Definition at line 66 of file qgscomposershape.h.
void QgsComposerShape::setTransparentFill | ( | bool | transparent) |
Definition at line 197 of file qgscomposershape.cpp.
References mBrush.
|
inline |
Definition at line 65 of file qgscomposershape.h.
bool QgsComposerShape::transparentFill | ( | ) | const |
Definition at line 192 of file qgscomposershape.cpp.
References mBrush.
|
inlinevirtual |
return correct graphics item type.
Added in v1.7
Reimplemented from QgsComposerItem.
Definition at line 41 of file qgscomposershape.h.
References QgsComposerItem::ComposerShape.
|
virtual |
stores state in Dom element
elem | is Dom element corresponding to 'Composer' tag |
doc | write template file |
Implements QgsComposerItem.
Definition at line 84 of file qgscomposershape.cpp.
References QgsComposerItem::_writeXML(), mBrush, mPen, mShape, mShapeHeight, and mShapeWidth.
|
private |
Shape fill.
Definition at line 85 of file qgscomposershape.h.
Referenced by fillColor(), initGraphicsSettings(), paint(), readXML(), setFillColor(), setTransparentFill(), transparentFill(), and writeXML().
|
private |
Shape outline.
Definition at line 83 of file qgscomposershape.h.
Referenced by initGraphicsSettings(), lineWidth(), outlineColor(), paint(), readXML(), setLineWidth(), setOutlineColor(), and writeXML().
|
private |
Ellipse, rectangle or triangle.
Definition at line 81 of file qgscomposershape.h.
Referenced by paint(), readXML(), and writeXML().
|
private |
Definition at line 87 of file qgscomposershape.h.
Referenced by paint(), QgsComposerShape(), readXML(), setRotation(), setSceneRect(), and writeXML().
|
private |
Definition at line 86 of file qgscomposershape.h.
Referenced by paint(), QgsComposerShape(), readXML(), setRotation(), setSceneRect(), and writeXML().