diff options
Diffstat (limited to 'parts/documentation/plugins/djvu')
-rw-r--r-- | parts/documentation/plugins/djvu/Makefile.am | 8 | ||||
-rw-r--r-- | parts/documentation/plugins/djvu/docdjvuplugin.cpp | 103 | ||||
-rw-r--r-- | parts/documentation/plugins/djvu/docdjvuplugin.desktop | 44 | ||||
-rw-r--r-- | parts/documentation/plugins/djvu/docdjvuplugin.h | 50 |
4 files changed, 205 insertions, 0 deletions
diff --git a/parts/documentation/plugins/djvu/Makefile.am b/parts/documentation/plugins/djvu/Makefile.am new file mode 100644 index 00000000..716be5df --- /dev/null +++ b/parts/documentation/plugins/djvu/Makefile.am @@ -0,0 +1,8 @@ +INCLUDES = -I$(top_srcdir)/lib/interfaces $(all_includes) +METASOURCES = AUTO +kde_module_LTLIBRARIES = libdocdjvuplugin.la +libdocdjvuplugin_la_LDFLAGS = $(all_libraries) +libdocdjvuplugin_la_LIBADD = $(top_builddir)/lib/libkdevelop.la +noinst_HEADERS = docdjvuplugin.h +libdocdjvuplugin_la_SOURCES = docdjvuplugin.cpp +kde_services_DATA = docdjvuplugin.desktop diff --git a/parts/documentation/plugins/djvu/docdjvuplugin.cpp b/parts/documentation/plugins/djvu/docdjvuplugin.cpp new file mode 100644 index 00000000..0c53943e --- /dev/null +++ b/parts/documentation/plugins/djvu/docdjvuplugin.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 "docdjvuplugin.h" + +#include <kurl.h> +#include <kaboutdata.h> +#include <kconfig.h> +#include <klocale.h> +#include <klistview.h> + +#include <kdevgenericfactory.h> + +static const KAboutData data("docdjvuplugin", I18N_NOOP("Djvu documentation plugin"), "1.0"); +typedef KDevGenericFactory<DocDjvuPlugin> DocDjvuPluginFactory; +K_EXPORT_COMPONENT_FACTORY( libdocdjvuplugin, DocDjvuPluginFactory(&data) ) + +DocDjvuPlugin::DocDjvuPlugin(QObject* parent, const char* name, const QStringList args) + :DocumentationPlugin(DocDjvuPluginFactory::instance()->config(), parent, name) +{ + setCapabilities(CustomDocumentationTitles | ProjectUserManual); + autoSetup(); +} + +DocDjvuPlugin::~DocDjvuPlugin() +{ +} + +bool DocDjvuPlugin::needRefreshIndex(DocumentationCatalogItem* item) +{ + return false; +} + +QString DocDjvuPlugin::pluginName() const +{ + return i18n("Djvu Documentation Collection"); +} + +DocumentationCatalogItem* DocDjvuPlugin::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> DocDjvuPlugin::catalogLocatorProps() +{ + return QPair<KFile::Mode, QString>(KFile::File, "all/allfiles"); +} + +QString DocDjvuPlugin::catalogTitle(const QString& /*url*/) +{ + return QString::null; +} + +QStringList DocDjvuPlugin::fullTextSearchLocations() +{ + return QStringList(); +} + + +void DocDjvuPlugin::autoSetupPlugin() +{ + return; +} + +void DocDjvuPlugin::createIndex(IndexBox* /*index*/, DocumentationCatalogItem* /*item*/) +{ + return; +} + +void DocDjvuPlugin::createTOC(DocumentationCatalogItem* /*item*/) +{ + return; +} + +void DocDjvuPlugin::setCatalogURL(DocumentationCatalogItem* /*item*/) +{ + return; +} + +ProjectDocumentationPlugin *DocDjvuPlugin::projectDocumentationPlugin(ProjectDocType type) +{ + if (type == UserManual) + return new ProjectDocumentationPlugin(this, type); + return DocumentationPlugin::projectDocumentationPlugin(type); +} diff --git a/parts/documentation/plugins/djvu/docdjvuplugin.desktop b/parts/documentation/plugins/djvu/docdjvuplugin.desktop new file mode 100644 index 00000000..c88aa6a9 --- /dev/null +++ b/parts/documentation/plugins/djvu/docdjvuplugin.desktop @@ -0,0 +1,44 @@ +[Desktop Entry] +Type=Service +Name=DocDjvuPlugin +Name[da]=DocDjvu-plugin +Name[ms]=PluginDocDjvu +Name[sk]=Doc Djvu modul +Name[sv]=DocDjvu-insticksmodul +Name[ta]=DocQt சொருகு +Name[zh_TW]=Djvu 文件外掛程式 +Exec=blubb +Comment=Documentation plugin for djvu format +Comment[ca]=Connector de documentació per al format djvu +Comment[da]=Dokumentations-plugin for djvu-dokumentation +Comment[de]=Komponente für das DjVu-Dokumentationsformat +Comment[el]=Πρόσθετο τεκμηρίωσης για τη μορφή djvu +Comment[es]=Complemento de documentación para el formato djvu +Comment[et]=Djvu vormingus dokumentatsiooni plugin +Comment[eu]=Djvu dokumentaziorako dokumentazio plugin-a +Comment[fa]=وصلۀ مستندسازی برای قالب djvu +Comment[fr]=Module externe de documentation pour le format djvu +Comment[gl]=Extensión de documentación para o formato djvu +Comment[hu]=Dokumentációmodul djvu formátumú dokumentációhoz +Comment[it]=Plugin documentazione per il formato djvu +Comment[ja]=djvu フォーマットのためのドキュメンテーションプラグイン +Comment[ms]=Plugin dokumentasi untuk format djvu +Comment[nds]=Dokmentatschoon-Moduul för dat djvu-Dokmentatschoonformaat +Comment[ne]=djvu ढाँचाका लागि मिसिलीकरण प्लगइन +Comment[nl]=Documentatie plugin voor het djvu-formaat +Comment[pl]=Wtyczka dokumentacji dla dokumentacji w formacie djvu +Comment[pt]='Plugin' para documentação no formato djvu +Comment[pt_BR]=Plug-in de documentação para o formato djvu +Comment[ru]=Модуль для просмотра документации в формате DJVU +Comment[sk]=Dokumentačný modul pre Djvu dokumentáciu +Comment[sr]=Документациони прикључак за djvu формат +Comment[sr@Latn]=Dokumentacioni priključak za djvu format +Comment[sv]=Dokumentationsinsticksmodul för djvu-format +Comment[ta]= CHM ஆவணத்திற்கான ஆவணச் சொருகு +Comment[tg]=Модул барои наоиш намудани ҳуҷҷатҳо дар формати DJVU +Comment[tr]=djvu biçimi için belgelendirme eklentisi +Comment[zh_CN]=djvu 格式文档插件 +Comment[zh_TW]=Djvu 格式文件外掛程式 +ServiceTypes=KDevelop/DocumentationPlugins +X-KDevelop-Version=1 +X-KDE-Library=libdocdjvuplugin diff --git a/parts/documentation/plugins/djvu/docdjvuplugin.h b/parts/documentation/plugins/djvu/docdjvuplugin.h new file mode 100644 index 00000000..79bbf0ab --- /dev/null +++ b/parts/documentation/plugins/djvu/docdjvuplugin.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 DOCDJVUPLUGIN_H +#define DOCDVJUPLUGIN_H + +#include <kdevdocumentationplugin.h> + +class DocDjvuPlugin : public DocumentationPlugin { +public: + DocDjvuPlugin(QObject* parent, const char* name, const QStringList args = QStringList()); + ~DocDjvuPlugin(); + + 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 |