Eneboo - Documentación para desarrolladores
|
00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- ***************************** 00002 * Qwt Widget Library 00003 * Copyright (C) 1997 Josef Wilgen 00004 * Copyright (C) 2002 Uwe Rathmann 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the Qwt License, Version 1.0 00008 *****************************************************************************/ 00009 00010 #ifndef QWT_PLOT_SVGITEM_H 00011 #define QWT_PLOT_SVGITEM_H 00012 00013 #include <qglobal.h> 00014 00015 #include <qstring.h> 00016 #include "qwt_double_rect.h" 00017 #include "qwt_plot_item.h" 00018 00019 #if QT_VERSION >= 0x040100 00020 class QSvgRenderer; 00021 class QByteArray; 00022 #endif 00023 00031 class QWT_EXPORT QwtPlotSvgItem: public QwtPlotItem 00032 { 00033 public: 00034 explicit QwtPlotSvgItem(const QString& title = QString::null ); 00035 explicit QwtPlotSvgItem(const QwtText& title ); 00036 virtual ~QwtPlotSvgItem(); 00037 00038 bool loadFile(const QwtDoubleRect&, const QString &fileName); 00039 bool loadData(const QwtDoubleRect&, const QByteArray &); 00040 00041 virtual QwtDoubleRect boundingRect() const; 00042 00043 virtual void draw(QPainter *p, 00044 const QwtScaleMap &xMap, const QwtScaleMap &yMap, 00045 const QRect &rect) const; 00046 00047 virtual int rtti() const; 00048 00049 protected: 00050 #if QT_VERSION >= 0x040100 00051 const QSvgRenderer &renderer() const; 00052 QSvgRenderer &renderer(); 00053 #endif 00054 00055 void render(QPainter *painter, 00056 const QwtDoubleRect &viewBox, const QRect &rect) const; 00057 QwtDoubleRect viewBox(const QwtDoubleRect &area) const; 00058 00059 private: 00060 void init(); 00061 00062 class PrivateData; 00063 PrivateData *d_data; 00064 }; 00065 00066 #endif