File indexing completed on 2024-05-12 16:34:24

0001 /* This file is part of the KDE project
0002  * Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
0003  *
0004  * Contact: Vidhyapria  Arunkumar <vidhyapria.arunkumar@nokia.com>
0005  * Contact: Amit Aggarwal <amit.5.aggarwal@nokia.com>
0006  * Contact: Manikandaprasad N C <manikandaprasad.chandrasekar@nokia.com>
0007  *
0008  * This library is free software; you can redistribute it and/or
0009  * modify it under the terms of the GNU Library General Public
0010  * License as published by the Free Software Foundation; either
0011  * version 2 of the License, or (at your option) any later version.
0012  *
0013  * This library is distributed in the hope that it will be useful,
0014  * but WITHOUT ANY WARRANTY; without even the implied warranty of
0015  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0016  * Library General Public License for more details.
0017  *
0018  * You should have received a copy of the GNU Library General Public License
0019  * along with this library; see the file COPYING.LIB.  If not, write to
0020  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
0021  * Boston, MA 02110-1301, USA.
0022  */
0023 
0024 #ifndef PLUGINSHAPE_H
0025 #define PLUGINSHAPE_H
0026 
0027 #include <QMap>
0028 #include <KoShape.h>
0029 #include <KoFrameShape.h>
0030 
0031 #define PLUGINSHAPEID "PluginShape"
0032 
0033 
0034 class PluginShape : public KoShape, public KoFrameShape
0035 {
0036 public:
0037     PluginShape();
0038     ~PluginShape() override;
0039 
0040     // reimplemented
0041     void paint(QPainter &painter, const KoViewConverter &converter, KoShapePaintingContext &paintcontext) override;
0042     // reimplemented
0043     void saveOdf(KoShapeSavingContext &context) const override;
0044     // reimplemented
0045     bool loadOdf(const KoXmlElement &element, KoShapeLoadingContext &context) override;
0046 
0047 protected:
0048     bool loadOdfFrameElement(const KoXmlElement &element, KoShapeLoadingContext &context) override;
0049 
0050 private:
0051     //Note:- We assume that all the name of draw:param are unique.
0052     QMap<QString,QString> m_drawParams;
0053     QString m_mimetype;
0054     QString m_xlinkactuate;
0055     QString m_xlinkhref;
0056     QString m_xlinkshow;
0057     QString m_xlinktype;
0058 };
0059 
0060 #endif