|  | Home · All Classes · Main Classes · Grouped Classes · Modules · Functions |

# basictoolsplugin.h Example File
tools/plugandpaintplugins/basictools/basictoolsplugin.h

    /****************************************************************************
    **
    ** Copyright (C) 2005-2006 Trolltech ASA. All rights reserved.
    **
    ** This file is part of the example classes of the Qt Toolkit.
    **
    ** Licensees holding valid Qt Preview licenses may use this file in
    ** accordance with the Qt Preview License Agreement provided with the
    ** Software.
    **
    ** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for
    ** information about Qt Commercial License Agreements.
    **
    ** Contact info@trolltech.com if any conditions of this licensing are
    ** not clear to you.
    **
    ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
    ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    **
    ****************************************************************************/

    #ifndef BASICTOOLSPLUGIN_H
    #define BASICTOOLSPLUGIN_H

    #include <QRect>
    #include <QObject>
    #include <QStringList>
    #include <QPainterPath>
    #include <QImage>

    #include <plugandpaint/interfaces.h>

    class BasicToolsPlugin : public QObject,
                             public BrushInterface,
                             public ShapeInterface,
                             public FilterInterface
    {
        Q_OBJECT
        Q_INTERFACES(BrushInterface ShapeInterface FilterInterface)

    public:
        // BrushInterface
        QStringList brushes() const;
        QRect mousePress(const QString &brush, QPainter &painter,
                         const QPoint &pos);
        QRect mouseMove(const QString &brush, QPainter &painter,
                        const QPoint &oldPos, const QPoint &newPos);
        QRect mouseRelease(const QString &brush, QPainter &painter,
                           const QPoint &pos);

        // ShapeInterface
        QStringList shapes() const;
        QPainterPath generateShape(const QString &shape, QWidget *parent);

        // FilterInterface
        QStringList filters() const;
        QImage filterImage(const QString &filter, const QImage &image,
                           QWidget *parent);
    };

    #endif