Quantum GIS API Documentation
1.7.4
|
Widget to display the composer items. More...
#include <qgscomposerview.h>
Public Types | |
enum | Tool { Select = 0, AddArrow, AddMap, AddLegend, AddLabel, AddScalebar, AddPicture, AddShape, AddTable, MoveItemContent } |
Current tool. More... | |
Public Slots | |
void | sendItemAddedSignal (QgsComposerItem *item) |
Casts object to the proper subclass type and calls corresponding itemAdded signal. | |
Signals | |
void | selectedItemChanged (QgsComposerItem *selected) |
Is emitted when selected item changed. | |
void | composerArrowAdded (QgsComposerArrow *arrow) |
Is emitted when new composer arrow has been added to the view. | |
void | composerLabelAdded (QgsComposerLabel *label) |
Is emitted when new composer label has been added to the view. | |
void | composerMapAdded (QgsComposerMap *map) |
Is emitted when new composer map has been added to the view. | |
void | composerScaleBarAdded (QgsComposerScaleBar *scalebar) |
Is emitted when new composer scale bar has been added. | |
void | composerLegendAdded (QgsComposerLegend *legend) |
Is emitted when a new composer legend has been added. | |
void | composerPictureAdded (QgsComposerPicture *picture) |
Is emitted when a new composer picture has been added. | |
void | composerShapeAdded (QgsComposerShape *shape) |
Is emitted when a new composer shape has been added. | |
void | composerTableAdded (QgsComposerAttributeTable *table) |
Is emitted when a new composer table has been added. | |
void | itemRemoved (QgsComposerItem *) |
Is emitted when a composer item has been removed from the scene. | |
void | actionFinished () |
Current action (e.g. | |
Public Member Functions | |
QgsComposerView (QWidget *parent=0, const char *name=0, Qt::WFlags f=0) | |
void | groupItems () |
Add an item group containing the selected items. | |
void | ungroupItems () |
Ungroups the selected items. | |
QgsComposerView::Tool | currentTool () const |
void | setCurrentTool (QgsComposerView::Tool t) |
void | setComposition (QgsComposition *c) |
Sets composition (derived from QGraphicsScene) | |
QgsComposition * | composition () |
Returns the composition or 0 in case of error. | |
void | addComposerArrow (QgsComposerArrow *arrow) |
Adds an arrow item to the graphics scene and advices composer to create a widget for it (through signal) | |
void | addComposerLabel (QgsComposerLabel *label) |
Adds label to the graphics scene and advices composer to create a widget for it (through signal) | |
void | addComposerMap (QgsComposerMap *map) |
Adds map to the graphics scene and advices composer to create a widget for it (through signal) | |
void | addComposerScaleBar (QgsComposerScaleBar *scaleBar) |
Adds scale bar to the graphics scene and advices composer to create a widget for it (through signal) | |
void | addComposerLegend (QgsComposerLegend *legend) |
Adds legend to the graphics scene and advices composer to create a widget for it (through signal) | |
void | addComposerPicture (QgsComposerPicture *picture) |
Adds picture to the graphics scene and advices composer to create a widget for it (through signal) | |
void | addComposerShape (QgsComposerShape *shape) |
Adds a composer shape to the graphics scene and advices composer to create a widget for it (through signal) | |
void | addComposerTable (QgsComposerAttributeTable *table) |
Adds a composer table to the graphics scene and advices composer to create a widget for it (through signal) | |
QMainWindow * | composerWindow () |
Returns the composer main window. | |
void | setPaintingEnabled (bool enabled) |
bool | paintingEnabled () const |
void | pushAddRemoveCommand (QgsComposerItem *item, const QString &text, QgsAddRemoveItemCommand::State state=QgsAddRemoveItemCommand::Added) |
Convenience function to create a QgsAddRemoveItemCommand, connect its signals and push it to the undo stack. | |
Protected Member Functions | |
void | mousePressEvent (QMouseEvent *) |
void | mouseReleaseEvent (QMouseEvent *) |
void | mouseMoveEvent (QMouseEvent *) |
void | mouseDoubleClickEvent (QMouseEvent *e) |
void | keyPressEvent (QKeyEvent *e) |
void | keyReleaseEvent (QKeyEvent *e) |
void | wheelEvent (QWheelEvent *event) |
void | paintEvent (QPaintEvent *event) |
Private Member Functions | |
void | connectAddRemoveCommandSignals (QgsAddRemoveItemCommand *c) |
Private Attributes | |
bool | mShiftKeyPressed |
Status of shift key (used for multiple selection) | |
QgsComposerView::Tool | mCurrentTool |
Current composer tool. | |
QGraphicsRectItem * | mRubberBandItem |
Rubber band item. | |
QGraphicsLineItem * | mRubberBandLineItem |
Rubber band item for arrows. | |
QgsComposerItem * | mMoveContentItem |
Item to move content. | |
QPointF | mMoveContentStartPos |
Start position of content move. | |
QPointF | mRubberBandStartPos |
Start of rubber band creation. | |
bool | mPaintingEnabled |
Widget to display the composer items.
Manages the composer tools and the mouse/key events. Creates the composer items according to the current map tools and keeps track of the rubber band item.
Definition at line 45 of file qgscomposerview.h.
Current tool.
Select | |
AddArrow | |
AddMap | |
AddLegend | |
AddLabel | |
AddScalebar | |
AddPicture | |
AddShape | |
AddTable | |
MoveItemContent |
Definition at line 52 of file qgscomposerview.h.
QgsComposerView::QgsComposerView | ( | QWidget * | parent = 0 , |
const char * | name = 0 , |
||
Qt::WFlags | f = 0 |
||
) |
Definition at line 33 of file qgscomposerview.cpp.
void QgsComposerView::actionFinished | ( | ) | [signal] |
Current action (e.g.
adding composer map) has been finished. The purpose of this signal is that QgsComposer may set the selection tool again
Referenced by mousePressEvent(), and mouseReleaseEvent().
void QgsComposerView::addComposerArrow | ( | QgsComposerArrow * | arrow | ) |
Adds an arrow item to the graphics scene and advices composer to create a widget for it (through signal)
Definition at line 512 of file qgscomposerview.cpp.
References composerArrowAdded(), composition(), pushAddRemoveCommand(), selectedItemChanged(), and QgsComposerItem::setSelected().
Referenced by mouseReleaseEvent().
void QgsComposerView::addComposerLabel | ( | QgsComposerLabel * | label | ) |
Adds label to the graphics scene and advices composer to create a widget for it (through signal)
Definition at line 522 of file qgscomposerview.cpp.
References composerLabelAdded(), composition(), pushAddRemoveCommand(), selectedItemChanged(), and QgsComposerItem::setSelected().
Referenced by mousePressEvent().
void QgsComposerView::addComposerLegend | ( | QgsComposerLegend * | legend | ) |
Adds legend to the graphics scene and advices composer to create a widget for it (through signal)
Definition at line 562 of file qgscomposerview.cpp.
References composerLegendAdded(), QgsComposition::composerMapItems(), composition(), pushAddRemoveCommand(), selectedItemChanged(), QgsComposerLegend::setComposerMap(), and QgsComposerItem::setSelected().
Referenced by mousePressEvent().
void QgsComposerView::addComposerMap | ( | QgsComposerMap * | map | ) |
Adds map to the graphics scene and advices composer to create a widget for it (through signal)
Definition at line 532 of file qgscomposerview.cpp.
References QgsComposerMap::Cache, QgsComposerMap::cache(), composerMapAdded(), pushAddRemoveCommand(), selectedItemChanged(), QgsComposerMap::setPreviewMode(), and QgsComposerItem::setSelected().
Referenced by mouseReleaseEvent().
void QgsComposerView::addComposerPicture | ( | QgsComposerPicture * | picture | ) |
Adds picture to the graphics scene and advices composer to create a widget for it (through signal)
Definition at line 578 of file qgscomposerview.cpp.
References composerPictureAdded(), pushAddRemoveCommand(), selectedItemChanged(), and QgsComposerItem::setSelected().
Referenced by mousePressEvent().
void QgsComposerView::addComposerScaleBar | ( | QgsComposerScaleBar * | scaleBar | ) |
Adds scale bar to the graphics scene and advices composer to create a widget for it (through signal)
Definition at line 545 of file qgscomposerview.cpp.
References QgsComposerScaleBar::applyDefaultSize(), QgsComposition::composerMapItems(), composerScaleBarAdded(), composition(), pushAddRemoveCommand(), selectedItemChanged(), QgsComposerScaleBar::setComposerMap(), and QgsComposerItem::setSelected().
Referenced by mousePressEvent().
void QgsComposerView::addComposerShape | ( | QgsComposerShape * | shape | ) |
Adds a composer shape to the graphics scene and advices composer to create a widget for it (through signal)
Definition at line 588 of file qgscomposerview.cpp.
References composerShapeAdded(), pushAddRemoveCommand(), selectedItemChanged(), and QgsComposerItem::setSelected().
Referenced by mouseReleaseEvent().
void QgsComposerView::addComposerTable | ( | QgsComposerAttributeTable * | table | ) |
Adds a composer table to the graphics scene and advices composer to create a widget for it (through signal)
Definition at line 598 of file qgscomposerview.cpp.
References composerTableAdded(), pushAddRemoveCommand(), selectedItemChanged(), and QgsComposerItem::setSelected().
Referenced by mousePressEvent().
void QgsComposerView::composerArrowAdded | ( | QgsComposerArrow * | arrow | ) | [signal] |
Is emitted when new composer arrow has been added to the view.
Referenced by addComposerArrow(), and sendItemAddedSignal().
void QgsComposerView::composerLabelAdded | ( | QgsComposerLabel * | label | ) | [signal] |
Is emitted when new composer label has been added to the view.
Referenced by addComposerLabel(), and sendItemAddedSignal().
void QgsComposerView::composerLegendAdded | ( | QgsComposerLegend * | legend | ) | [signal] |
Is emitted when a new composer legend has been added.
Referenced by addComposerLegend(), and sendItemAddedSignal().
void QgsComposerView::composerMapAdded | ( | QgsComposerMap * | map | ) | [signal] |
Is emitted when new composer map has been added to the view.
Referenced by addComposerMap(), and sendItemAddedSignal().
void QgsComposerView::composerPictureAdded | ( | QgsComposerPicture * | picture | ) | [signal] |
Is emitted when a new composer picture has been added.
Referenced by addComposerPicture(), and sendItemAddedSignal().
void QgsComposerView::composerScaleBarAdded | ( | QgsComposerScaleBar * | scalebar | ) | [signal] |
Is emitted when new composer scale bar has been added.
Referenced by addComposerScaleBar(), and sendItemAddedSignal().
void QgsComposerView::composerShapeAdded | ( | QgsComposerShape * | shape | ) | [signal] |
Is emitted when a new composer shape has been added.
Referenced by addComposerShape(), and sendItemAddedSignal().
void QgsComposerView::composerTableAdded | ( | QgsComposerAttributeTable * | table | ) | [signal] |
Is emitted when a new composer table has been added.
Referenced by addComposerTable(), and sendItemAddedSignal().
QMainWindow * QgsComposerView::composerWindow | ( | ) |
Returns the composer main window.
Definition at line 717 of file qgscomposerview.cpp.
Returns the composition or 0 in case of error.
Definition at line 499 of file qgscomposerview.cpp.
Referenced by addComposerArrow(), addComposerLabel(), addComposerLegend(), addComposerScaleBar(), groupItems(), keyPressEvent(), mouseMoveEvent(), mousePressEvent(), mouseReleaseEvent(), pushAddRemoveCommand(), ungroupItems(), and wheelEvent().
void QgsComposerView::connectAddRemoveCommandSignals | ( | QgsAddRemoveItemCommand * | c | ) | [private] |
Definition at line 739 of file qgscomposerview.cpp.
References itemRemoved(), and sendItemAddedSignal().
Referenced by keyPressEvent(), and pushAddRemoveCommand().
QgsComposerView::Tool QgsComposerView::currentTool | ( | ) | const [inline] |
Definition at line 74 of file qgscomposerview.h.
void QgsComposerView::groupItems | ( | ) |
Add an item group containing the selected items.
Definition at line 608 of file qgscomposerview.cpp.
References QgsComposerItemGroup::addItem(), composition(), QgsComposition::selectedComposerItems(), selectedItemChanged(), and QgsComposerItem::setSelected().
void QgsComposerView::itemRemoved | ( | QgsComposerItem * | ) | [signal] |
Is emitted when a composer item has been removed from the scene.
Referenced by connectAddRemoveCommandSignals(), keyPressEvent(), and ungroupItems().
void QgsComposerView::keyPressEvent | ( | QKeyEvent * | e | ) | [protected] |
Definition at line 373 of file qgscomposerview.cpp.
References composition(), connectAddRemoveCommandSignals(), QgsComposerMap::isDrawing(), itemRemoved(), QgsComposerItemGroup::items(), mShiftKeyPressed, pushAddRemoveCommand(), QgsAddRemoveItemCommand::Removed, QgsComposition::selectedComposerItems(), and QgsComposition::undoStack().
void QgsComposerView::keyReleaseEvent | ( | QKeyEvent * | e | ) | [protected] |
Definition at line 455 of file qgscomposerview.cpp.
References mShiftKeyPressed.
void QgsComposerView::mouseDoubleClickEvent | ( | QMouseEvent * | e | ) | [protected] |
Definition at line 368 of file qgscomposerview.cpp.
void QgsComposerView::mouseMoveEvent | ( | QMouseEvent * | e | ) | [protected] |
Definition at line 274 of file qgscomposerview.cpp.
References AddArrow, AddMap, AddShape, composition(), mCurrentTool, mMoveContentItem, mMoveContentStartPos, MoveItemContent, mRubberBandItem, mRubberBandLineItem, mRubberBandStartPos, Select, and QgsComposerMap::setOffset().
void QgsComposerView::mousePressEvent | ( | QMouseEvent * | e | ) | [protected] |
Definition at line 41 of file qgscomposerview.cpp.
References actionFinished(), AddArrow, addComposerLabel(), addComposerLegend(), addComposerPicture(), addComposerScaleBar(), addComposerTable(), AddLabel, AddLegend, AddMap, AddPicture, AddScalebar, AddShape, AddTable, QgsComposerLabel::adjustSizeToText(), QgsComposition::composerItemAt(), composition(), mCurrentTool, mMoveContentItem, mMoveContentStartPos, MoveItemContent, mRubberBandItem, mRubberBandLineItem, mRubberBandStartPos, mShiftKeyPressed, QgsComposerItem::positionLock(), Select, selectedItemChanged(), QgsComposerItem::setPositionLock(), QgsComposerPicture::setSceneRect(), QgsComposerAttributeTable::setSceneRect(), QgsComposerItem::setSceneRect(), QgsComposerItem::setSelected(), QgsComposerLabel::setText(), QgsComposition::snapPointToGrid(), and QgsComposerItem::updateCursor().
void QgsComposerView::mouseReleaseEvent | ( | QMouseEvent * | e | ) | [protected] |
Definition at line 177 of file qgscomposerview.cpp.
References actionFinished(), AddArrow, addComposerArrow(), addComposerMap(), addComposerShape(), AddMap, AddShape, QgsComposition::beginCommand(), composition(), QgsComposition::endCommand(), mCurrentTool, mMoveContentItem, mMoveContentStartPos, QgsComposerItem::moveContent(), MoveItemContent, mRubberBandItem, mRubberBandLineItem, mRubberBandStartPos, Select, QgsComposerMap::setOffset(), and QgsComposition::snapPointToGrid().
void QgsComposerView::paintEvent | ( | QPaintEvent * | event | ) | [protected] |
Definition at line 481 of file qgscomposerview.cpp.
References mPaintingEnabled.
bool QgsComposerView::paintingEnabled | ( | ) | const [inline] |
Definition at line 103 of file qgscomposerview.h.
void QgsComposerView::pushAddRemoveCommand | ( | QgsComposerItem * | item, |
const QString & | text, | ||
QgsAddRemoveItemCommand::State | state = QgsAddRemoveItemCommand::Added |
||
) |
Convenience function to create a QgsAddRemoveItemCommand, connect its signals and push it to the undo stack.
Definition at line 749 of file qgscomposerview.cpp.
References composition(), connectAddRemoveCommandSignals(), and QgsComposition::undoStack().
Referenced by addComposerArrow(), addComposerLabel(), addComposerLegend(), addComposerMap(), addComposerPicture(), addComposerScaleBar(), addComposerShape(), addComposerTable(), and keyPressEvent().
void QgsComposerView::selectedItemChanged | ( | QgsComposerItem * | selected | ) | [signal] |
Is emitted when selected item changed.
If 0, no item is selected
Referenced by addComposerArrow(), addComposerLabel(), addComposerLegend(), addComposerMap(), addComposerPicture(), addComposerScaleBar(), addComposerShape(), addComposerTable(), groupItems(), mousePressEvent(), and sendItemAddedSignal().
void QgsComposerView::sendItemAddedSignal | ( | QgsComposerItem * | item | ) | [slot] |
Casts object to the proper subclass type and calls corresponding itemAdded signal.
Definition at line 655 of file qgscomposerview.cpp.
References composerArrowAdded(), composerLabelAdded(), composerLegendAdded(), composerMapAdded(), composerPictureAdded(), composerScaleBarAdded(), composerShapeAdded(), composerTableAdded(), selectedItemChanged(), and QgsComposerItem::setSelected().
Referenced by connectAddRemoveCommandSignals().
void QgsComposerView::setComposition | ( | QgsComposition * | c | ) |
Sets composition (derived from QGraphicsScene)
Definition at line 494 of file qgscomposerview.cpp.
void QgsComposerView::setCurrentTool | ( | QgsComposerView::Tool | t | ) | [inline] |
Definition at line 75 of file qgscomposerview.h.
void QgsComposerView::setPaintingEnabled | ( | bool | enabled | ) | [inline] |
Definition at line 102 of file qgscomposerview.h.
void QgsComposerView::ungroupItems | ( | ) |
Ungroups the selected items.
Definition at line 633 of file qgscomposerview.cpp.
References composition(), itemRemoved(), QgsComposerItemGroup::removeItems(), and QgsComposition::selectedComposerItems().
void QgsComposerView::wheelEvent | ( | QWheelEvent * | event | ) | [protected] |
Definition at line 463 of file qgscomposerview.cpp.
References QgsComposerItem::beginCommand(), QgsComposition::composerItemAt(), and composition().
Current composer tool.
Definition at line 126 of file qgscomposerview.h.
Referenced by mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().
QgsComposerItem* QgsComposerView::mMoveContentItem [private] |
Item to move content.
Definition at line 132 of file qgscomposerview.h.
Referenced by mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().
QPointF QgsComposerView::mMoveContentStartPos [private] |
Start position of content move.
Definition at line 134 of file qgscomposerview.h.
Referenced by mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().
bool QgsComposerView::mPaintingEnabled [private] |
Definition at line 138 of file qgscomposerview.h.
Referenced by paintEvent().
QGraphicsRectItem* QgsComposerView::mRubberBandItem [private] |
Rubber band item.
Definition at line 128 of file qgscomposerview.h.
Referenced by mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().
QGraphicsLineItem* QgsComposerView::mRubberBandLineItem [private] |
Rubber band item for arrows.
Definition at line 130 of file qgscomposerview.h.
Referenced by mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().
QPointF QgsComposerView::mRubberBandStartPos [private] |
Start of rubber band creation.
Definition at line 136 of file qgscomposerview.h.
Referenced by mouseMoveEvent(), mousePressEvent(), and mouseReleaseEvent().
bool QgsComposerView::mShiftKeyPressed [private] |
Status of shift key (used for multiple selection)
Definition at line 124 of file qgscomposerview.h.
Referenced by keyPressEvent(), keyReleaseEvent(), and mousePressEvent().