bump product version to 6.3.0.0.beta1
[LibreOffice.git] / extensions / test / ole / unoTocomCalls / XCallback_Impl / XCallback_Impl.idl
blobde56aac457026ca0138b9c674b6cd26d91c6180c
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 // XCallback_Impl.idl : IDL source for XCallback_Impl.dll
22 // This file will be processed by the MIDL tool to
23 // produce the type library (XCallback_Impl.tlb) and marshalling code.
25 import "oaidl.idl";
26 import "ocidl.idl";
28 object,
29 uuid(180FF55F-6F5C-11D4-8330-005004526AB4),
30 dual,
31 helpstring("ICallback Interface"),
32 pointer_default(unique)
34 interface ICallback : IDispatch
36 [id(1), helpstring("method func1")] HRESULT func1();
37 [id(2), helpstring("method returnInterface")] HRESULT returnInterface([out, retval] IDispatch** ppdisp);
38 [id(3), helpstring("method outInterface")] HRESULT outInterface([out] IDispatch** ppdisp);
39 [id(4), helpstring("method outValuesMixed")] HRESULT outValuesMixed([in] long val, [out] long* pval, [in] BSTR string);
40 [id(5), helpstring("method outValuesAll")] HRESULT outValuesAll([out] IDispatch** ppdisp, [out] IDispatch** ppSimpleStruct, [out] long* aSimpleEnum,
41 [out] SAFEARRAY( VARIANT)* outSeq,
42 [out] VARIANT* varAny,
43 [out] VARIANT_BOOL * aBool,
44 [out] short* aChar,
45 [out] BSTR* aString ,
46 [out] float* aFloat,
47 [out] double* aDouble,
48 [out] unsigned char* aByte,
49 [out] short* aShort,
50 [out]long* aLong);
51 // );
52 [id(6), helpstring("method outStruct")] HRESULT outStruct([out] IDispatch** outStruct);
53 [id(7), helpstring("method outEnum")] HRESULT outEnum([out] long* outEnum);
54 [id(8), helpstring("method outSeqAny")] HRESULT outSeqAny([out] SAFEARRAY( VARIANT)* outSeq);
55 [id(9), helpstring("method outAny")] HRESULT outAny([out] VARIANT* outAny);
56 [id(10), helpstring("method outBool")] HRESULT outBool([out]VARIANT_BOOL* outBool);
57 [id(11), helpstring("method outChar")] HRESULT outChar([out] short* outChar);
58 [id(12), helpstring("method outString")] HRESULT outString([out] BSTR * outString);
59 [id(13), helpstring("method outFloat")] HRESULT outFloat([out] float* outFloat);
60 [id(14), helpstring("method outDouble")] HRESULT outDouble([out] double* outDouble);
61 [id(16), helpstring("method outShort")] HRESULT outShort([out] short *outShort);
62 [id(17), helpstring("method outLong")] HRESULT outLong([out] long* outLong);
63 [id(20), helpstring("method outByte")] HRESULT outByte([out] unsigned char* outByte);
64 [id(21), helpstring("method inoutInterface")] HRESULT inoutInterface([in,out] IDispatch** ppdisp);
65 [id(22), helpstring("method inoutStruct")] HRESULT inoutStruct([in,out] IDispatch** inoutVal);
66 [id(23), helpstring("method inoutEnum")] HRESULT inoutEnum([in,out] long * inoutVal);
67 [id(24), helpstring("method inoutSeqAny")] HRESULT inoutSeqAny([in,out] SAFEARRAY(VARIANT)* pArray);
68 [id(25), helpstring("method inoutAny")] HRESULT inoutAny([in,out] VARIANT* inoutVal);
69 [id(26), helpstring("method inoutBool")] HRESULT inoutBool([in,out] VARIANT_BOOL * inoutVal);
70 [id(27), helpstring("method inoutChar")] HRESULT inoutChar([in,out] short* inoutVal);
71 [id(28), helpstring("method inoutString")] HRESULT inoutString([in,out] BSTR *inoutVal);
72 [id(29), helpstring("method inoutFloat")] HRESULT inoutFloat([in,out] float* inoutVal);
73 [id(30), helpstring("method inoutDouble")] HRESULT inoutDouble([in,out] double* inoutVal);
74 [id(31), helpstring("method inoutByte")] HRESULT inoutByte([in,out] unsigned char* inoutVal);
75 [id(32), helpstring("method inoutShort")] HRESULT inoutShort([in,out] short* inoutVal);
76 [id(33), helpstring("method inoutLong")] HRESULT inoutLong([in,out] long* inoutVal);
77 [id(34), helpstring("method inoutValueAll")] HRESULT inoutValuesAll(
78 [in,out] IDispatch** aXSimple,
79 [in,out] IDispatch** aStruct,
80 [in,out] long* aEnum,
81 [in,out] SAFEARRAY( VARIANT)* aSeq,
82 [in,out] VARIANT* aAny,
83 [in,out] VARIANT_BOOL* aBool,
84 [in,out] short* aChar,
85 [in,out] BSTR* aString,
86 [in,out] float* aFloat,
87 [in,out] double* aDouble,
88 [in,out] unsigned char* aByte,
89 [in,out] short* aShort,
90 [in,out] long* aLong);
91 [id(35), helpstring("method inValues")] HRESULT inValues([in]short aChar, [in] long aLong, [in] BSTR aString);
92 [id(36), helpstring("method outSeqByte")] HRESULT outSeqByte([out] SAFEARRAY(unsigned char)* outVal);
93 [id(37), helpstring("method inSeqByte")] HRESULT inSeqByte([in] SAFEARRAY(VARIANT) val);
94 [id(38), helpstring("method inSeqXEventListener")] HRESULT inSeqXEventListener([in] SAFEARRAY(VARIANT) listener,
95 [in] SAFEARRAY(VARIANT) event);
99 object,
100 uuid(180FF564-6F5C-11D4-8330-005004526AB4),
101 dual,
102 helpstring("ISimple Interface"),
103 pointer_default(unique)
105 interface ISimple : IDispatch
107 [id(1), helpstring("method func")] HRESULT func( [in] BSTR message);
108 [id(2), helpstring("method func2")] HRESULT func2([in] BSTR message);
109 [id(3), helpstring("method func3")] HRESULT func3([in] BSTR message);
110 [propget, id(4), helpstring("property _implementedInterfaces")] HRESULT _implementedInterfaces([out, retval] SAFEARRAY(BSTR) *pVal);
116 uuid(180FF553-6F5C-11D4-8330-005004526AB4),
117 version(1.0),
118 helpstring("XCallback_Impl 1.0 Type Library")
120 library XCALLBACK_IMPLLib
122 importlib("stdole32.tlb");
123 importlib("stdole2.tlb");
126 uuid(180FF560-6F5C-11D4-8330-005004526AB4),
127 helpstring("Callback Class")
129 coclass Callback
131 [default] interface ICallback;
134 uuid(180FF565-6F5C-11D4-8330-005004526AB4),
135 helpstring("Simple Class")
137 coclass Simple
139 [default] interface ISimple;
144 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */