KHtml

SVGViewSpec.h
1 /*
2  Copyright (C) 2007 Rob Buis <[email protected]>
3 
4  This file is part of the KDE project
5 
6  This library is free software; you can redistribute it and/or
7  modify it under the terms of the GNU Library General Public
8  License as published by the Free Software Foundation; either
9  version 2 of the License, or (at your option) any later version.
10 
11  This library is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  Library General Public License for more details.
15 
16  You should have received a copy of the GNU Library General Public License
17  along with this library; see the file COPYING.LIB. If not, write to
18  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19  Boston, MA 02110-1301, USA.
20 */
21 
22 #ifndef SVGViewSpec_h
23 #define SVGViewSpec_h
24 
25 #if ENABLE(SVG)
26 #include "SVGFitToViewBox.h"
27 #include "SVGZoomAndPan.h"
28 
29 #include <wtf/RefPtr.h>
30 
31 namespace WebCore
32 {
33 
34 class SVGElement;
35 class SVGSVGElement;
36 class SVGTransformList;
37 
38 class SVGViewSpec : public SVGFitToViewBox,
39  public SVGZoomAndPan
40 {
41 public:
42  SVGViewSpec(const SVGSVGElement *);
43  virtual ~SVGViewSpec();
44 
45  bool parseViewSpec(const String &);
46 
47  void setTransform(const String &);
48  SVGTransformList *transform() const
49  {
50  return m_transform.get();
51  }
52 
53  void setViewBoxString(const String &);
54 
55  void setPreserveAspectRatioString(const String &);
56 
57  void setViewTargetString(const String &);
58  String viewTargetString() const
59  {
60  return m_viewTargetString;
61  }
62  SVGElement *viewTarget() const;
63 
64 protected:
65  const SVGElement *contextElement() const override;
66 
67 private:
68  mutable RefPtr<SVGTransformList> m_transform;
69  const SVGSVGElement *m_contextElement;
70  String m_viewTargetString;
71 };
72 
73 } // namespace WebCore
74 
75 #endif // ENABLE(SVG)
76 #endif
KDOCTOOLS_EXPORT QString transform(const QString &file, const QString &stylesheet, const QVector< const char * > &params=QVector< const char * >())
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Tue Oct 26 2021 22:48:10 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.