00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef QWT_PLOT_PRINTFILTER_H
00011 #define QWT_PLOT_PRINTFILTER_H
00012
00013 #include <qcolor.h>
00014 #include <qfont.h>
00015 #include "qwt_global.h"
00016
00017 class QwtPlot;
00018 class QwtPlotItem;
00019
00030 class QWT_EXPORT QwtPlotPrintFilter
00031 {
00032 public:
00034 enum Options
00035 {
00036 PrintMargin = 1,
00037 PrintTitle = 2,
00038 PrintLegend = 4,
00039 PrintGrid = 8,
00040 PrintCanvasBackground = 16,
00041 PrintWidgetBackground = 32,
00042
00043 PrintAll = ~PrintWidgetBackground
00044 };
00045
00047 enum Item
00048 {
00049 Title,
00050 Legend,
00051 Curve,
00052 CurveSymbol,
00053 Marker,
00054 MarkerSymbol,
00055 MajorGrid,
00056 MinorGrid,
00057 CanvasBackground,
00058 AxisScale,
00059 AxisTitle,
00060 WidgetBackground
00061 };
00062
00063 explicit QwtPlotPrintFilter();
00064 virtual ~QwtPlotPrintFilter();
00065
00066 virtual QColor color(const QColor &, Item item) const;
00067 virtual QFont font(const QFont &, Item item) const;
00068
00069 void setOptions(int options);
00070 int options() const;
00071
00072 virtual void apply(QwtPlot *) const;
00073 virtual void reset(QwtPlot *) const;
00074
00075 virtual void apply(QwtPlotItem *) const;
00076 virtual void reset(QwtPlotItem *) const;
00077
00078 private:
00079 class PrivateData;
00080 PrivateData *d_data;
00081 };
00082
00083 #endif