mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-28 00:17:30 -05:00
197 lines
5.3 KiB
Plaintext
197 lines
5.3 KiB
Plaintext
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/composer/qgscomposernodesitem.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|
|
|
|
|
|
|
|
|
|
class QgsComposerNodesItem: QgsComposerItem
|
|
{
|
|
%Docstring
|
|
An abstract composer item that provides generic methods for nodes based
|
|
shapes such as polygon or polylines.
|
|
.. versionadded:: 2.16
|
|
%End
|
|
|
|
%TypeHeaderCode
|
|
#include "qgscomposernodesitem.h"
|
|
%End
|
|
public:
|
|
|
|
QgsComposerNodesItem( const QString &mTagName, QgsComposition *c );
|
|
%Docstring
|
|
Constructor
|
|
\param mTagName tag used in XML file
|
|
\param c parent composition
|
|
%End
|
|
|
|
QgsComposerNodesItem( const QString &mTagName, const QPolygonF &polygon, QgsComposition *c );
|
|
%Docstring
|
|
Constructor
|
|
\param mTagName tag used in XML file
|
|
\param polygon nodes of the shape
|
|
\param c parent composition
|
|
%End
|
|
|
|
bool addNode( QPointF pt, const bool checkArea = true, const double radius = 10 );
|
|
%Docstring
|
|
Add a node in current shape.
|
|
\param pt is the location of the new node
|
|
\param checkArea is a flag to indicate if there's a space constraint.
|
|
\param radius is the space contraint and is used only if checkArea is
|
|
true. Typically, if this flag is true, the new node has to be nearest
|
|
than radius to the shape to be added.
|
|
:rtype: bool
|
|
%End
|
|
|
|
void setDisplayNodes( const bool display = true );
|
|
%Docstring
|
|
Set a tag to indicate if we want to draw or not the shape's nodes.
|
|
\param display
|
|
%End
|
|
|
|
bool moveNode( const int index, QPointF node );
|
|
%Docstring
|
|
Move a node to a new position.
|
|
\param index the index of the node to move
|
|
\param node is the new position in scene coordinate
|
|
:rtype: bool
|
|
%End
|
|
|
|
virtual void paint( QPainter *painter, const QStyleOptionGraphicsItem *itemStyle, QWidget *pWidget );
|
|
|
|
%Docstring
|
|
Reimplementation of QCanvasItem.paint - draw on canvas
|
|
%End
|
|
|
|
int nodeAtPosition( QPointF node, const bool searchInRadius = true, const double radius = 10 );
|
|
%Docstring
|
|
Search the nearest node in shape within a maximal area. Returns the
|
|
index of the nearest node or -1.
|
|
\param node is where a shape's node is searched
|
|
\param searchInRadius is a flag to indicate if the area of research is
|
|
limited in space.
|
|
\param radius is only used if searchInRadius is true
|
|
:rtype: int
|
|
%End
|
|
|
|
bool nodePosition( const int index, QPointF &position );
|
|
%Docstring
|
|
Gets the position of a node in scene coordinate.
|
|
\param index of the node
|
|
\param position the position of the node
|
|
:return: true if the index is valid and the position is set, false otherwise
|
|
:rtype: bool
|
|
%End
|
|
|
|
virtual bool readXml( const QDomElement &itemElem, const QDomDocument &doc );
|
|
|
|
%Docstring
|
|
Sets state from Dom document
|
|
\param itemElem is Dom node corresponding to item tag
|
|
\param doc is Dom document
|
|
:rtype: bool
|
|
%End
|
|
|
|
bool removeNode( const int index );
|
|
%Docstring
|
|
Remove a node from the shape.
|
|
\param index of the node to delete
|
|
:rtype: bool
|
|
%End
|
|
|
|
int nodesSize();
|
|
%Docstring
|
|
Returns the number of nodes in the shape.
|
|
:rtype: int
|
|
%End
|
|
|
|
bool setSelectedNode( const int index );
|
|
%Docstring
|
|
Select a node.
|
|
\param index the node to select
|
|
:rtype: bool
|
|
%End
|
|
|
|
int selectedNode();
|
|
%Docstring
|
|
Returns the currently selected node.
|
|
:return: the index of the selected node, -1 otherwise
|
|
:rtype: int
|
|
%End
|
|
|
|
void deselectNode();
|
|
%Docstring
|
|
Deselect a node.
|
|
%End
|
|
|
|
virtual bool writeXml( QDomElement &elem, QDomDocument &doc ) const;
|
|
|
|
%Docstring
|
|
Stores state in Dom element
|
|
\param elem is Dom element corresponding to 'Composer' tag
|
|
\param doc write template file
|
|
:rtype: bool
|
|
%End
|
|
|
|
protected:
|
|
|
|
|
|
virtual bool _addNode( const int nodeIndex, QPointF newNode, const double radius ) = 0;
|
|
%Docstring
|
|
Method called in addNode.
|
|
:rtype: bool
|
|
%End
|
|
|
|
virtual bool _removeNode( const int nodeIndex ) = 0;
|
|
%Docstring
|
|
Method called in removeNode.
|
|
:rtype: bool
|
|
%End
|
|
|
|
virtual void _draw( QPainter *painter ) = 0;
|
|
%Docstring
|
|
Method called in paint.
|
|
%End
|
|
|
|
virtual void _readXmlStyle( const QDomElement &elmt ) = 0;
|
|
%Docstring
|
|
Method called in readXml.
|
|
%End
|
|
|
|
virtual void _writeXmlStyle( QDomDocument &doc, QDomElement &elmt ) const = 0;
|
|
%Docstring
|
|
Method called in writeXml.
|
|
%End
|
|
|
|
void rescaleToFitBoundingBox();
|
|
%Docstring
|
|
Rescale the current shape according to the boudning box. Useful when
|
|
the shape is resized thanks to the rubber band. *
|
|
%End
|
|
|
|
double computeDistance( QPointF pt1, QPointF pt2 ) const;
|
|
%Docstring
|
|
Compute an euclidian distance between 2 nodes.
|
|
:rtype: float
|
|
%End
|
|
|
|
void updateSceneRect();
|
|
%Docstring
|
|
Update the current scene rectangle for this item.
|
|
%End
|
|
|
|
};
|
|
|
|
/************************************************************************
|
|
* This file has been generated automatically from *
|
|
* *
|
|
* src/core/composer/qgscomposernodesitem.h *
|
|
* *
|
|
* Do not edit manually ! Edit header and run scripts/sipify.pl again *
|
|
************************************************************************/
|