Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef RQT_MULTIPLOT_CURVE_STYLE_CONFIG_H
00020 #define RQT_MULTIPLOT_CURVE_STYLE_CONFIG_H
00021
00022 #include <rqt_multiplot/Config.h>
00023
00024 namespace rqt_multiplot {
00025 class CurveStyleConfig :
00026 public Config {
00027 Q_OBJECT
00028 public:
00029 enum Type {
00030 Lines,
00031 Sticks,
00032 Steps,
00033 Points
00034 };
00035
00036 CurveStyleConfig(QObject* parent = 0, Type type = Lines, bool
00037 linesInterpolate = false, Qt::Orientation sticksOrientation =
00038 Qt::Vertical, double sticksBaseline = 0.0, bool stepsInvert =
00039 false, size_t penWidth = 1, Qt::PenStyle penStyle = Qt::SolidLine,
00040 bool renderAntialias = false);
00041 ~CurveStyleConfig();
00042
00043 void setType(Type type);
00044 Type getType() const;
00045
00046 void setLinesInterpolate(bool interpolate);
00047 bool areLinesInterpolated() const;
00048 void setSticksOrientation(Qt::Orientation orientation);
00049 Qt::Orientation getSticksOrientation() const;
00050 void setSticksBaseline(double baseline);
00051 double getSticksBaseline() const;
00052 void setStepsInvert(bool invert);
00053 bool areStepsInverted() const;
00054
00055 void setPenWidth(size_t width);
00056 size_t getPenWidth() const;
00057 void setPenStyle(Qt::PenStyle style);
00058 Qt::PenStyle getPenStyle() const;
00059 void setRenderAntialias(bool antialias);
00060 bool isRenderAntialiased() const;
00061
00062 void save(QSettings& settings) const;
00063 void load(QSettings& settings);
00064 void reset();
00065
00066 void write(QDataStream& stream) const;
00067 void read(QDataStream& stream);
00068
00069 CurveStyleConfig& operator=(const CurveStyleConfig& src);
00070
00071 signals:
00072 void typeChanged(int type);
00073 void linesInterpolateChanged(bool interpolate);
00074 void sticksOrientationChanged(int orientation);
00075 void sticksBaselineChanged(double baseline);
00076 void stepsInvertChanged(bool invert);
00077 void penWidthChanged(size_t width);
00078 void penStyleChanged(int style);
00079 void renderAntialiasChanged(bool antialias);
00080
00081 private:
00082 Type type_;
00083
00084 bool linesInterpolate_;
00085 Qt::Orientation sticksOrientation_;
00086 double sticksBaseline_;
00087 bool stepsInvert_;
00088
00089 size_t penWidth_;
00090 Qt::PenStyle penStyle_;
00091 bool renderAntialias_;
00092 };
00093 };
00094
00095 #endif