summaryrefslogtreecommitdiffstats
path: root/tools/tdefile-plugins/ooo/tdefile_ooo.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/tdefile-plugins/ooo/tdefile_ooo.h')
-rw-r--r--tools/tdefile-plugins/ooo/tdefile_ooo.h78
1 files changed, 78 insertions, 0 deletions
diff --git a/tools/tdefile-plugins/ooo/tdefile_ooo.h b/tools/tdefile-plugins/ooo/tdefile_ooo.h
new file mode 100644
index 00000000..9cb9f12a
--- /dev/null
+++ b/tools/tdefile-plugins/ooo/tdefile_ooo.h
@@ -0,0 +1,78 @@
+/* This file is part of the KDE project
+ * Copyright (C) 2003 Pierre Souchay <pierre@souchay.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 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.
+ *
+ */
+
+#ifndef __KFILE_OOO_H__
+#define __KFILE_OOO_H__
+
+#include <tdefilemetainfo.h>
+#include <tqiodevice.h>
+#include <tqdom.h>
+#include <karchive.h>
+class TQStringList;
+class TQDomNode;
+class TQDomElement;
+
+class KOfficePlugin: public KFilePlugin
+{
+ Q_OBJECT
+
+
+public:
+ /**
+ * Constructor */
+ KOfficePlugin( TQObject *parent, const char *name, const TQStringList& args );
+ /**
+ * Read informations from files and store info in KFileMetaInfo.
+ * We currently only parse meta.xml in OOo files.
+ * @param info informations to modify about current file
+ * @param what What kind of parsing is needed ?
+ */
+ virtual bool readInfo( KFileMetaInfo& info, uint what);
+ /**
+ * Write modified informations in meta.xml
+ * @param info Informations modified
+ */
+ virtual bool writeInfo( const KFileMetaInfo& info) const;
+ /**
+ * We need a validator, for the langage
+ */
+ virtual TQValidator* createValidator( const TQString& mimetype,
+ const TQString &group,
+ const TQString &key,
+ TQObject* parent,
+ const char* name) const;
+private:
+ bool writeTextNode(TQDomDocument & doc,
+ TQDomNode & parentNode,
+ const TQString &nodeName,
+ const TQString &value) const;
+ KFileMimeTypeInfo::GroupInfo* userdefined;
+ void addAttributeInfo(const TQDomElement & elem, KFileMetaInfoGroup & group,
+ const TQString &attributeName);
+ TQIODevice* getData(KArchive &m_zip, int fileMode) const;
+ bool writeMetaData(const TQString & path, const TQDomDocument &doc) const;
+ TQDomDocument getMetaDocument(const TQString &path) const;
+ TQDomNode getBaseNode(const TQDomDocument &doc) const;
+ void makeMimeTypeInfo(const TQString& mimeType);
+ TQString stringFromNode(const TQDomNode &node, const TQString &name);
+ void getEditingTime(KFileMetaInfoGroup group1, const char *, TQString & txt);
+ void getDateTime(KFileMetaInfoGroup group1, const char *, TQString & txt);
+};
+
+#endif