File indexing completed on 2024-05-12 04:43:20
0001 /* This file is part of the KDE project 0002 Copyright (C) 2010 by Adam Pigg (adam@piggz.co.uk) 0003 0004 This library is free software; you can redistribute it and/or 0005 modify it under the terms of the GNU Library General Public 0006 License as published by the Free Software Foundation; either 0007 version 2.1 of the License, or (at your option) any later version. 0008 0009 This library is distributed in the hope that it will be useful, 0010 but WITHOUT ANY WARRANTY; without even the implied warranty of 0011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 0012 Library General Public License for more details. 0013 0014 You should have received a copy of the GNU Library General Public License 0015 along with this library; see the file COPYING.LIB. If not, write to 0016 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 0017 Boston, MA 02110-1301, USA. 0018 */ 0019 0020 #include "KReportChartPlugin.h" 0021 #include "KReportItemChart.h" 0022 #include "KReportDesignerItemChart.h" 0023 #include "KReportPluginInfo.h" 0024 #ifdef KREPORT_SCRIPTING 0025 #include "krscriptchart.h" 0026 #endif 0027 0028 #include <KoIcon.h> 0029 0030 K_EXPORT_KOREPORT_ITEMPLUGIN(KoReportChartPlugin, chartplugin) 0031 0032 KReportChartPlugin::KReportChartPlugin(QObject *parent, const QVariantList &args) : KReportPluginInterface(parent) 0033 { 0034 Q_UNUSED(args); 0035 0036 KoReportPluginInfo *info = new KoReportPluginInfo(); 0037 info->setClassName("chart"); 0038 info->setIcon(koIcon("office-chart-area")); 0039 info->setName(tr("Chart")); 0040 setInfo(info); 0041 } 0042 0043 KReportChartPlugin::~KReportChartPlugin() 0044 { 0045 0046 } 0047 0048 QObject* KReportChartPlugin::createRendererInstance(const QDomNode& element) 0049 { 0050 return new KReportItemChart(element); 0051 } 0052 0053 QObject* KReportChartPlugin::createDesignerInstance(const QDomNode& element, KoReportDesigner* designer, QGraphicsScene* scene) 0054 { 0055 return new KReportDesignerItemChart(element, designer, scene); 0056 } 0057 0058 QObject* KReportChartPlugin::createDesignerInstance(KoReportDesigner* designer, QGraphicsScene* scene, const QPointF& pos) 0059 { 0060 return new KReportDesignerItemChart(designer, scene, pos); 0061 } 0062 0063 #ifdef KREPORT_SCRIPTING 0064 QObject* KoReportChartPlugin::createScriptInstance(KReportItemBase* item) 0065 { 0066 KoReportItemChart *chart = dynamic_cast<KoReportItemChart*>(item); 0067 if (chart) { 0068 return new Scripting::Chart(chart); 0069 } 0070 return 0; 0071 } 0072 #endif