16c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen/*
2dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * Copyright (C) Research In Motion Limited 2010. All rights reserved.
3dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch *
4dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * This library is free software; you can redistribute it and/or
5dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * modify it under the terms of the GNU Library General Public
6dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * License as published by the Free Software Foundation; either
7dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * version 2 of the License, or (at your option) any later version.
8dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch *
9dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * This library is distributed in the hope that it will be useful,
10dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * but WITHOUT ANY WARRANTY; without even the implied warranty of
11dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * Library General Public License for more details.
13dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch *
14dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * You should have received a copy of the GNU Library General Public License
15dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * along with this library; see the file COPYING.LIB.  If not, write to
16dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17dd8bb3de4f353a81954234999f1fea748aee2ea9Ben Murdoch * Boston, MA 02110-1301, USA.
186c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen */
196c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
206c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#ifndef SVGVKernElement_h
216c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#define SVGVKernElement_h
226c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
236c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#if ENABLE(SVG_FONTS)
246c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#include "SVGFontElement.h"
256c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#include "SVGParserUtilities.h"
266c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#include "SVGStyledElement.h"
276c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
286c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#include <limits>
29cad810f21b803229eb11403f9209855525a25d57Steve Block#include <wtf/Forward.h>
306c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
316c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsennamespace WebCore {
326c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
336c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenclass SVGFontData;
346c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
356c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenclass SVGVKernElement : public SVGElement {
366c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsenpublic:
375ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen    static PassRefPtr<SVGVKernElement> create(const QualifiedName&, Document*);
385ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen
395ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen    void buildVerticalKerningPair(KerningPairVector&);
405ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsen
415ddde30071f639962dd557c453f2ad01f8f0fd00Kristian Monsenprivate:
426c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    SVGVKernElement(const QualifiedName&, Document*);
436c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
446c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    virtual void insertedIntoDocument();
456c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    virtual void removedFromDocument();
466c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
476c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen    virtual bool rendererIsNeeded(RenderStyle*) { return false; }
486c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen};
496c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
506c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen} // namespace WebCore
516c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen
526c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#endif // ENABLE(SVG_FONTS)
536c2af9490927c3c5959b5cb07461b646f8b32f6cKristian Monsen#endif
54