//
//     Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
//     may also apply


//                 Generated by preSip
//            module tdehtml  version KDE 3.5.3


// This software 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; either version 2 of
// the License, or (at your option) any later version.
//
// This software 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 library; see the file COPYING.
// If not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

namespace DOM
{

class CSSRule
{
%TypeHeaderCode
#include <css_rule.h>
%End


public:
                         CSSRule ();
                         CSSRule (const DOM::CSSRule&);
//ig                          CSSRule (CSSRuleImpl*);

public:

%If ( KDE_3_2_0 -  )

    enum RuleType
    {
        UNKNOWN_RULE, 
        STYLE_RULE, 
        CHARSET_RULE, 
        IMPORT_RULE, 
        MEDIA_RULE, 
        FONT_FACE_RULE, 
        PAGE_RULE, 
        QUIRKS_RULE
    };

%End

    ushort               type () const;
    DOM::DOMString       cssText () const;
    void                 setCssText (const DOM::DOMString&);
    DOM::CSSStyleSheet   parentStyleSheet () const;
    DOM::CSSRule         parentRule () const;
//ig     CSSRuleImpl*         handle () const;
    bool                 isNull () const;

protected:

%If ( KDE_3_0_1 -  )
    void                 assignOther (const DOM::CSSRule&, DOM::CSSRule::RuleType);
%End


public:

%If (  - KDE_3_2_0 )

    enum RuleType
    {
        UNKNOWN_RULE, 
        STYLE_RULE, 
        CHARSET_RULE, 
        IMPORT_RULE, 
        MEDIA_RULE, 
        FONT_FACE_RULE, 
        PAGE_RULE
    };

%End


};  // class CSSRule


class CSSCharsetRule : DOM::CSSRule
{
%TypeHeaderCode
#include <css_rule.h>
%End


public:
                         CSSCharsetRule ();
                         CSSCharsetRule (const DOM::CSSCharsetRule&);
                         CSSCharsetRule (const DOM::CSSRule&);
//ig                          CSSCharsetRule (CSSCharsetRuleImpl*);

public:
    DOM::DOMString       encoding () const;
    void                 setEncoding (const DOM::DOMString&);

};  // class CSSCharsetRule


class CSSFontFaceRule : DOM::CSSRule
{
%TypeHeaderCode
#include <css_rule.h>
%End


public:
                         CSSFontFaceRule ();
                         CSSFontFaceRule (const DOM::CSSFontFaceRule&);
                         CSSFontFaceRule (const DOM::CSSRule&);
//ig                          CSSFontFaceRule (CSSFontFaceRuleImpl*);

public:
    DOM::CSSStyleDeclaration style () const;

};  // class CSSFontFaceRule


class CSSImportRule : DOM::CSSRule
{
%TypeHeaderCode
#include <css_rule.h>
%End


public:
                         CSSImportRule ();
                         CSSImportRule (const DOM::CSSImportRule&);
                         CSSImportRule (const DOM::CSSRule&);
//ig                          CSSImportRule (CSSImportRuleImpl*);

public:
    DOM::DOMString       href () const;
    DOM::MediaList       media () const;
    DOM::CSSStyleSheet   styleSheet () const;

};  // class CSSImportRule


class CSSMediaRule : DOM::CSSRule
{
%TypeHeaderCode
#include <css_rule.h>
%End


public:
                         CSSMediaRule ();
                         CSSMediaRule (const DOM::CSSMediaRule&);
                         CSSMediaRule (const DOM::CSSRule&);
//ig                          CSSMediaRule (CSSMediaRuleImpl*);

public:
    DOM::MediaList       media () const;
    DOM::CSSRuleList     cssRules () const;
    ulong                insertRule (const DOM::DOMString&, ulong);
    void                 deleteRule (ulong);

};  // class CSSMediaRule


class CSSPageRule : DOM::CSSRule
{
%TypeHeaderCode
#include <css_rule.h>
%End


public:
                         CSSPageRule ();
                         CSSPageRule (const DOM::CSSPageRule&);
                         CSSPageRule (const DOM::CSSRule&);
//ig                          CSSPageRule (CSSPageRuleImpl*);

public:
    DOM::DOMString       selectorText () const;
    void                 setSelectorText (const DOM::DOMString&);
    DOM::CSSStyleDeclaration style () const;

};  // class CSSPageRule


class CSSStyleRule : DOM::CSSRule
{
%TypeHeaderCode
#include <css_rule.h>
%End


public:
                         CSSStyleRule ();
                         CSSStyleRule (const DOM::CSSStyleRule&);
                         CSSStyleRule (const DOM::CSSRule&);
//ig                          CSSStyleRule (CSSStyleRuleImpl*);

public:
    DOM::DOMString       selectorText () const;
    void                 setSelectorText (const DOM::DOMString&);
    DOM::CSSStyleDeclaration style () const;

};  // class CSSStyleRule


class CSSUnknownRule : DOM::CSSRule
{
%TypeHeaderCode
#include <css_rule.h>
%End


public:
                         CSSUnknownRule ();
                         CSSUnknownRule (const DOM::CSSUnknownRule&);
                         CSSUnknownRule (const DOM::CSSRule&);
//ig                          CSSUnknownRule (CSSUnknownRuleImpl*);

};  // class CSSUnknownRule


class CSSRuleList
{
%TypeHeaderCode
#include <css_rule.h>
%End


public:
                         CSSRuleList ();
                         CSSRuleList (const DOM::CSSRuleList&);
//ig                          CSSRuleList (CSSRuleListImpl*);
//ig                          CSSRuleList (StyleListImpl*);

public:
    ulong                length () const;
    DOM::CSSRule         item (ulong);
//ig     CSSRuleListImpl*     handle () const;
    bool                 isNull () const;

protected:

};  // class CSSRuleList

};  // namespace DOM

