wine/dlls/uiautomationcore/uia_classes.idl
Connor McAdams 21e6fd5076 uiautomationcore: Implement UiaLookupId for AutomationIdentifierType_ControlType GUIDs.
Signed-off-by: Connor McAdams <cmcadams@codeweavers.com>
2023-02-22 18:05:40 +01:00

85 lines
2.3 KiB
Plaintext

/*
* Copyright 2022 Connor McAdams for CodeWeavers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
#pragma makedep regtypelib
import "oaidl.idl";
struct uia_prop_info {
const GUID *guid;
int prop_id;
int prop_type;
int type;
int pattern_id;
};
struct uia_event_info {
const GUID *guid;
int event_id;
int event_arg_type;
};
struct uia_pattern_info {
const GUID *guid;
int pattern_id;
const GUID *pattern_iid;
};
struct uia_control_type_info {
const GUID *guid;
int control_type_id;
};
[
version(1.0),
uuid(8a9ca8eb-856b-43d9-abd7-4a590054064f),
id(1),
]
library UIA_wine_private
{
importlib("stdole2.tlb");
[
object,
uuid(57865755-6c05-4522-98df-4ca658b768ef),
pointer_default(unique),
oleautomation,
]
interface IWineUiaProvider : IUnknown
{
HRESULT get_prop_val([in]const struct uia_prop_info *prop_info, [out, retval]VARIANT *ret_val);
HRESULT get_prov_opts([out, retval]int *out_opts);
HRESULT has_parent([out, retval]BOOL *out_val);
HRESULT navigate([in]int nav_dir, [out, retval]VARIANT *ret_val);
}
[
object,
uuid(bccb6799-d831-4057-bd50-6425823ff1a3),
pointer_default(unique),
oleautomation,
]
interface IWineUiaNode : IUnknown
{
HRESULT get_provider([in]int idx, [out, retval]IWineUiaProvider **out_prov);
HRESULT get_prop_val([in]const GUID *prop_guid, [out, retval]VARIANT *ret_val);
HRESULT disconnect();
HRESULT get_hwnd([out, retval]ULONG *out_hwnd);
}
}