OSCAR-code/Graphs/gSegmentChart.h

47 lines
1.3 KiB
C
Raw Normal View History

2011-07-28 17:15:15 +00:00
#ifndef GSEGMENTCHART_H
#define GSEGMENTCHART_H
#include "graphlayer.h"
2011-07-29 14:58:44 +00:00
enum GraphSegmentType { GST_Pie, GST_CandleStick, GST_Line };
2011-07-28 17:15:15 +00:00
class gSegmentChart : public gLayer
{
public:
2011-07-28 18:02:51 +00:00
gSegmentChart(GraphSegmentType gt=GST_Pie, QColor gradient_color=Qt::white,QColor outline_color=Qt::black);
2011-07-28 17:15:15 +00:00
virtual ~gSegmentChart();
virtual void Plot(gGraphWindow & w,float scrx,float scry);
virtual void SetDay(Day *d);
void AddSlice(ChannelID code,QColor col,QString name="");
2011-07-28 17:15:15 +00:00
void setGradientColor(QColor & color) { m_gradient_color=color; }
void setOutlineColor(QColor & color) { m_outline_color=color; }
const GraphSegmentType & graphType() { return m_graph_type; }
void setGraphType(GraphSegmentType type) { m_graph_type=type; }
protected:
QVector<ChannelID> m_codes;
QVector<QString> m_names;
QVector<int> m_values;
QVector<QColor> m_colors;
2011-07-28 17:15:15 +00:00
int m_total;
GraphSegmentType m_graph_type;
QColor m_gradient_color;
QColor m_outline_color;
};
class gTAPGraph:public gSegmentChart
{
public:
gTAPGraph(ChannelID code,GraphSegmentType gt=GST_CandleStick, QColor gradient_color=Qt::lightGray,QColor outline_color=Qt::black);
2011-07-28 17:15:15 +00:00
virtual ~gTAPGraph();
virtual void SetDay(Day *d);
protected:
ChannelID m_code;
2011-07-28 17:15:15 +00:00
};
#endif // GSEGMENTCHART_H