annotate src/if_ole.idl @ 33337:19b4f85c2649 v9.0.1932

patch 9.0.1932: Vim9: error when using null object constructor Commit: https://github.com/vim/vim/commit/7398f367d5125eedfb4058c63a5d167fe8601e3d Author: Yegappan Lakshmanan <yegappan@yahoo.com> Date: Sun Sep 24 23:09:10 2023 +0200 patch 9.0.1932: Vim9: error when using null object constructor Problem: Vim9: error when using null object constructor Solution: Check for a null object only when calling an object method closes: #13154 closes: #13163 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
author Christian Brabandt <cb@256bit.org>
date Sun, 24 Sep 2023 23:15:07 +0200
parents 9fbb40a1228a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 // if_ole.idl - IDL source for the Vim OLE Automation interface
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 //
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3 // Processed by the IDL compiler (MIDL) to generate the type library
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
4 // (Vim.tlb).
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 //
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6 // Command line:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7 // MIDL /proxy nul /iid iid_ole.c /h if_ole.h /tlb vim.tlb if_ole.idl
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 [
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 object,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11 uuid(0F0BFAE2-4C90-11d1-82D7-0004AC368519), // IID_IVim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 helpstring("IVim"),
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 pointer_default(unique),
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 dual,
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 oleautomation
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 ]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 interface IVim : IDispatch
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 import "oaidl.idl";
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 HRESULT SendKeys([in]BSTR keys);
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 HRESULT Eval([in]BSTR expr, [out, retval]BSTR* result);
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 HRESULT SetForeground(void);
1569
9fbb40a1228a updated for version 7.1-282
vimboss
parents: 7
diff changeset
23 HRESULT GetHwnd([out, retval]UINT_PTR* result);
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 };
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 // Component and type library definitions
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 [
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 uuid(0F0BFAE0-4C90-11d1-82D7-0004AC368519), // LIBID_Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29 helpstring("Vim OLE Interface 1.1 Type Library"),
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 version(1.1)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 ]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 library Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33 {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 importlib("stdole32.tlb");
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 // Component
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 [
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38 uuid(0F0BFAE1-4C90-11d1-82D7-0004AC368519), // CLSID_Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 helpstring("Vim OLE Interface")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 ]
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41 coclass Vim
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42 {
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43 [default] interface IVim;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44 };
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45 };