21#ifndef KO_DOCUMENT_INFO_H
22#define KO_DOCUMENT_INFO_H
27#include <koffice_export.h>
36class KoDocumentInfoPage;
39class KOFFICECORE_EXPORT KoDocumentInfo :
public TQObject
44 KoDocumentInfo( TQObject* parent = 0,
const char* name = 0 );
45 virtual ~KoDocumentInfo();
47 bool load(
const TQDomDocument& doc );
48 bool loadOasis(
const TQDomDocument& metaDoc );
51 bool saveOasis( KoStore* store );
57 TQString title()
const;
58 TQString creator()
const;
60 KoDocumentInfoPage* page(
const TQString& name )
const;
61 TQStringList pages()
const;
62 void documentInfochanged() { emit sigDocumentInfoModifed();}
64 void sigDocumentInfoModifed();
67class KOFFICECORE_EXPORT KoDocumentInfoPage :
public TQObject
70 KoDocumentInfoPage( TQObject *parent,
const char* name );
72 virtual bool load(
const TQDomElement& e ) = 0;
73 virtual TQDomElement
save( TQDomDocument& doc ) = 0;
74 virtual bool loadOasis(
const TQDomNode& metaDoc ) = 0;
75 virtual bool saveOasis( KoXmlWriter &xmlWriter ) = 0;
78class KOFFICECORE_EXPORT KoDocumentInfoAuthor :
public KoDocumentInfoPage
83 KoDocumentInfoAuthor( KoDocumentInfo* info );
84 ~KoDocumentInfoAuthor();
86 virtual bool load(
const TQDomElement& e );
87 virtual TQDomElement
save( TQDomDocument& doc );
88 virtual bool loadOasis(
const TQDomNode& metaDoc );
89 virtual bool saveOasis( KoXmlWriter &xmlWriter );
91 TQString fullName()
const;
92 TQString initial()
const;
93 TQString title()
const;
94 TQString company()
const;
95 TQString email()
const;
96 TQString telephoneHome()
const;
97 TQString telephoneWork()
const;
99 TQString country()
const;
100 TQString postalCode()
const;
101 TQString city()
const;
102 TQString street()
const;
103 TQString position()
const;
105 void setFullName(
const TQString& n );
106 void setTitle(
const TQString& n );
107 void setCompany(
const TQString& n );
108 void setEmail(
const TQString& n );
109 void setTelephoneHome(
const TQString& n );
110 void setTelephoneWork(
const TQString& n );
111 void setFax(
const TQString& n );
112 void setCountry(
const TQString& n );
113 void setPostalCode(
const TQString& n );
114 void setCity(
const TQString& n );
115 void setStreet(
const TQString& n );
116 void setInitial(
const TQString& n );
117 void setPosition(
const TQString& n );
118 void initParameters();
125 TQString m_telephoneHome;
126 TQString m_telephoneWork;
129 TQString m_postalCode;
134 TDEConfig *m_emailCfg;
137class KOFFICECORE_EXPORT KoDocumentInfoAbout :
public KoDocumentInfoPage
142 KoDocumentInfoAbout( KoDocumentInfo* info );
144 virtual bool load(
const TQDomElement& e );
145 virtual TQDomElement
save( TQDomDocument& doc );
146 virtual bool loadOasis(
const TQDomNode& metaDoc );
147 virtual bool saveOasis( KoXmlWriter &xmlWriter );
149 TQString title()
const;
150 TQString abstract()
const;
151 TQString subject()
const;
152 TQString keywords()
const;
153 TQString initialCreator()
const;
154 TQString editingCycles()
const;
155 TQString creationDate()
const;
156 TQString modificationDate()
const;
158 void setKeywords(
const TQString &n );
159 void setSubject(
const TQString& n );
161 void setTitle(
const TQString& n );
162 void setAbstract(
const TQString& n );
163 void saveParameters();
166 void resetMetaData();
169 KoDocumentInfo* m_docInfo;
174 TQString m_initialCreator;
175 TQDateTime m_creationDate;
176 TQDateTime m_modificationDate;
181class KOFFICECORE_EXPORT KoDocumentInfoUserMetadata :
public KoDocumentInfoPage
186 KoDocumentInfoUserMetadata( KoDocumentInfo* info );
188 virtual bool load(
const TQDomElement& e );
189 virtual TQDomElement
save( TQDomDocument& doc );
190 virtual bool loadOasis(
const TQDomNode& metaDoc );
191 virtual bool saveOasis( KoXmlWriter &xmlWriter );
193 TQMap<TQString, TQString>* metadataList() {
return &m_metaList; }
196 TQMap<TQString, TQString> m_metaList;
197 TQStringList m_reserved;
Saves and loads KOffice documents using various backends.
A class for writing out XML (to any TQIODevice), with a special attention on performance.
TDEAction * save(const TQObject *recvr, const char *slot, TDEActionCollection *parent, const char *name=0)