Feature request #1117
Reload SVG Symbology Directory
Status: | Closed | ||
---|---|---|---|
Priority: | Low | ||
Assignee: | Tim Sutton | ||
Category: | Symbology | ||
Pull Request or Patch supplied: | Resolution: | fixed | |
Easy fix?: | No | Copied to github as #: | 11177 |
Description
Environment: qgis 0.9.1 Ubuntu 7.10
Problem:
Qgis is loading the catalogue of available SVGs for symbology only on startup, so if after starting Qgis a new SVG is created or a SVG is deleted, the catalogue is not updated accordingly and the new SVG is not available in the Symbologydialog. As my plugin is creating new SVGs on runtime, which I want to be available in the Dialog, I tried this:
Suggestion:
I changed qgsmarkercatalogue.cpp like this:
-------------------------------------------------------------@ -36,8 +36,13
@
[[QgsMarkerCatalogue]]::QgsMarkerCatalogue()
{
- // Init list
+ updateMarkerCatalogue();
+}
void QgsMarkerCatalogue::updateMarkerCatalogue()
{
+ // Init list
+ mList.clear();
// Hardcoded markers
mList.append ( "hard:circle" );
mList.append ( "hard:rectangle" );@ -69,6 +74,7
@
}
}
+
QStringList QgsMarkerCatalogue::list()
{
return mList;
-------------------------------------------------------------
and qgsmarkercatalogue.h accordingly:
-------------------------------------------------------------@ -53,6 +53,8
@/** Returns a pixmap given a filename of a svg marker
- NOTE: this method needs to be public static for QgsMarkerDialog::visualizeMarkers */
static void svgMarker (QPainter * thepPainter, QString name, int size );
void updateMarkerCatalogue();
private:
/**Constructor*/
-------------------------------------------------------------
Now every time my plugin is constructing a new SVG, I call the updateMarkerCatalogue() like this
-------------------------------------------------------------
QgsMarkerCatalogue *markerCatalogue=QgsMarkerCatalogue::instance();
markerCatalogue->updateMarkerCatalogue();
-------------------------------------------------------------
Tested in above named environment and it worked fine.
If this change is accepted there would probably even be the opportunity to do this MarkerCatalogue Update every time the Symbology Dialog is opened automatically???
History
#1 Updated by Paolo Cavallini about 16 years ago
What is your plugin? Is it available somewhere?
#2 Updated by Giovanni Manghi over 15 years ago
hi,
a) is the plugin available somewhere?
b) has this patch already been evaluated/committed by the devs?
#3 Updated by Jürgen Fischer over 15 years ago
- Resolution set to fixed
- Status changed from Open to Closed
Replying to [comment:2 lutra]:
hi,
a) is the plugin available somewhere?
b) has this patch already been evaluated/committed by the devs?
0c59c744 (SVN r11153) also covers this