diff options
Diffstat (limited to 'tdescreensaver/kxsconfig/kxsxml.h')
-rw-r--r-- | tdescreensaver/kxsconfig/kxsxml.h | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/tdescreensaver/kxsconfig/kxsxml.h b/tdescreensaver/kxsconfig/kxsxml.h new file mode 100644 index 00000000..4f02a33c --- /dev/null +++ b/tdescreensaver/kxsconfig/kxsxml.h @@ -0,0 +1,69 @@ +//----------------------------------------------------------------------------- +// +// KDE xscreensaver configuration dialog +// +// Copyright (c) Martin R. Jones <mjones@kde.org> 2002 +// +// 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 of the License. +// +// 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 KXSXML_H +#define KXSXML_H + +#include "kxsconfig.h" +#include <tqxml.h> +#include <tqptrstack.h> + +class KXSXmlHandler; + +class KXSXml +{ +public: + KXSXml( TQWidget *p ); + + bool parse( const TQString &filename ); + const TQPtrList<KXSConfigItem> *items() const; + TQString description() const; + +private: + TQWidget *parent; + KXSXmlHandler *handler; +}; + +class KXSXmlHandler : public TQXmlDefaultHandler +{ +public: + KXSXmlHandler( TQWidget *p ); + + bool startDocument(); + bool startElement( const TQString&, const TQString&, const TQString& , + const TQXmlAttributes& ); + bool endElement( const TQString&, const TQString&, const TQString& ); + bool characters( const TQString & ); + + const TQPtrList<KXSConfigItem> *items() const { return &mConfigItemList; } + const TQString &description() const { return desc; } + +private: + TQWidget *parent; + KXSSelectItem *selItem; + bool inDesc; + TQString desc; + TQPtrList<KXSConfigItem> mConfigItemList; + TQPtrStack<TQWidget> mParentStack; +}; + +#endif // KXSXML_H + |