libs/flake

KoCopyController.h

Go to the documentation of this file.
00001 /* This file is part of the KDE project
00002  * Copyright (C) 2006-2007 Thomas Zander <zander@kde.org>
00003  *
00004  * This library is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU Library General Public
00006  * License as published by the Free Software Foundation; either
00007  * version 2 of the License, or (at your option) any later version.
00008  *
00009  * This library is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012  * Library General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU Library General Public License
00015  * along with this library; see the file COPYING.LIB.  If not, write to
00016  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00017  * Boston, MA 02110-1301, USA.
00018  */
00019 #ifndef KOCOPYCONTROLLER_H
00020 #define KOCOPYCONTROLLER_H
00021 
00022 #include "flake_export.h"
00023 
00024 #include <QObject>
00025 
00026 class QAction;
00027 class KoCanvasBase;
00028 class KoCopyControllerPrivate;
00029 
00037 class FLAKE_EXPORT KoCopyController : public QObject {
00038     Q_OBJECT
00039 public:
00046     KoCopyController(KoCanvasBase *canvas, QAction *copyAction);
00047     virtual ~KoCopyController();
00048 
00049 signals:
00051     void copyRequested();
00052 
00053 public slots:
00060     void hasSelection(bool selection);
00061 
00062 private:
00063     Q_PRIVATE_SLOT(d, void copy())
00064     Q_PRIVATE_SLOT(d, void cut())
00065     Q_PRIVATE_SLOT(d, void selectionChanged(bool))
00066 
00067 protected:
00068     friend class KoCopyControllerPrivate;
00069     KoCopyControllerPrivate * const d;
00070 };
00071 
00072 #endif