1/*
2 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
3 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
4 * Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com>
5 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
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., 51 Franklin Street, Fifth Floor,
20 * Boston, MA 02110-1301, USA.
21 */
22
23#ifndef WebDOMTestTypedefs_h
24#define WebDOMTestTypedefs_h
25
26#include <WebDOMObject.h>
27#include <WebDOMString.h>
28
29namespace WebCore {
30class TestTypedefs;
31};
32
33class WebDOMDOMString[];
34class WebDOMSVGPoint;
35class WebDOMString;
36class WebDOMlong[];
37
38class WebDOMTestTypedefs : public WebDOMObject {
39public:
40    WebDOMTestTypedefs();
41    explicit WebDOMTestTypedefs(WebCore::TestTypedefs*);
42    WebDOMTestTypedefs(const WebDOMTestTypedefs&);
43    WebDOMTestTypedefs& operator=(const WebDOMTestTypedefs&);
44    virtual ~WebDOMTestTypedefs();
45
46    unsigned long long unsignedLongLongAttr() const;
47    void setUnsignedLongLongAttr(unsigned long long);
48    WebDOMString immutableSerializedScriptValue() const;
49    void setImmutableSerializedScriptValue(const WebDOMString&);
50    int attrWithGetterException() const;
51    void setAttrWithGetterException(int);
52    int attrWithSetterException() const;
53    void setAttrWithSetterException(int);
54    WebDOMString stringAttrWithGetterException() const;
55    void setStringAttrWithGetterException(const WebDOMString&);
56    WebDOMString stringAttrWithSetterException() const;
57    void setStringAttrWithSetterException(const WebDOMString&);
58
59    void func(const WebDOMlong[]& x);
60    void setShadow(float width, float height, float blur, const WebDOMString& color, float alpha);
61    void nullableArrayArg(const WebDOMDOMString[]& arrayArg);
62    WebDOMSVGPoint immutablePointFunction();
63    void methodWithException();
64
65    WebCore::TestTypedefs* impl() const;
66
67protected:
68    struct WebDOMTestTypedefsPrivate;
69    WebDOMTestTypedefsPrivate* m_impl;
70};
71
72WebCore::TestTypedefs* toWebCore(const WebDOMTestTypedefs&);
73WebDOMTestTypedefs toWebKit(WebCore::TestTypedefs*);
74
75#endif
76