2006-02-11 Eric Seidel <eseidel@apple.com>
[WebKit-https.git] / WebCore / ksvg2 / KSVGSettings.h
1 /*
2     Copyright (C) 2005 Nikolas Zimmermann <wildfox@kde.org>
3                   2005 Rob Buis <buis@kde.org>
4
5     This file is part of the KDE project
6
7     This library is free software; you can redistribute it and/or
8     modify it under the terms of the GNU Library General Public
9     License as published by the Free Software Foundation; either
10     version 2 of the License, or (at your option) any later version.
11
12     This library is distributed in the hope that it will be useful,
13     but WITHOUT ANY WARRANTY; without even the implied warranty of
14     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15     Library General Public License for more details.
16
17     You should have received a copy of the GNU Library General Public License
18     along with this library; see the file COPYING.LIB.  If not, write to
19     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20     Boston, MA 02111-1307, USA.
21 */
22
23 #ifndef KSVG_KSVGSettings_H
24 #define KSVG_KSVGSettings_H
25 #if SVG_SUPPORT
26
27 #include <kdom/KDOMSettings.h>
28
29 namespace WebCore
30 {
31     /**
32      * Settings for the SVG view.
33      */
34     class KSVGSettings : public KDOMSettings
35     {
36     public:
37         KSVGSettings();
38         KSVGSettings(const KSVGSettings &other);
39         virtual ~KSVGSettings();
40
41         /**
42          * Called by constructor and reparseConfiguration
43          */
44         virtual void init();
45
46         /** Read settings from @p config.
47          * @param reset if true, settings are always set; if false,
48          *  settings are only set if the config file has a corresponding key.
49          */
50         virtual void init(KConfig *config, bool reset = true);
51
52         // Settings
53         QString parsingBackend() const;
54         void setParsingBackend(const QString &backend) const;
55
56         QString renderingBackend() const;
57         void setRenderingBackend(const QString &backend) const;
58
59         bool fontKerning() const;
60         void setFontKerning(bool value);
61         
62         bool progressiveRendering() const;
63         void setProgressiveRendering(bool value);
64
65     private:
66         class Private;
67         Private *d;
68     };
69 }
70
71 #endif // SVG_SUPPORT
72 #endif
73
74 // vim:ts=4:noet