Skip to content

Commit

Permalink
add sip-file for vector overlay
Browse files Browse the repository at this point in the history
git-svn-id: http://svn.osgeo.org/qgis/trunk@10505 c8812cc2-4d05-0410-92ff-de0c093fc19c
  • Loading branch information
mhugent committed Apr 8, 2009
1 parent cd8ee51 commit ae26704
Showing 1 changed file with 56 additions and 0 deletions.
56 changes: 56 additions & 0 deletions python/core/qgsvectoroverlay.sip
@@ -0,0 +1,56 @@
class CORE_EXPORT QgsVectorOverlay
{
%TypeHeaderCode
#include "qgsvectoroverlay.h"
%End
public:
QgsVectorOverlay( QgsVectorLayer* vl );
virtual ~QgsVectorOverlay();

/**Create the overlay objects contained in a view extent. Subclasses need to implement this method and assign width/height information to the overlay ovbjects*/

virtual void createOverlayObjects( const QgsRenderContext& renderContext ) = 0;

/**Remove the overlay objects and release their memory*/
void removeOverlayObjects();

/**Draw the overlay objects*/
virtual void drawOverlayObjects( QgsRenderContext& context ) const = 0;

/**Gives direct access to oberlay objects*/
QMap<int, QgsOverlayObject*>* overlayObjects() {return &mOverlayObjects;}

/**Describes the overlay type (e.g. "diagram" or "label")*/
virtual QString typeName() const = 0;

/**Set attribute indices necessary to fetch*/
void setAttributes( const QgsAttributeList& list ) {mAttributes = list;}

bool displayFlag() const {return mDisplayFlag;}

/**Display yes/no*/
void setDisplayFlag( bool flag ) {mDisplayFlag = flag;}

/**Restore from project file*/
virtual bool readXML( const QDomNode& overlayNode ) = 0;

/**Save to project file*/
virtual bool writeXML( QDomNode& layer_node, QDomDocument& doc ) const = 0;

protected:
/**Pointer to the vector layer for this overlay*/
QgsVectorLayer* mVectorLayer;

/**True if overlay should be displayed*/
bool mDisplayFlag;

/**A list with attribute indexes that are needed for overlay rendering*/
QgsAttributeList mAttributes;

/**Key: feature ids, value: the corresponding overlay objects. Normally, they are created for each redraw and deleted before the next redraw*/
QMap<int, QgsOverlayObject*> mOverlayObjects;

/**Position constraints that may be set to be persistent after redraws. Key is the feature id, value the map point
where the feature should be placed*/
QMap<int, QgsPoint> mPositionConstraints;
};

0 comments on commit ae26704

Please sign in to comment.