mirror of
https://github.com/qgis/QGIS.git
synced 2025-10-05 00:09:32 -04:00
Implement {bar,line}chart writeXml and readXml function, add a plot type() virtual function
This commit is contained in:
parent
b0a73b65e3
commit
c89b4961c8
@ -9,7 +9,7 @@ try:
|
||||
except (NameError, AttributeError):
|
||||
pass
|
||||
try:
|
||||
QgsPlot.__virtual_methods__ = ['writeXml', 'readXml']
|
||||
QgsPlot.__virtual_methods__ = ['type', 'writeXml', 'readXml']
|
||||
QgsPlot.__group__ = ['plot']
|
||||
except (NameError, AttributeError):
|
||||
pass
|
||||
|
@ -29,9 +29,16 @@ A simple bar chart class.
|
||||
QgsBarChart();
|
||||
~QgsBarChart();
|
||||
|
||||
virtual QString type() const;
|
||||
|
||||
virtual void renderContent( QgsRenderContext &context, const QRectF &plotArea, const QgsPlotData &plotData = QgsPlotData() );
|
||||
|
||||
|
||||
virtual bool writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const;
|
||||
|
||||
virtual bool readXml( const QDomElement &element, const QgsReadWriteContext &context );
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
@ -55,9 +62,16 @@ A simple line chart class.
|
||||
QgsLineChart();
|
||||
~QgsLineChart();
|
||||
|
||||
virtual QString type() const;
|
||||
|
||||
virtual void renderContent( QgsRenderContext &context, const QRectF &plotArea, const QgsPlotData &plotData = QgsPlotData() );
|
||||
|
||||
|
||||
virtual bool writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const;
|
||||
|
||||
virtual bool readXml( const QDomElement &element, const QgsReadWriteContext &context );
|
||||
|
||||
|
||||
};
|
||||
|
||||
/************************************************************************
|
||||
|
@ -31,6 +31,8 @@ Base class for plot/chart/graphs.
|
||||
|
||||
virtual ~QgsPlot();
|
||||
|
||||
virtual QString type() const;
|
||||
|
||||
virtual bool writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const;
|
||||
%Docstring
|
||||
Writes the plot's properties into an XML ``element``.
|
||||
|
@ -9,7 +9,7 @@ try:
|
||||
except (NameError, AttributeError):
|
||||
pass
|
||||
try:
|
||||
QgsPlot.__virtual_methods__ = ['writeXml', 'readXml']
|
||||
QgsPlot.__virtual_methods__ = ['type', 'writeXml', 'readXml']
|
||||
QgsPlot.__group__ = ['plot']
|
||||
except (NameError, AttributeError):
|
||||
pass
|
||||
|
@ -29,9 +29,16 @@ A simple bar chart class.
|
||||
QgsBarChart();
|
||||
~QgsBarChart();
|
||||
|
||||
virtual QString type() const;
|
||||
|
||||
virtual void renderContent( QgsRenderContext &context, const QRectF &plotArea, const QgsPlotData &plotData = QgsPlotData() );
|
||||
|
||||
|
||||
virtual bool writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const;
|
||||
|
||||
virtual bool readXml( const QDomElement &element, const QgsReadWriteContext &context );
|
||||
|
||||
|
||||
};
|
||||
|
||||
|
||||
@ -55,9 +62,16 @@ A simple line chart class.
|
||||
QgsLineChart();
|
||||
~QgsLineChart();
|
||||
|
||||
virtual QString type() const;
|
||||
|
||||
virtual void renderContent( QgsRenderContext &context, const QRectF &plotArea, const QgsPlotData &plotData = QgsPlotData() );
|
||||
|
||||
|
||||
virtual bool writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const;
|
||||
|
||||
virtual bool readXml( const QDomElement &element, const QgsReadWriteContext &context );
|
||||
|
||||
|
||||
};
|
||||
|
||||
/************************************************************************
|
||||
|
@ -31,6 +31,8 @@ Base class for plot/chart/graphs.
|
||||
|
||||
virtual ~QgsPlot();
|
||||
|
||||
virtual QString type() const;
|
||||
|
||||
virtual bool writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const;
|
||||
%Docstring
|
||||
Writes the plot's properties into an XML ``element``.
|
||||
|
@ -92,6 +92,18 @@ void QgsBarChart::renderContent( QgsRenderContext &context, const QRectF &plotAr
|
||||
context.painter()->restore();
|
||||
}
|
||||
|
||||
bool QgsBarChart::writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const
|
||||
{
|
||||
Qgs2DXyPlot::writeXml( element, document, context );
|
||||
return true;
|
||||
}
|
||||
|
||||
bool QgsBarChart::readXml( const QDomElement &element, const QgsReadWriteContext &context )
|
||||
{
|
||||
Qgs2DXyPlot::readXml( element, context );
|
||||
return true;
|
||||
}
|
||||
|
||||
void QgsLineChart::renderContent( QgsRenderContext &context, const QRectF &plotArea, const QgsPlotData &plotData )
|
||||
{
|
||||
const QList<QgsAbstractPlotSeries *> seriesList = plotData.series();
|
||||
@ -161,3 +173,15 @@ void QgsLineChart::renderContent( QgsRenderContext &context, const QRectF &plotA
|
||||
|
||||
context.painter()->restore();
|
||||
}
|
||||
|
||||
bool QgsLineChart::writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const
|
||||
{
|
||||
Qgs2DXyPlot::writeXml( element, document, context );
|
||||
return true;
|
||||
}
|
||||
|
||||
bool QgsLineChart::readXml( const QDomElement &element, const QgsReadWriteContext &context )
|
||||
{
|
||||
Qgs2DXyPlot::readXml( element, context );
|
||||
return true;
|
||||
}
|
||||
|
@ -37,10 +37,14 @@ class CORE_EXPORT QgsBarChart : public Qgs2DXyPlot
|
||||
QgsBarChart() = default;
|
||||
~QgsBarChart() = default;
|
||||
|
||||
QString type() const override { return QStringLiteral( "bar" ); }
|
||||
|
||||
void renderContent( QgsRenderContext &context, const QRectF &plotArea, const QgsPlotData &plotData = QgsPlotData() ) override;
|
||||
|
||||
private:
|
||||
bool writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const override;
|
||||
bool readXml( const QDomElement &element, const QgsReadWriteContext &context ) override;
|
||||
|
||||
private:
|
||||
|
||||
};
|
||||
|
||||
@ -60,8 +64,13 @@ class CORE_EXPORT QgsLineChart : public Qgs2DXyPlot
|
||||
QgsLineChart() = default;
|
||||
~QgsLineChart() = default;
|
||||
|
||||
QString type() const override { return QStringLiteral( "line" ); }
|
||||
|
||||
void renderContent( QgsRenderContext &context, const QRectF &plotArea, const QgsPlotData &plotData = QgsPlotData() ) override;
|
||||
|
||||
bool writeXml( QDomElement &element, QDomDocument &document, const QgsReadWriteContext &context ) const override;
|
||||
bool readXml( const QDomElement &element, const QgsReadWriteContext &context ) override;
|
||||
|
||||
private:
|
||||
|
||||
|
||||
|
@ -29,8 +29,9 @@
|
||||
|
||||
QgsPlot::~QgsPlot() = default;
|
||||
|
||||
bool QgsPlot::writeXml( QDomElement &, QDomDocument &, const QgsReadWriteContext & ) const
|
||||
bool QgsPlot::writeXml( QDomElement &element, QDomDocument &, const QgsReadWriteContext & ) const
|
||||
{
|
||||
element.setAttribute( QStringLiteral( "plotType" ), type() );
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -48,6 +48,8 @@ class CORE_EXPORT QgsPlot
|
||||
|
||||
virtual ~QgsPlot();
|
||||
|
||||
virtual QString type() const { return QString(); }
|
||||
|
||||
/**
|
||||
* Writes the plot's properties into an XML \a element.
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user