nsIAccessibleMacInterface.idl (2773B)
1 /* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6 #include "nsISupports.idl" 7 8 %{C++ 9 #include <objc/objc.h> 10 11 #define NS_ACCESSIBLE_MAC_EVENT_TOPIC "accessible-mac-event" 12 %} 13 14 native NativeObjectId(id); 15 16 /** 17 * A generic NSISupports wrapper for native NSObjects. 18 */ 19 [scriptable, builtinclass, uuid(4582bb77-de03-4ed1-a9b4-d482d97c0129)] 20 interface nsIAccessibleMacNSObjectWrapper : nsISupports 21 { 22 [noscript, notxpcom, nostdcall] NativeObjectId GetNativeObject(); 23 }; 24 25 [scriptable, builtinclass, uuid(9d27cf21-66fc-47dc-8a07-98edb18707b1)] 26 interface nsIAccessibleMacInterface : nsISupports 27 { 28 /** 29 * List of available attribute names for the object. 30 * Emulates `AXUIElementCopyAttributeNames`. 31 */ 32 readonly attribute Array<AString> attributeNames; 33 34 /** 35 * List of available parameterized attribute names for the object. 36 * Emulates `AXUIElementCopyParameterizedAttributeNames`. 37 */ 38 readonly attribute Array<AString> parameterizedAttributeNames; 39 40 /** 41 * List of available action names for tthe object. 42 * Emulates `AXUIElementCopyActionNames`. 43 */ 44 readonly attribute Array<AString> actionNames; 45 46 /** 47 * Returns the value of an attribute. 48 * Emulates `AXUIElementCopyAttributeValue`. 49 */ 50 [implicit_jscontext] 51 jsval getAttributeValue(in AString attributeName); 52 53 /** 54 * Returns the value of an attribute given a name and a parameter. 55 * Emulates `AXUIElementCopyParameterizedAttributeValue`. 56 **/ 57 [implicit_jscontext] 58 jsval getParameterizedAttributeValue(in AString attributeName, in jsval parameter); 59 60 /** 61 * Gets a description of the specified action. 62 * Emulates `AXUIElementCopyActionDescription`. 63 */ 64 AString getActionDescription(in AString actionName); 65 66 /** 67 * Requests that the accessibility object perform the specified action. 68 * Emulates `AXUIElementPerformAction`. 69 */ 70 void performAction(in AString actionName); 71 72 /** 73 * Returns true if the given attribute is settable on the object. 74 * Emulates `AXUIElementIsAttributeSettable`. 75 **/ 76 boolean isAttributeSettable(in AString attributeName); 77 78 /** 79 * Sets the given attribute with the given value on the object. 80 * Emulates `AXUIElementSetAttributeValue`. 81 **/ 82 [implicit_jscontext] 83 void setAttributeValue(in AString attributeName, in jsval attributeValue); 84 }; 85 86 [scriptable, builtinclass, uuid(6153f07b-2260-495b-9899-9699d9fe323e)] 87 interface nsIAccessibleMacEvent : nsISupports 88 { 89 readonly attribute nsIAccessibleMacInterface macIface; 90 91 [implicit_jscontext] 92 readonly attribute jsval data; 93 };