Qwt Polar User's Guide 1.0.0
|
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** 00002 * QwtPolar Widget Library 00003 * Copyright (C) 2008 Uwe Rathmann 00004 * 00005 * This library is free software; you can redistribute it and/or 00006 * modify it under the terms of the Qwt License, Version 1.0 00007 *****************************************************************************/ 00008 00009 #ifndef QWT_POLAR_RENDERER_H 00010 #define QWT_POLAR_RENDERER_H 1 00011 00012 #include "qwt_polar_global.h" 00013 #include <qobject.h> 00014 00015 class QwtPolarPlot; 00016 class QSizeF; 00017 class QRectF; 00018 class QPainter; 00019 class QPrinter; 00020 class QPaintDevice; 00021 #ifndef QWT_NO_POLAR_SVG 00022 #ifdef QT_SVG_LIB 00023 class QSvgGenerator; 00024 #endif 00025 #endif 00026 00031 class QWT_POLAR_EXPORT QwtPolarRenderer: public QObject 00032 { 00033 Q_OBJECT 00034 00035 public: 00036 explicit QwtPolarRenderer( QObject *parent = NULL ); 00037 virtual ~QwtPolarRenderer(); 00038 00039 void renderDocument( QwtPolarPlot *, const QString &format, 00040 const QSizeF &sizeMM, int resolution = 85 ); 00041 00042 void renderDocument( QwtPolarPlot *, 00043 const QString &title, const QString &format, 00044 const QSizeF &sizeMM, int resolution = 85 ); 00045 00046 #ifndef QWT_NO_POLAR_SVG 00047 #ifdef QT_SVG_LIB 00048 #if QT_VERSION >= 0x040500 00049 void renderTo( QwtPolarPlot *, QSvgGenerator & ) const; 00050 #endif 00051 #endif 00052 #endif 00053 void renderTo( QwtPolarPlot *, QPrinter & ) const; 00054 void renderTo( QwtPolarPlot *, QPaintDevice &p ) const; 00055 00056 virtual void render( QwtPolarPlot *, 00057 QPainter *, const QRectF &rect ) const; 00058 00059 protected: 00060 virtual void renderTitle( QPainter *, const QRectF & ) const; 00061 virtual void renderLegend( QPainter *, const QRectF & ) const; 00062 00063 virtual void renderLegendItem( QPainter *, 00064 const QWidget *, const QRectF & ) const; 00065 00066 private: 00067 class PrivateData; 00068 PrivateData *d_data; 00069 }; 00070 00071 #endif