1635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project/*
2635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * Copyright (c) 2008, 2009, Google Inc. All rights reserved.
3635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project *
4635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * Redistribution and use in source and binary forms, with or without
5635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * modification, are permitted provided that the following conditions are
6635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * met:
7635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project *
8635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project *     * Redistributions of source code must retain the above copyright
9635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * notice, this list of conditions and the following disclaimer.
10635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project *     * Redistributions in binary form must reproduce the above
11635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * copyright notice, this list of conditions and the following disclaimer
12635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * in the documentation and/or other materials provided with the
13635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * distribution.
14635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project *     * Neither the name of Google Inc. nor the names of its
15635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * contributors may be used to endorse or promote products derived from
16635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * this software without specific prior written permission.
17635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project *
18635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project */
30635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
31635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project#include "config.h"
32635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project#include "Cursor.h"
33635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
3481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#include <wtf/Assertions.h>
3581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch
36635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectnamespace WebCore {
37635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
38635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source ProjectCursor::Cursor(const Cursor& other)
39967717af5423377c967781471ee106e2bb4e11c8Ben Murdoch    : m_platformCursor(other.m_platformCursor)
40635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
41635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
42635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
43635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source ProjectCursor::Cursor(Image* image, const IntPoint& hotSpot)
44967717af5423377c967781471ee106e2bb4e11c8Ben Murdoch    : m_platformCursor(image, hotSpot)
45635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
46635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
47635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
48635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source ProjectCursor::~Cursor()
49635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
50635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
51635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
52635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source ProjectCursor& Cursor::operator=(const Cursor& other)
53635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
54967717af5423377c967781471ee106e2bb4e11c8Ben Murdoch    m_platformCursor = other.m_platformCursor;
55635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return *this;
56635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
57635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
58635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source ProjectCursor::Cursor(PlatformCursor c)
59967717af5423377c967781471ee106e2bb4e11c8Ben Murdoch    : m_platformCursor(c)
60635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
61635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
62635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
63635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& pointerCursor()
64635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
65635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypePointer);
66635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
67635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
68635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
69635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& crossCursor()
70635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
71635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeCross);
72635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
73635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
74635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
75635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& handCursor()
76635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
77635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeHand);
78635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
79635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
80635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
81635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& iBeamCursor()
82635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
83635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeIBeam);
84635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
85635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
86635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
87635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& waitCursor()
88635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
89635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeWait);
90635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
91635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
92635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
93635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& helpCursor()
94635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
95635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeHelp);
96635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
97635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
98635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
99635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& eastResizeCursor()
100635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
101635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeEastResize);
102635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
103635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
104635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
105635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& northResizeCursor()
106635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
107635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNorthResize);
108635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
109635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
110635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
111635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& northEastResizeCursor()
112635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
113635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNorthEastResize);
114635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
115635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
116635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
117635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& northWestResizeCursor()
118635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
119635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNorthWestResize);
120635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
121635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
122635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
123635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& southResizeCursor()
124635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
125635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeSouthResize);
126635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
127635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
128635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
129635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& southEastResizeCursor()
130635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
131635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeSouthEastResize);
132635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
133635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
134635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
135635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& southWestResizeCursor()
136635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
137635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeSouthWestResize);
138635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
139635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
140635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
141635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& westResizeCursor()
142635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
143635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeWestResize);
144635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
145635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
146635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
147635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& northSouthResizeCursor()
148635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
149635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNorthSouthResize);
150635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
151635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
152635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
153635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& eastWestResizeCursor()
154635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
155635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeEastWestResize);
156635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
157635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
158635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
159635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& northEastSouthWestResizeCursor()
160635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
161635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNorthEastSouthWestResize);
162635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
163635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
164635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
165635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& northWestSouthEastResizeCursor()
166635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
167635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNorthWestSouthEastResize);
168635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
169635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
170635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
171635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& columnResizeCursor()
172635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
173635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeColumnResize);
174635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
175635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
176635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
177635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& rowResizeCursor()
178635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
179635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeRowResize);
180635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
181635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
182635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
183635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& middlePanningCursor()
184635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
185635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeMiddlePanning);
186635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
187635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
188635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
189635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& eastPanningCursor()
190635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
191635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeEastPanning);
192635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
193635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
194635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
195635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& northPanningCursor()
196635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
197635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNorthPanning);
198635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
199635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
200635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
201635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& northEastPanningCursor()
202635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
203635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNorthEastPanning);
204635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
205635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
206635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
207635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& northWestPanningCursor()
208635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
209635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNorthWestPanning);
210635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
211635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
212635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
213635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& southPanningCursor()
214635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
215635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeSouthPanning);
216635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
217635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
218635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
219635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& southEastPanningCursor()
220635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
221635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeSouthEastPanning);
222635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
223635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
224635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
225635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& southWestPanningCursor()
226635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
227635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeSouthWestPanning);
228635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
229635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
230635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
231635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& westPanningCursor()
232635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
233635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeWestPanning);
234635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
235635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
236635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
237635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& moveCursor()
238635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
239635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeMove);
240635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
241635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
242635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
243635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& verticalTextCursor()
244635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
245635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeVerticalText);
246635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
247635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
248635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
249635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& cellCursor()
250635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
251635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeCell);
252635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
253635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
254635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
255635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& contextMenuCursor()
256635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
257635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeContextMenu);
258635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
259635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
260635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
261635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& aliasCursor()
262635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
263635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeAlias);
264635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
265635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
266635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
267635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& progressCursor()
268635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
269635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeProgress);
270635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
271635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
272635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
273635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& noDropCursor()
274635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
275635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNoDrop);
276635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
277635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
278635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
279635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& copyCursor()
280635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
281635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeCopy);
282635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
283635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
284635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
285635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& noneCursor()
286635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
287635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNone);
288635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
289635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
290635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
291635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& notAllowedCursor()
292635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
293635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeNotAllowed);
294635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
295635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
296635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
297635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& zoomInCursor()
298635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
299635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeZoomIn);
300635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
301635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
302635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
303635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& zoomOutCursor()
304635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
305635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    static const Cursor c(PlatformCursor::TypeZoomOut);
306635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project    return c;
307635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
308635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
309635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& grabCursor()
310635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
31181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch    static const Cursor c(PlatformCursor::TypeGrab);
31281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch    return c;
313635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
314635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
315635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Projectconst Cursor& grabbingCursor()
316635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project{
31781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch    static const Cursor c(PlatformCursor::TypeGrabbing);
31881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch    return c;
319635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project}
320635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project
321635860845790a19bf50bbc51ba8fb66a96dde068The Android Open Source Project} // namespace WebCore
32281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch
32381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch#define COMPILE_ASSERT_MATCHING_ENUM(cursor_name, platform_cursor_name) \
32481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch    COMPILE_ASSERT(int(WebCore::Cursor::cursor_name) == int(WebCore::PlatformCursor::platform_cursor_name), mismatching_enums)
32581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen Murdoch
32681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Pointer, TypePointer);
32781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Cross, TypeCross);
32881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Hand, TypeHand);
32981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(IBeam, TypeIBeam);
33081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Wait, TypeWait);
33181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Help, TypeHelp);
33281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(EastResize, TypeEastResize);
33381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NorthResize, TypeNorthResize);
33481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NorthEastResize, TypeNorthEastResize);
33581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NorthWestResize, TypeNorthWestResize);
33681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(SouthResize, TypeSouthResize);
33781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(SouthEastResize, TypeSouthEastResize);
33881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(SouthWestResize, TypeSouthWestResize);
33981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(WestResize, TypeWestResize);
34081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NorthSouthResize, TypeNorthSouthResize);
34181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(EastWestResize, TypeEastWestResize);
34281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NorthEastSouthWestResize, TypeNorthEastSouthWestResize);
34381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NorthWestSouthEastResize, TypeNorthWestSouthEastResize);
34481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(ColumnResize, TypeColumnResize);
34581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(RowResize, TypeRowResize);
34681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(MiddlePanning, TypeMiddlePanning);
34781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(EastPanning, TypeEastPanning);
34881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NorthPanning, TypeNorthPanning);
34981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NorthEastPanning, TypeNorthEastPanning);
35081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NorthWestPanning, TypeNorthWestPanning);
35181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(SouthPanning, TypeSouthPanning);
35281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(SouthEastPanning, TypeSouthEastPanning);
35381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(SouthWestPanning, TypeSouthWestPanning);
35481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(WestPanning, TypeWestPanning);
35581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Move, TypeMove);
35681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(VerticalText, TypeVerticalText);
35781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Cell, TypeCell);
35881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(ContextMenu, TypeContextMenu);
35981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Alias, TypeAlias);
36081bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Progress, TypeProgress);
36181bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NoDrop, TypeNoDrop);
36281bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Copy, TypeCopy);
36381bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(None, TypeNone);
36481bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(NotAllowed, TypeNotAllowed);
36581bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(ZoomIn, TypeZoomIn);
36681bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(ZoomOut, TypeZoomOut);
36781bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Grab, TypeGrab);
36881bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Grabbing, TypeGrabbing);
36981bc750723a18f21cd17d1b173cd2a4dda9cea6eBen MurdochCOMPILE_ASSERT_MATCHING_ENUM(Custom, TypeCustom);
370