diff options
Diffstat (limited to 'parts/documentation/plugins/pdf')
-rw-r--r-- | parts/documentation/plugins/pdf/Makefile.am | 8 | ||||
-rw-r--r-- | parts/documentation/plugins/pdf/docpdfplugin.cpp | 103 | ||||
-rw-r--r-- | parts/documentation/plugins/pdf/docpdfplugin.desktop | 43 | ||||
-rw-r--r-- | parts/documentation/plugins/pdf/docpdfplugin.h | 50 |
4 files changed, 204 insertions, 0 deletions
diff --git a/parts/documentation/plugins/pdf/Makefile.am b/parts/documentation/plugins/pdf/Makefile.am new file mode 100644 index 00000000..8d9617d2 --- /dev/null +++ b/parts/documentation/plugins/pdf/Makefile.am @@ -0,0 +1,8 @@ +INCLUDES = -I$(top_srcdir)/lib/interfaces $(all_includes) +METASOURCES = AUTO +kde_module_LTLIBRARIES = libdocpdfplugin.la +libdocpdfplugin_la_LDFLAGS = $(all_libraries) +libdocpdfplugin_la_LIBADD = $(top_builddir)/lib/libkdevelop.la +noinst_HEADERS = docpdfplugin.h +libdocpdfplugin_la_SOURCES = docpdfplugin.cpp +kde_services_DATA = docpdfplugin.desktop diff --git a/parts/documentation/plugins/pdf/docpdfplugin.cpp b/parts/documentation/plugins/pdf/docpdfplugin.cpp new file mode 100644 index 00000000..02bac373 --- /dev/null +++ b/parts/documentation/plugins/pdf/docpdfplugin.cpp @@ -0,0 +1,103 @@ +/*************************************************************************** + * Copyright (C) 2004 by Mathieu Chouinard * + * mathieu.chouinard@kdemail.net * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + ***************************************************************************/ +#include "docpdfplugin.h" + +#include <kurl.h> +#include <kaboutdata.h> +#include <kconfig.h> +#include <klocale.h> +#include <klistview.h> + +#include <kdevgenericfactory.h> + +static const KAboutData data("docpdfplugin", I18N_NOOP("PDF documentation plugin"), "1.0"); +typedef KDevGenericFactory<DocPDFPlugin> DocPDFPluginFactory; +K_EXPORT_COMPONENT_FACTORY( libdocpdfplugin, DocPDFPluginFactory(&data) ) + +DocPDFPlugin::DocPDFPlugin(QObject* parent, const char* name, const QStringList args) + :DocumentationPlugin(DocPDFPluginFactory::instance()->config(), parent, name) +{ + setCapabilities(CustomDocumentationTitles | ProjectUserManual); + autoSetup(); +} + +DocPDFPlugin::~DocPDFPlugin() +{ +} + +bool DocPDFPlugin::needRefreshIndex(DocumentationCatalogItem* item) +{ + return false; +} + +QString DocPDFPlugin::pluginName() const +{ + return i18n("PDF Documentation Collection"); +} + +DocumentationCatalogItem* DocPDFPlugin::createCatalog(KListView* contents, const QString& title, const QString& url) +{ + DocumentationCatalogItem *item = new DocumentationCatalogItem(this, contents, title); + item->setURL(KURL(url)); + return item; +} + +QPair<KFile::Mode, QString> DocPDFPlugin::catalogLocatorProps() +{ + return QPair<KFile::Mode, QString>(KFile::File, "*.pdf"); +} + +QString DocPDFPlugin::catalogTitle(const QString& /*url*/) +{ + return QString::null; +} + +QStringList DocPDFPlugin::fullTextSearchLocations() +{ + return QStringList(); +} + + +void DocPDFPlugin::autoSetupPlugin() +{ + return; +} + +void DocPDFPlugin::createIndex(IndexBox* /*index*/, DocumentationCatalogItem* /*item*/) +{ + return; +} + +void DocPDFPlugin::createTOC(DocumentationCatalogItem* /*item*/) +{ + return; +} + +void DocPDFPlugin::setCatalogURL(DocumentationCatalogItem* /*item*/) +{ + return; +} + +ProjectDocumentationPlugin *DocPDFPlugin::projectDocumentationPlugin(ProjectDocType type) +{ + if (type == UserManual) + return new ProjectDocumentationPlugin(this, type); + return DocumentationPlugin::projectDocumentationPlugin(type); +} diff --git a/parts/documentation/plugins/pdf/docpdfplugin.desktop b/parts/documentation/plugins/pdf/docpdfplugin.desktop new file mode 100644 index 00000000..f42429ff --- /dev/null +++ b/parts/documentation/plugins/pdf/docpdfplugin.desktop @@ -0,0 +1,43 @@ +[Desktop Entry] +Type=Service +Name=DocPDFPlugin +Name[da]=DocPDF-plugin +Name[sk]=Doc PDF modul +Name[sv]=DocPDF-insticksmodul +Name[ta]=DocQt சொருகுபொருள் +Name[zh_TW]=PDF 文件外掛程式 +Exec=blubb +Comment=Documentation plugin for PDF format +Comment[ca]=Connector de documentació per al format PDF +Comment[da]=Dokumentations-plugin for PDF-format +Comment[de]=Komponente für das PDF-Dokumentationsformat +Comment[el]=Πρόσθετο τεκμηρίωσης για τη μορφή PDF +Comment[es]=Complemento de documentación para el formato PDF +Comment[et]=PDF-vormingus dokumentatsiooni plugin +Comment[eu]=PDF formaturako dokumentazio plugin-a +Comment[fa]=وصلۀ مستندسازی برای قالب PDF +Comment[fr]=Module externe de documentation pour le format PDF +Comment[gl]=Extensión de documentación para o formato PDF +Comment[hu]=Dokumentációmodul PDF formátumú dokumentációhoz +Comment[it]=Plugin di documentazione per formato PDF +Comment[ja]=PDF フォーマットのためのドキュメンテーションプラグイン +Comment[ms]=Plugin dokumentasi untuk format PDF +Comment[nds]=Komponente för dat PDF-Dokmentatschoonformaat +Comment[ne]=PDF ढाँचाका लागि मिसिलीकरण प्लगइन +Comment[nl]=Documentatie plugin voor PDF documentatie +Comment[pl]=Wtyczka dokumentacji dla dokumentacji w formacie PDF +Comment[pt]='Plugin' para documentação no formato PDF +Comment[pt_BR]=Plug-in de documentação para o formato PDF +Comment[ru]=Модуль для просмотра PDF +Comment[sk]=Dokumentačný modul pre PDF formát +Comment[sr]=Документациони прикључак за PDF формат +Comment[sr@Latn]=Dokumentacioni priključak za PDF format +Comment[sv]=Dokumentationsinsticksmodul för PDF-format +Comment[ta]= Qt DCF ஆவணத்திற்கான ஆவணச் சொருகு +Comment[tg]=Модул барои наоиши PDF +Comment[tr]=PDF biçimi için belgelendirme eklentisi +Comment[zh_CN]=PDF 格式的文档插件 +Comment[zh_TW]=PDF 格式文件外掛程式 +ServiceTypes=KDevelop/DocumentationPlugins +X-KDevelop-Version=1 +X-KDE-Library=libdocpdfplugin diff --git a/parts/documentation/plugins/pdf/docpdfplugin.h b/parts/documentation/plugins/pdf/docpdfplugin.h new file mode 100644 index 00000000..4148454a --- /dev/null +++ b/parts/documentation/plugins/pdf/docpdfplugin.h @@ -0,0 +1,50 @@ +/*************************************************************************** + * Copyright (C) 2004 by Mathieu Chouinard * + * mathieu.chouinard@kdemail.net * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + ***************************************************************************/ +#ifndef DOCPDFPLUGIN_H +#define DOCPDFPLUGIN_H + +#include <kdevdocumentationplugin.h> + +class DocPDFPlugin : public DocumentationPlugin { +public: + DocPDFPlugin(QObject* parent, const char* name, const QStringList args = QStringList()); + ~DocPDFPlugin(); + + virtual QString pluginName() const; + + virtual DocumentationCatalogItem* createCatalog(KListView* contents, const QString& title, const QString& url); + + virtual void createTOC(DocumentationCatalogItem* item); + virtual void setCatalogURL(DocumentationCatalogItem* item); + + virtual bool needRefreshIndex(DocumentationCatalogItem* item); + virtual void createIndex(IndexBox* index, DocumentationCatalogItem* item); + + virtual QStringList fullTextSearchLocations(); + + virtual QPair<KFile::Mode, QString> catalogLocatorProps(); + virtual QString catalogTitle(const QString& url); + + virtual void autoSetupPlugin(); + + virtual ProjectDocumentationPlugin *projectDocumentationPlugin(ProjectDocType type); +}; + +#endif |