summaryrefslogtreecommitdiffstats
path: root/tools/kfile-plugins/abiword/kfile_abiword.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/kfile-plugins/abiword/kfile_abiword.cpp')
-rw-r--r--tools/kfile-plugins/abiword/kfile_abiword.cpp145
1 files changed, 0 insertions, 145 deletions
diff --git a/tools/kfile-plugins/abiword/kfile_abiword.cpp b/tools/kfile-plugins/abiword/kfile_abiword.cpp
deleted file mode 100644
index 2f9bb418..00000000
--- a/tools/kfile-plugins/abiword/kfile_abiword.cpp
+++ /dev/null
@@ -1,145 +0,0 @@
-/* This file is part of the KDE project
- * Copyright (C) 2005 Laurent Montel <[email protected]>
- *
- * 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 version 2.
- *
- * 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; see the file COPYING. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- * Boston, MA 02110-1301, USA.
- *
- */
-
-#include <config.h>
-#include "kfile_abiword.h"
-
-#include <klocale.h>
-#include <kgenericfactory.h>
-#include <kfilterdev.h>
-
-#include <tqdom.h>
-#include <tqfile.h>
-#include <tqdatetime.h>
-#include <kdebug.h>
-
-typedef KGenericFactory<AbiwordPlugin> AbiwordFactory;
-
-K_EXPORT_COMPONENT_FACTORY(kfile_abiword, AbiwordFactory( "kfile_abiword" ))
-
-AbiwordPlugin::AbiwordPlugin(TQObject *parent, const char *name,
- const TQStringList &args)
-
- : KFilePlugin(parent, name, args)
-{
- init();
-}
-
-void AbiwordPlugin::init()
-{
- KFileMimeTypeInfo* info = addMimeTypeInfo( "application/x-abiword" );
-
- KFileMimeTypeInfo::GroupInfo* group = 0L;
-
- group = addGroupInfo(info, "DocumentInfo", i18n("Document Information"));
-
- KFileMimeTypeInfo::ItemInfo* item;
-
- item = addItemInfo(group, "Author", i18n("Author"), TQVariant::String);
- setHint(item, KFileMimeTypeInfo::Author);
- item = addItemInfo(group, "Title", i18n("Title"), TQVariant::String);
- setHint(item, KFileMimeTypeInfo::Name);
- item = addItemInfo(group, "Abstract", i18n("Abstract"), TQVariant::String);
- setHint(item, KFileMimeTypeInfo::Description);
-}
-
-bool AbiwordPlugin::readInfo( KFileMetaInfo& info, uint what)
-{
- if ( info.path().isEmpty() ) // remote file
- return false;
-
- //Find the last extension
- TQString strExt;
- const int result=info.path().findRev('.');
- if (result>=0)
- {
- strExt=info.path().mid(result);
- }
- TQString strMime; // Mime type of the compressor (default: unknown)
- if ((strExt==".gz")||(strExt==".GZ") //in case of .abw.gz (logical extension)
- ||(strExt==".zabw")||(strExt==".ZABW")) //in case of .zabw (extension used prioritary with AbiWord)
- {
- // Compressed with gzip
- strMime="application/x-gzip";
- kdDebug() << "Compression: gzip" << endl;
- }
- else if ((strExt==".bz2")||(strExt==".BZ2") //in case of .abw.bz2 (logical extension)
- ||(strExt==".bzabw")||(strExt==".BZABW")) //in case of .bzabw (extension used prioritary with AbiWord)
- {
- // Compressed with bzip2
- strMime="application/x-bzip2";
- kdDebug() << "Compression: bzip2" << endl;
- }
-
- KFileMetaInfoGroup group = appendGroup(info, "DocumentInfo");
- TQIODevice* in = KFilterDev::deviceForFile(info.path(),strMime);
- if ( !in )
- {
- kdError() << "Cannot create device for uncompressing! Aborting!" << endl;
- return false;
- }
-
- if (!in->open(IO_ReadOnly))
- {
- kdError() << "Cannot open file for uncompressing! Aborting!" << endl;
- delete in;
- return false;
- }
- TQDomDocument doc;
- doc.setContent( in );
- in->close();
- TQDomElement docElem = doc.documentElement();
- TQDomNode summary = docElem.namedItem("metadata");
- TQDomNode m_item = summary.namedItem("m");
-
- TQString author;
- TQString title;
- TQString abstract;
-
- while( !m_item.isNull() )
- {
- kdDebug()<<" m_item.toElement().text: "<<m_item.toElement().text()<<endl;
- TQString key = m_item.toElement().attribute( "key" );
- if ( key.isEmpty() )
- continue;
- else if ( key=="dc.creator" )
- author=m_item.toElement().text();
- else if ( key=="dc.description" )
- abstract=m_item.toElement().text();
- else if ( key=="dc.title" )
- title=m_item.toElement().text();
- else
- kdDebug()<<" Other key :"<<key<<endl;
- m_item = m_item.nextSibling();
- }
- appendItem(group, "Author", stringItem( author ));
- appendItem(group, "Title", stringItem( title ));
- appendItem(group, "Abstract", stringItem( abstract ));
-
- delete in;
- return true;
-}
-
-TQString AbiwordPlugin::stringItem( const TQString &name )
-{
- return name.isEmpty() ? i18n("*Unknown*") : name;
-}
-
-
-#include "kfile_abiword.moc"