kdgantt

KDGanttXMLTools.h
00001 /* -*- Mode: C++ -*-
00002    $Id$
00003    KDGantt - a multi-platform charting engine
00004 */
00005 
00006 /****************************************************************************
00007  ** Copyright (C)  2002-2004 Klar�lvdalens Datakonsult AB.  All rights reserved.
00008  **
00009  ** This file is part of the KDGantt library.
00010  **
00011  ** This file may be distributed and/or modified under the terms of the
00012  ** GNU General Public License version 2 as published by the Free Software
00013  ** Foundation and appearing in the file LICENSE.GPL included in the
00014  ** packaging of this file.
00015  **
00016  ** Licensees holding valid commercial KDGantt licenses may use this file in
00017  ** accordance with the KDGantt Commercial License Agreement provided with
00018  ** the Software.
00019  **
00020  ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
00021  ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
00022  **
00023  ** See http://www.klaralvdalens-datakonsult.se/Public/products/ for
00024  **   information about KDGantt Commercial License Agreements.
00025  **
00026  ** Contact info@klaralvdalens-datakonsult.se if any conditions of this
00027  ** licensing are not clear to you.
00028  **
00029  ** As a special exception, permission is given to link this program
00030  ** with any edition of TQt, and distribute the resulting executable,
00031  ** without including the source code for TQt in the source distribution.
00032  **
00033  **********************************************************************/
00034 
00035 #ifndef __KDGANTTXMLTOOLS_H__
00036 #define __KDGANTTXMLTOOLS_H__
00037 
00038 #include <tqpen.h>
00039 #include <tqdom.h>
00040 #include <tqstring.h>
00041 #include <tqcolor.h>
00042 #include <tqrect.h>
00043 #include <tqfont.h>
00044 #include <tqstringlist.h>
00045 #include <tqdatetime.h>
00046 
00047 namespace KDGanttXML {
00048     TQString penStyleToString( Qt::PenStyle style );
00049     Qt::PenStyle stringToPenStyle( const TQString& style );
00050     TQString brushStyleToString( Qt::BrushStyle style );
00051     Qt::BrushStyle stringToBrushStyle( const TQString& style );
00052 
00053     void createBoolNode( TQDomDocument& doc, TQDomNode& parent,
00054                          const TQString& elementName, bool value );
00055     void createSizeNode( TQDomDocument& doc, TQDomNode& parent,
00056                          const TQString& elementName, const TQSize& value );
00057     void createIntNode( TQDomDocument& doc, TQDomNode& parent,
00058                         const TQString& elementName, int value );
00059     void createDoubleNode( TQDomDocument& doc, TQDomNode& parent,
00060                            const TQString& elementName, double value );
00061     void createStringNode( TQDomDocument& doc, TQDomNode& parent,
00062                            const TQString& elementName,
00063                            const TQString& text );
00064     void createColorNode( TQDomDocument& doc, TQDomNode& parent,
00065                           const TQString& elementName, const TQColor& color );
00066     void createBrushNode( TQDomDocument& doc, TQDomNode& parent,
00067                           const TQString& elementName, const TQBrush& brush );
00068     void createPixmapNode( TQDomDocument& doc, TQDomNode& parent,
00069                            const TQString& elementName, const TQPixmap& pixmap );
00070     void createRectNode( TQDomDocument& doc, TQDomNode& parent,
00071                          const TQString& elementName, const TQRect& rect );
00072     void createStringListNodes( TQDomDocument& doc, TQDomNode& parent,
00073                                 const TQString& elementName,
00074                                 const TQStringList* list );
00075     void createFontNode( TQDomDocument& doc, TQDomNode& parent,
00076                          const TQString& elementName, const TQFont& font );
00077 
00078     void createPenNode( TQDomDocument& doc, TQDomNode& parent,
00079                         const TQString& elementName, const TQPen& pen );
00080     void createDateTimeNode( TQDomDocument& doc, TQDomNode& parent,
00081                              const TQString& elementName,
00082                              const TQDateTime& datetime );
00083     void createDateNode( TQDomDocument& doc, TQDomNode& parent,
00084                          const TQString& elementName, const TQDate& date );
00085     void createTimeNode( TQDomDocument& doc, TQDomNode& parent,
00086                          const TQString& elementName, const TQTime& time );
00087     bool readIntNode( const TQDomElement& element, int& value );
00088     bool readStringNode( const TQDomElement& element, TQString& value );
00089     bool readDoubleNode( const TQDomElement& element, double& value );
00090     bool readBoolNode( const TQDomElement& element, bool& value );
00091     bool readColorNode( const TQDomElement& element, TQColor& value );
00092     bool readBrushNode( const TQDomElement& element, TQBrush& brush );
00093     bool readPixmapNode( const TQDomElement& element, TQPixmap& pixmap );
00094     bool readRectNode( const TQDomElement& element, TQRect& value );
00095     bool readFontNode( const TQDomElement& element, TQFont& font );
00096     bool readPenNode( const TQDomElement& element, TQPen& pen );
00097     bool readDateTimeNode( const TQDomElement& element, TQDateTime& datetime );
00098     bool readDateNode( const TQDomElement& element, TQDate& date );
00099     bool readTimeNode( const TQDomElement& element, TQTime& time );
00100 }
00101 #endif