1
/***************************************************************************
5
copyright : (C) 2005 by Radim Blazek
7
***************************************************************************/
8
/***************************************************************************
10
* This program is free software; you can redistribute it and/or modify *
11
* it under the terms of the GNU General Public License as published by *
12
* the Free Software Foundation; either version 2 of the License, or *
13
* (at your option) any later version. *
15
***************************************************************************/
16
#ifndef QGSMARKERCATALOGUE_H
17
#define QGSMARKERCATALOGUE_H
19
#include <QStringList>
29
/** Catalogue of point symbols */
30
class CORE_EXPORT QgsMarkerCatalogue : public QObject
35
~QgsMarkerCatalogue();
37
//! Access to canonical QgsMarkerCatalogue instance
38
static QgsMarkerCatalogue *instance();
40
/**List of available markers*/
43
/** Returns pixmap of the marker
44
* \param fullName full name, e.g. hard:circle, svg:/home/usr1/marker1.svg
46
QImage imageMarker( QString fullName, double size, QPen pen, QBrush brush, double opacity = 1.0 );
48
/** Returns qpicture of the marker
49
* \param fullName full name, e.g. hard:circle, svg:/home/usr1/marker1.svg
51
QPicture pictureMarker( QString fullName, double size, QPen pen, QBrush brush, double opacity = 1.0 );
53
/** Returns a pixmap given a file name of a svg marker
54
* NOTE: this method needs to be public static for QgsMarkerDialog::visualizeMarkers */
55
static bool svgMarker( QPainter * thepPainter, QString name, double size );
61
void markersRefreshed();
68
static QgsMarkerCatalogue *mMarkerCatalogue;
70
/** List of availabel markers*/
74
void hardMarker( QPainter * thepPainter, int imageSize, QString name, double size, QPen pen, QBrush brush );
76
bool fontMarker( QPainter * thepPainter, QString name, double size );
80
#endif // QGSMARKERCATALOGUE_H