@@ -192,6 +192,73 @@ public:
192
192
193
193
/** A convenience function to capitalise the layer name */
194
194
static QString capitaliseLayerName(const QString name);
195
+
196
+ /** Retrieve the default style for this layer if one
197
+ * exists (either as a .qml file on disk or as a
198
+ * record in the users style table in their personal qgis.db)
199
+ * @param a reference to a flag that will be set to false if
200
+ * we did not manage to load the default style.
201
+ * @return a QString with any status messages
202
+ * @see also loadNamedStyle ();
203
+ */
204
+ virtual QString loadDefaultStyle( bool & theResultFlag );
205
+
206
+ /** Retrieve a named style for this layer if one
207
+ * exists (either as a .qml file on disk or as a
208
+ * record in the users style table in their personal qgis.db)
209
+ * @param QString theURI - the file name or other URI for the
210
+ * style file. First an attempt will be made to see if this
211
+ * is a file and load that, if that fails the qgis.db styles
212
+ * table will be consulted to see if there is a style who's
213
+ * key matches the URI.
214
+ * @param a reference to a flag that will be set to false if
215
+ * we did not manage to load the default style.
216
+ * @return a QString with any status messages
217
+ * @see also loadDefaultStyle ();
218
+ */
219
+ virtual QString loadNamedStyle( const QString theURI, bool & theResultFlag );
220
+
221
+ virtual bool loadNamedStyleFromDb( const QString db, const QString theURI, QString &qml );
222
+
223
+ /** Save the properties of this layer as the default style
224
+ * (either as a .qml file on disk or as a
225
+ * record in the users style table in their personal qgis.db)
226
+ * @param a reference to a flag that will be set to false if
227
+ * we did not manage to save the default style.
228
+ * @return a QString with any status messages
229
+ * @see also loadNamedStyle () and saveNamedStyle()
230
+ */
231
+ virtual QString saveDefaultStyle( bool & theResultFlag );
232
+
233
+ /** Save the properties of this layer as a named style
234
+ * (either as a .qml file on disk or as a
235
+ * record in the users style table in their personal qgis.db)
236
+ * @param QString theURI - the file name or other URI for the
237
+ * style file. First an attempt will be made to see if this
238
+ * is a file and save to that, if that fails the qgis.db styles
239
+ * table will be used to create a style entry who's
240
+ * key matches the URI.
241
+ * @param a reference to a flag that will be set to false if
242
+ * we did not manage to save the default style.
243
+ * @return a QString with any status messages
244
+ * @see also saveDefaultStyle ();
245
+ */
246
+ virtual QString saveNamedStyle( const QString theURI, bool & theResultFlag );
247
+
248
+ /** Read the symbology for the current layer from the Dom node supplied.
249
+ * @param QDomNode node that will contain the symbology definition for this layer.
250
+ * @param errorMessage reference to string that will be updated with any error messages
251
+ * @return true in case of success.
252
+ */
253
+ virtual bool readSymbology( const QDomNode& node, QString& errorMessage ) = 0;
254
+
255
+ /** Write the symbology for the layer into the docment provided.
256
+ * @param QDomNode the node that will have the style element added to it.
257
+ * @param QDomDocument the document that will have the QDomNode added.
258
+ * @param errorMessage reference to string that will be updated with any error messages
259
+ * @return true in case of success.
260
+ */
261
+ virtual bool writeSymbology( QDomNode&, QDomDocument& doc, QString& errorMessage ) const = 0;
195
262
196
263
public slots:
197
264
0 commit comments