Skip to content
Snippets Groups Projects
qwt_plot_svgitem.h 1.52 KiB
Newer Older
  • Learn to ignore specific revisions
  • pixhawk's avatar
    pixhawk committed
    /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
     * Qwt Widget Library
     * Copyright (C) 1997   Josef Wilgen
     * Copyright (C) 2002   Uwe Rathmann
     *
     * This library is free software; you can redistribute it and/or
     * modify it under the terms of the Qwt License, Version 1.0
     *****************************************************************************/
    
    #ifndef QWT_PLOT_SVGITEM_H
    #define QWT_PLOT_SVGITEM_H
    
    
    Bryant's avatar
    Bryant committed
    #include "qwt_global.h"
    
    #include "qwt_plot_item.h"
    
    Bryant's avatar
    Bryant committed
    #include <qstring.h>
    
    pixhawk's avatar
    pixhawk committed
    
    class QSvgRenderer;
    class QByteArray;
    
    /*!
    
      \brief A plot item, which displays
    
    pixhawk's avatar
    pixhawk committed
             data in Scalable Vector Graphics (SVG) format.
    
      SVG images are often used to display maps
    */
    
    class QWT_EXPORT QwtPlotSvgItem: public QwtPlotItem
    {
    public:
    
    Bryant's avatar
    Bryant committed
        explicit QwtPlotSvgItem( const QString& title = QString::null );
        explicit QwtPlotSvgItem( const QwtText& title );
    
    pixhawk's avatar
    pixhawk committed
        virtual ~QwtPlotSvgItem();
    
    
    Bryant's avatar
    Bryant committed
        bool loadFile( const QRectF&, const QString &fileName );
        bool loadData( const QRectF&, const QByteArray & );
    
    pixhawk's avatar
    pixhawk committed
    
    
    Bryant's avatar
    Bryant committed
        virtual QRectF boundingRect() const;
    
    pixhawk's avatar
    pixhawk committed
    
    
    Bryant's avatar
    Bryant committed
        virtual void draw( QPainter *p,
            const QwtScaleMap &xMap, const QwtScaleMap &yMap,
            const QRectF &rect ) const;
    
    pixhawk's avatar
    pixhawk committed
    
        virtual int rtti() const;
    
    protected:
        const QSvgRenderer &renderer() const;
        QSvgRenderer &renderer();
    
    
    Bryant's avatar
    Bryant committed
        void render( QPainter *painter,
            const QRectF &viewBox, const QRectF &rect ) const;
    
        QRectF viewBox( const QRectF &area ) const;
    
    pixhawk's avatar
    pixhawk committed
    
    private:
        void init();
    
        class PrivateData;
        PrivateData *d_data;
    };
    
    #endif