|
Lines 187-193
Link Here
|
| 187 |
public int /*long*/ method0(int /*long*/[] args) {return QueryInterface(args[0], args[1]);} |
187 |
public int /*long*/ method0(int /*long*/[] args) {return QueryInterface(args[0], args[1]);} |
| 188 |
public int /*long*/ method1(int /*long*/[] args) {return AddRef();} |
188 |
public int /*long*/ method1(int /*long*/[] args) {return AddRef();} |
| 189 |
public int /*long*/ method2(int /*long*/[] args) {return Release();} |
189 |
public int /*long*/ method2(int /*long*/[] args) {return Release();} |
| 190 |
// We will not add the IAccessible methods here because "AT's should not rely on IA inheritance" |
190 |
|
|
|
191 |
/* |
| 192 |
* Even though the IA2 spec says "AT's should not rely on IA inheritance", |
| 193 |
* some AT's do rely on it, so we need to implement the IAccessible methods here. |
| 194 |
*/ |
| 195 |
// method3 GetTypeInfoCount - not implemented |
| 196 |
// method4 GetTypeInfo - not implemented |
| 197 |
// method5 GetIDsOfNames - not implemented |
| 198 |
// method6 Invoke - not implemented |
| 199 |
public int /*long*/ method7(int /*long*/[] args) {return get_accParent(args[0]);} |
| 200 |
public int /*long*/ method8(int /*long*/[] args) {return get_accChildCount(args[0]);} |
| 201 |
public int /*long*/ method9(int /*long*/[] args) {return get_accChild(args[0], args[1]);} |
| 202 |
public int /*long*/ method10(int /*long*/[] args) {return get_accName(args[0], args[1]);} |
| 203 |
public int /*long*/ method11(int /*long*/[] args) {return get_accValue(args[0], args[1]);} |
| 204 |
public int /*long*/ method12(int /*long*/[] args) {return get_accDescription(args[0], args[1]);} |
| 205 |
public int /*long*/ method13(int /*long*/[] args) {return get_accRole(args[0], args[1]);} |
| 206 |
public int /*long*/ method14(int /*long*/[] args) {return get_accState(args[0], args[1]);} |
| 207 |
public int /*long*/ method15(int /*long*/[] args) {return get_accHelp(args[0], args[1]);} |
| 208 |
public int /*long*/ method16(int /*long*/[] args) {return get_accHelpTopic(args[0], args[1], args[2]);} |
| 209 |
public int /*long*/ method17(int /*long*/[] args) {return get_accKeyboardShortcut(args[0], args[1]);} |
| 210 |
public int /*long*/ method18(int /*long*/[] args) {return get_accFocus(args[0]);} |
| 211 |
public int /*long*/ method19(int /*long*/[] args) {return get_accSelection(args[0]);} |
| 212 |
public int /*long*/ method20(int /*long*/[] args) {return get_accDefaultAction(args[0], args[1]);} |
| 213 |
public int /*long*/ method21(int /*long*/[] args) {return accSelect((int)/*64*/args[0], args[1]);} |
| 214 |
public int /*long*/ method22(int /*long*/[] args) {return accLocation(args[0], args[1], args[2], args[3], args[4]);} |
| 215 |
public int /*long*/ method23(int /*long*/[] args) {return accNavigate((int)/*64*/args[0], args[1], args[2]);} |
| 216 |
public int /*long*/ method24(int /*long*/[] args) {return accHitTest((int)/*64*/args[0], (int)/*64*/args[1], args[2]);} |
| 217 |
public int /*long*/ method25(int /*long*/[] args) {return accDoDefaultAction(args[0]);} |
| 218 |
public int /*long*/ method26(int /*long*/[] args) {return put_accName(args[0], args[1]);} |
| 219 |
public int /*long*/ method27(int /*long*/[] args) {return put_accValue(args[0], args[1]);} |
| 220 |
|
| 221 |
// IAccessible2 methods |
| 191 |
public int /*long*/ method28(int /*long*/[] args) {return get_nRelations(args[0]);} |
222 |
public int /*long*/ method28(int /*long*/[] args) {return get_nRelations(args[0]);} |
| 192 |
public int /*long*/ method29(int /*long*/[] args) {return get_relation((int)/*64*/args[0], args[1]);} |
223 |
public int /*long*/ method29(int /*long*/[] args) {return get_relation((int)/*64*/args[0], args[1]);} |
| 193 |
public int /*long*/ method30(int /*long*/[] args) {return get_relations((int)/*64*/args[0], args[1], args[2]);} |
224 |
public int /*long*/ method30(int /*long*/[] args) {return get_relations((int)/*64*/args[0], args[1], args[2]);} |
|
Lines 207-212
Link Here
|
| 207 |
public int /*long*/ method44(int /*long*/[] args) {return get_locale(args[0]);} |
238 |
public int /*long*/ method44(int /*long*/[] args) {return get_locale(args[0]);} |
| 208 |
public int /*long*/ method45(int /*long*/[] args) {return get_attributes(args[0]);} |
239 |
public int /*long*/ method45(int /*long*/[] args) {return get_attributes(args[0]);} |
| 209 |
}; |
240 |
}; |
|
|
241 |
|
| 242 |
/* If the callback takes a struct parameter (for example, a VARIANT), |
| 243 |
* then create a custom callback that dereferences the struct and |
| 244 |
* passes a pointer to the original callback. |
| 245 |
*/ |
| 246 |
int /*long*/ ppVtable = objIAccessible2.ppVtable; |
| 247 |
int /*long*/[] pVtable = new int /*long*/[1]; |
| 248 |
COM.MoveMemory(pVtable, ppVtable, OS.PTR_SIZEOF); |
| 249 |
int /*long*/[] funcs = new int /*long*/[28]; |
| 250 |
COM.MoveMemory(funcs, pVtable[0], OS.PTR_SIZEOF * funcs.length); |
| 251 |
funcs[9] = COM.get_accChild_CALLBACK(funcs[9]); |
| 252 |
funcs[10] = COM.get_accName_CALLBACK(funcs[10]); |
| 253 |
funcs[11] = COM.get_accValue_CALLBACK(funcs[11]); |
| 254 |
funcs[12] = COM.get_accDescription_CALLBACK(funcs[12]); |
| 255 |
funcs[13] = COM.get_accRole_CALLBACK(funcs[13]); |
| 256 |
funcs[14] = COM.get_accState_CALLBACK(funcs[14]); |
| 257 |
funcs[15] = COM.get_accHelp_CALLBACK(funcs[15]); |
| 258 |
funcs[16] = COM.get_accHelpTopic_CALLBACK(funcs[16]); |
| 259 |
funcs[17] = COM.get_accKeyboardShortcut_CALLBACK(funcs[17]); |
| 260 |
funcs[20] = COM.get_accDefaultAction_CALLBACK(funcs[20]); |
| 261 |
funcs[21] = COM.accSelect_CALLBACK(funcs[21]); |
| 262 |
funcs[22] = COM.accLocation_CALLBACK(funcs[22]); |
| 263 |
funcs[23] = COM.accNavigate_CALLBACK(funcs[23]); |
| 264 |
funcs[25] = COM.accDoDefaultAction_CALLBACK(funcs[25]); |
| 265 |
funcs[26] = COM.put_accName_CALLBACK(funcs[26]); |
| 266 |
funcs[27] = COM.put_accValue_CALLBACK(funcs[27]); |
| 267 |
COM.MoveMemory(pVtable[0], funcs, OS.PTR_SIZEOF * funcs.length); |
| 210 |
} |
268 |
} |
| 211 |
|
269 |
|
| 212 |
void createIAccessibleAction() { |
270 |
void createIAccessibleAction() { |