1/*
2 * Copyright (C) 2011 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package android.support.v4.view.accessibility;
18
19import android.os.Parcelable;
20import android.view.View;
21import android.view.accessibility.AccessibilityRecord;
22
23import java.util.List;
24
25/**
26 * ICS specific AccessibilityRecord API implementation.
27 */
28class AccessibilityRecordCompatIcs {
29
30    public static Object obtain() {
31        return AccessibilityRecord.obtain();
32    }
33
34    public static Object obtain(Object record) {
35        return AccessibilityRecord.obtain((AccessibilityRecord) record);
36    }
37
38    public static int getAddedCount(Object record) {
39        return ((AccessibilityRecord) record).getAddedCount();
40    }
41
42    public static CharSequence getBeforeText(Object record) {
43        return ((AccessibilityRecord) record).getBeforeText();
44    }
45
46    public static CharSequence getClassName(Object record) {
47        return ((AccessibilityRecord) record).getClassName();
48    }
49
50    public static CharSequence getContentDescription(Object record) {
51        return ((AccessibilityRecord) record).getContentDescription();
52    }
53
54    public static int getCurrentItemIndex(Object record) {
55        return ((AccessibilityRecord) record).getCurrentItemIndex();
56    }
57
58    public static int getFromIndex(Object record) {
59        return ((AccessibilityRecord) record).getFromIndex();
60    }
61
62    public static int getItemCount(Object record) {
63        return ((AccessibilityRecord) record).getItemCount();
64    }
65
66//  TODO: Uncomment when these APIs become public
67//    public static int getMaxScrollX(Object record) {
68//        return ((AccessibilityRecord) record).getMaxScrollX();
69//    }
70//
71//    public static int getMaxScrollY(Object record) {
72//        return ((AccessibilityRecord) record).getMaxScrollY();
73//    }
74
75    public static Parcelable getParcelableData(Object record) {
76        return ((AccessibilityRecord) record).getParcelableData();
77    }
78
79    public static int getRemovedCount(Object record) {
80        return ((AccessibilityRecord) record).getRemovedCount();
81    }
82
83    public static int getScrollX(Object record) {
84        return ((AccessibilityRecord) record).getScrollX();
85    }
86
87    public static int getScrollY(Object record) {
88        return ((AccessibilityRecord) record).getScrollY();
89    }
90
91    public static Object getSource(Object record) {
92        return ((AccessibilityRecord) record).getSource();
93    }
94
95    public static List<CharSequence> getText(Object record) {
96        return ((AccessibilityRecord) record).getText();
97    }
98
99    public static int getToIndex(Object record) {
100        return ((AccessibilityRecord) record).getToIndex();
101    }
102
103    public static int getWindowId(Object record) {
104        return ((AccessibilityRecord) record).getWindowId();
105    }
106
107    public static boolean isChecked(Object record) {
108        return ((AccessibilityRecord) record).isChecked();
109    }
110
111    public static boolean isEnabled(Object record) {
112        return ((AccessibilityRecord) record).isEnabled();
113    }
114
115    public static boolean isFullScreen(Object record) {
116        return ((AccessibilityRecord) record).isFullScreen();
117    }
118
119    public static boolean isPassword(Object record) {
120        return ((AccessibilityRecord) record).isPassword();
121    }
122
123    public static boolean isScrollable(Object record) {
124        return ((AccessibilityRecord) record).isScrollable();
125    }
126
127    public static void recycle(Object record) {
128        ((AccessibilityRecord) record).recycle();
129    }
130
131    public static void setAddedCount(Object record, int addedCount) {
132        ((AccessibilityRecord) record).setAddedCount(addedCount);
133    }
134
135    public static void setBeforeText(Object record, CharSequence beforeText) {
136        ((AccessibilityRecord) record).setBeforeText(beforeText);
137    }
138
139    public static void setChecked(Object record, boolean isChecked) {
140        ((AccessibilityRecord) record).setChecked(isChecked);
141    }
142
143    public static void setClassName(Object record, CharSequence className) {
144        ((AccessibilityRecord) record).setClassName(className);
145    }
146
147    public static void setContentDescription(Object record, CharSequence contentDescription) {
148        ((AccessibilityRecord) record).setContentDescription(contentDescription);
149    }
150
151    public static void setCurrentItemIndex(Object record, int currentItemIndex) {
152        ((AccessibilityRecord) record).setCurrentItemIndex(currentItemIndex);
153    }
154
155    public static void setEnabled(Object record, boolean isEnabled) {
156        ((AccessibilityRecord) record).setEnabled(isEnabled);
157    }
158
159    public static void setFromIndex(Object record, int fromIndex) {
160        ((AccessibilityRecord) record).setFromIndex(fromIndex);
161    }
162
163    public static void setFullScreen(Object record, boolean isFullScreen) {
164        ((AccessibilityRecord) record).setFullScreen(isFullScreen);
165    }
166
167    public static void setItemCount(Object record, int itemCount) {
168        ((AccessibilityRecord) record).setItemCount(itemCount);
169    }
170
171//  TODO: Uncomment when these APIs become public
172//    public static void setMaxScrollX(Object record, int maxScrollX) {
173//        ((AccessibilityRecord) record).setMaxScrollX(maxScrollX);
174//    }
175//
176//    public static void setMaxScrollY(Object record, int maxScrollY) {
177//        ((AccessibilityRecord) record).setMaxScrollY(maxScrollY);
178//    }
179
180    public static void setParcelableData(Object record, Parcelable parcelableData) {
181        ((AccessibilityRecord) record).setParcelableData(parcelableData);
182    }
183
184    public static void setPassword(Object record, boolean isPassword) {
185        ((AccessibilityRecord) record).setPassword(isPassword);
186    }
187
188    public static void setRemovedCount(Object record, int removedCount) {
189        ((AccessibilityRecord) record).setRemovedCount(removedCount);
190    }
191
192    public static void setScrollX(Object record, int scrollX) {
193        ((AccessibilityRecord) record).setScrollX(scrollX);
194    }
195
196    public static void setScrollY(Object record, int scrollY) {
197        ((AccessibilityRecord) record).setScrollY(scrollY);
198    }
199
200    public static void setScrollable(Object record, boolean scrollable) {
201        ((AccessibilityRecord) record).setScrollable(scrollable);
202    }
203
204    public static void setSource(Object record, View source) {
205        ((AccessibilityRecord) record).setSource(source);
206    }
207
208    public static void setToIndex(Object record, int toIndex) {
209        ((AccessibilityRecord) record).setToIndex(toIndex);
210    }
211}
212