13a700b0aSSteve Yin/**************************************************************
23a700b0aSSteve Yin *
33a700b0aSSteve Yin * Licensed to the Apache Software Foundation (ASF) under one
43a700b0aSSteve Yin * or more contributor license agreements.  See the NOTICE file
53a700b0aSSteve Yin * distributed with this work for additional information
63a700b0aSSteve Yin * regarding copyright ownership.  The ASF licenses this file
73a700b0aSSteve Yin * to you under the Apache License, Version 2.0 (the
83a700b0aSSteve Yin * "License"); you may not use this file except in compliance
93a700b0aSSteve Yin * with the License.  You may obtain a copy of the License at
103a700b0aSSteve Yin *
113a700b0aSSteve Yin *   http://www.apache.org/licenses/LICENSE-2.0
123a700b0aSSteve Yin *
133a700b0aSSteve Yin * Unless required by applicable law or agreed to in writing,
143a700b0aSSteve Yin * software distributed under the License is distributed on an
153a700b0aSSteve Yin * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
163a700b0aSSteve Yin * KIND, either express or implied.  See the License for the
173a700b0aSSteve Yin * specific language governing permissions and limitations
183a700b0aSSteve Yin * under the License.
193a700b0aSSteve Yin *
203a700b0aSSteve Yin *************************************************************/
215fdc4257SSteve Yin
225fdc4257SSteve Yinimport "oaidl.idl";
235fdc4257SSteve Yinimport "ocidl.idl";
24b0a7a3cfSSteve Yin
25b0a7a3cfSSteve Yinimport "ia2_api_all.idl";
265fdc4257SSteve Yinimport "defines.idl";
275fdc4257SSteve Yin
285fdc4257SSteve Yin	[
295fdc4257SSteve Yin		object,
305fdc4257SSteve Yin		uuid(D00F5EB7-588A-487F-A6F6-0B5D7D1815AA),
315fdc4257SSteve Yin		dual,
325fdc4257SSteve Yin		helpstring("IMAccessible Interface"),
335fdc4257SSteve Yin		pointer_default(unique)
345fdc4257SSteve Yin	]
355fdc4257SSteve Yin	interface IMAccessible : IAccessible2
365fdc4257SSteve Yin	{
375fdc4257SSteve Yin		[id(1), helpstring("method Put_XAccName")] HRESULT Put_XAccName(const OLECHAR* pszName);
385fdc4257SSteve Yin		[id(2), helpstring("method Put_XAccRole")] HRESULT Put_XAccRole(unsigned short pRole);
395fdc4257SSteve Yin		[id(3), helpstring("method DecreaseState")] HRESULT DecreaseState(DWORD pXSate);
405fdc4257SSteve Yin		[id(4), helpstring("method IncreaseState")] HRESULT IncreaseState(DWORD pXSate);
415fdc4257SSteve Yin		[id(5), helpstring("method Put_XDescription")] HRESULT Put_XAccDescription(const OLECHAR* pszDescription);
425fdc4257SSteve Yin		[id(6), helpstring("method Put_XAccValue")] HRESULT Put_XAccValue(const OLECHAR* pszAccValue);
435fdc4257SSteve Yin		[id(7), helpstring("method SetState")] HRESULT SetState(DWORD pXSate);
445fdc4257SSteve Yin		[id(8), helpstring("method Put_XAccLocation")] HRESULT Put_XAccLocation(const Location sLocation);
455fdc4257SSteve Yin		[id(9), helpstring("method Put_XAccFocus")] HRESULT Put_XAccFocus(long dChildID);
465fdc4257SSteve Yin		[id(10), helpstring("method Put_XAccParent")] HRESULT Put_XAccParent(IMAccessible* pIParent);
475fdc4257SSteve Yin		[id(13), helpstring("method Put_XAccWindowHandle")] HRESULT Put_XAccWindowHandle(HWND hwnd);
485fdc4257SSteve Yin		[id(14), helpstring("method Put_XAccChildID")] HRESULT Put_XAccChildID(long dChildID);
495fdc4257SSteve Yin		[id(19), helpstring("method SetXAccessible")] HRESULT SetXAccessible( long XAccessible);
505fdc4257SSteve Yin		[id(20), helpstring("method GetUNOInterface")] HRESULT GetUNOInterface(long* UNOInterface);
515fdc4257SSteve Yin		[id(23), helpstring("method SetDefaultAction")] HRESULT SetDefaultAction(long pAction);
525fdc4257SSteve Yin		[id(24), helpstring("method Put_ActionDescription")] HRESULT Put_ActionDescription( const OLECHAR* szAction);
535fdc4257SSteve Yin		[id(25), helpstring("method Put_XAccAgent")] HRESULT Put_XAccAgent(long pAgent);
545fdc4257SSteve Yin		[id(26), helpstring("method NotifyDestroy")] HRESULT NotifyDestroy(BOOL isDestroy);
555fdc4257SSteve Yin		[id(30), helpstring("method Get_XAccChildID")] HRESULT Get_XAccChildID([out,retval] long* childID);
565fdc4257SSteve Yin	};
575fdc4257SSteve Yin	[
585fdc4257SSteve Yin		object,
595fdc4257SSteve Yin		uuid(951299EE-1841-4249-9E07-812C0739E489),
605fdc4257SSteve Yin		dual,
615fdc4257SSteve Yin		helpstring("IEnumVariant Interface"),
625fdc4257SSteve Yin		pointer_default(unique)
635fdc4257SSteve Yin	]
645fdc4257SSteve Yin	interface IEnumVariant : IEnumVARIANT
655fdc4257SSteve Yin	{
665fdc4257SSteve Yin		[id(1), helpstring("method ClearEnumeration")] HRESULT ClearEnumeration();
675fdc4257SSteve Yin		[id(2), helpstring("method PutSelection")] HRESULT PutSelection(long pXSeletion);
685fdc4257SSteve Yin	};
695fdc4257SSteve Yin	[
705fdc4257SSteve Yin		object,
715fdc4257SSteve Yin		uuid(6641185C-E099-4C45-B753-3FBC0EE40646),
725fdc4257SSteve Yin		dual,
735fdc4257SSteve Yin		helpstring("IUNOXWrapper Interface"),
745fdc4257SSteve Yin		pointer_default(unique)
755fdc4257SSteve Yin	]
765fdc4257SSteve Yin	interface IUNOXWrapper : IUnknown
775fdc4257SSteve Yin	{
785fdc4257SSteve Yin		[id(1), helpstring("method put_XInterface")] HRESULT put_XInterface(long pXInterface);
795fdc4257SSteve Yin		[id(2), helpstring("method put_XSubInterface")] HRESULT put_XSubInterface(long pXSubInterface);
805fdc4257SSteve Yin		[id(3), helpstring("method get_XInterface")] HRESULT get_XInterface([out,retval]long* pXInterface);
815fdc4257SSteve Yin		[id(4), helpstring("method get_XSubInterface")] HRESULT get_XSubInterface([out,retval]long* pXSubInterface);
825fdc4257SSteve Yin	};
835fdc4257SSteve Yin
845fdc4257SSteve Yin[
855fdc4257SSteve Yin	uuid(19ECB1B0-9376-4FF9-B580-223FC9C200B8),
865fdc4257SSteve Yin	version(1.0),
875fdc4257SSteve Yin	helpstring("UAccCOM 1.0 Type Library")
885fdc4257SSteve Yin]
895fdc4257SSteve Yinlibrary UACCCOMLib
905fdc4257SSteve Yin{
915fdc4257SSteve Yin	importlib("stdole32.tlb");
925fdc4257SSteve Yin	importlib("stdole2.tlb");
93*9b25e96fSSteve Yin	importlib("oleacc.dll");
945fdc4257SSteve Yin
955fdc4257SSteve Yin	[
965fdc4257SSteve Yin		uuid(CF8DF8BA-44FE-4B10-BD2E-8C8CB322485F),
975fdc4257SSteve Yin		helpstring("MAccessible Class")
985fdc4257SSteve Yin	]
995fdc4257SSteve Yin	coclass MAccessible
1005fdc4257SSteve Yin	{
1015fdc4257SSteve Yin		[default] interface IMAccessible;
1025fdc4257SSteve Yin	};
1035fdc4257SSteve Yin	[
1045fdc4257SSteve Yin		uuid(152884E0-268B-4481-9AE7-1B372D3AA97F),
1055fdc4257SSteve Yin		helpstring("EnumVariant Class")
1065fdc4257SSteve Yin	]
1075fdc4257SSteve Yin	coclass EnumVariant
1085fdc4257SSteve Yin	{
1095fdc4257SSteve Yin		[default] interface IEnumVariant;
1105fdc4257SSteve Yin	};
1115fdc4257SSteve Yin	[
1125fdc4257SSteve Yin		uuid(AA360FB0-BC98-41C1-A885-BB921F5ED601),
1135fdc4257SSteve Yin		helpstring("UNOXWrapper Class")
1145fdc4257SSteve Yin	]
1155fdc4257SSteve Yin	coclass UNOXWrapper
1165fdc4257SSteve Yin	{
1175fdc4257SSteve Yin		[default] interface IUNOXWrapper;
1185fdc4257SSteve Yin	};
1195fdc4257SSteve Yin
1205fdc4257SSteve Yin	[
1215fdc4257SSteve Yin		uuid(9FD9BA47-70AF-4160-99F1-526F2B9F111B),
1225fdc4257SSteve Yin		helpstring("AccComponent Class")
1235fdc4257SSteve Yin	]
1245fdc4257SSteve Yin	coclass AccComponent
1255fdc4257SSteve Yin	{
1265fdc4257SSteve Yin		[default] interface IAccessibleComponent;
1275fdc4257SSteve Yin	};
1285fdc4257SSteve Yin
1295fdc4257SSteve Yin    [
1305fdc4257SSteve Yin		uuid(8745CF0C-3104-4BAE-B7D0-D7B1717C006E),
1315fdc4257SSteve Yin		helpstring("AccRelation Class")
1325fdc4257SSteve Yin	]
1335fdc4257SSteve Yin	coclass AccRelation
1345fdc4257SSteve Yin	{
1355fdc4257SSteve Yin		[default] interface IAccessibleRelation;
1365fdc4257SSteve Yin	};
1375fdc4257SSteve Yin	[
1385fdc4257SSteve Yin		uuid(AA49F20E-BB4E-400D-A5B0-6F5B7B770227),
1395fdc4257SSteve Yin		helpstring("AccAction Class")
1405fdc4257SSteve Yin	]
1415fdc4257SSteve Yin	coclass AccAction
1425fdc4257SSteve Yin	{
1435fdc4257SSteve Yin		[default] interface IAccessibleAction;
1445fdc4257SSteve Yin	};
1455fdc4257SSteve Yin
1465fdc4257SSteve Yin	[
1475fdc4257SSteve Yin		uuid(6D8AB08B-CCE9-471E-8A41-35773D5263F5),
1485fdc4257SSteve Yin		helpstring("AccText Class")
1495fdc4257SSteve Yin	]
1505fdc4257SSteve Yin	coclass AccText
1515fdc4257SSteve Yin	{
1525fdc4257SSteve Yin		[default] interface IAccessibleText;
1535fdc4257SSteve Yin	};
1545fdc4257SSteve Yin
1555fdc4257SSteve Yin	[
1565fdc4257SSteve Yin		uuid(79CE1450-1F61-48E2-BF76-C07BD10105E2),
1575fdc4257SSteve Yin		helpstring("AccEditableText Class")
1585fdc4257SSteve Yin	]
1595fdc4257SSteve Yin	coclass AccEditableText
1605fdc4257SSteve Yin	{
1615fdc4257SSteve Yin		[default] interface IAccessibleEditableText;
1625fdc4257SSteve Yin	};
1635fdc4257SSteve Yin
1645fdc4257SSteve Yin	[
1655fdc4257SSteve Yin		uuid(CC55D71B-1828-4EE0-89E2-C3749CF9C9AB),
1665fdc4257SSteve Yin		helpstring("AccHypertext Class")
1675fdc4257SSteve Yin	]
1685fdc4257SSteve Yin	coclass AccHypertext
1695fdc4257SSteve Yin	{
1705fdc4257SSteve Yin		[default] interface IAccessibletext;
1715fdc4257SSteve Yin	};
1725fdc4257SSteve Yin
1735fdc4257SSteve Yin
1745fdc4257SSteve Yin	[
1755fdc4257SSteve Yin		uuid(73A45800-7A62-432C-A1A6-BF8852994331),
1765fdc4257SSteve Yin		helpstring("AccImage Class")
1775fdc4257SSteve Yin	]
1785fdc4257SSteve Yin	coclass AccImage
1795fdc4257SSteve Yin	{
1805fdc4257SSteve Yin		[default] interface IAccessibleImage;
1815fdc4257SSteve Yin	};
1825fdc4257SSteve Yin
1835fdc4257SSteve Yin	[
1845fdc4257SSteve Yin		uuid(730A561B-1AF6-49E1-9C04-9A2F48CD8512),
1855fdc4257SSteve Yin		helpstring("AccValue Class")
1865fdc4257SSteve Yin	]
1875fdc4257SSteve Yin	coclass AccValue
1885fdc4257SSteve Yin	{
1895fdc4257SSteve Yin		[default] interface IAccessibleValue;
1905fdc4257SSteve Yin	};
1915fdc4257SSteve Yin	[
1925fdc4257SSteve Yin		uuid(92BAA62D-535A-4EAB-9ABB-BFA60B7A6DB6),
1935fdc4257SSteve Yin		helpstring("AccTable Class")
1945fdc4257SSteve Yin	]
1955fdc4257SSteve Yin	coclass AccTable
1965fdc4257SSteve Yin	{
1975fdc4257SSteve Yin		[default] interface IAccessibleTable;
1985fdc4257SSteve Yin	};
1995fdc4257SSteve Yin
2005fdc4257SSteve Yin	[
2015fdc4257SSteve Yin		uuid(519A64CD-F6A6-4793-BE50-4E36C4C593EF),
2025fdc4257SSteve Yin		helpstring("AccHyperLink Class")
2035fdc4257SSteve Yin	]
2045fdc4257SSteve Yin	coclass AccHyperLink
2055fdc4257SSteve Yin	{
2065fdc4257SSteve Yin		[default] interface IAccessibleAction;
2075fdc4257SSteve Yin	};
2085fdc4257SSteve Yin
2095fdc4257SSteve Yin};
210