1*34dd1e25SAndrew Rist/************************************************************** 2*34dd1e25SAndrew Rist * 3*34dd1e25SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*34dd1e25SAndrew Rist * or more contributor license agreements. See the NOTICE file 5*34dd1e25SAndrew Rist * distributed with this work for additional information 6*34dd1e25SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*34dd1e25SAndrew Rist * to you under the Apache License, Version 2.0 (the 8*34dd1e25SAndrew Rist * "License"); you may not use this file except in compliance 9*34dd1e25SAndrew Rist * with the License. You may obtain a copy of the License at 10*34dd1e25SAndrew Rist * 11*34dd1e25SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*34dd1e25SAndrew Rist * 13*34dd1e25SAndrew Rist * Unless required by applicable law or agreed to in writing, 14*34dd1e25SAndrew Rist * software distributed under the License is distributed on an 15*34dd1e25SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*34dd1e25SAndrew Rist * KIND, either express or implied. See the License for the 17*34dd1e25SAndrew Rist * specific language governing permissions and limitations 18*34dd1e25SAndrew Rist * under the License. 19*34dd1e25SAndrew Rist * 20*34dd1e25SAndrew Rist *************************************************************/ 21*34dd1e25SAndrew Rist 22*34dd1e25SAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir// so_activex.idl : IDL source for so_activex.dll 25cdf0e10cSrcweir// 26cdf0e10cSrcweir 27cdf0e10cSrcweir// This file will be processed by the MIDL tool to 28cdf0e10cSrcweir// produce the type library (so_activex.tlb) and marshalling code. 29cdf0e10cSrcweir 30cdf0e10cSrcweirimport "oaidl.idl"; 31cdf0e10cSrcweirimport "ocidl.idl"; 32cdf0e10cSrcweir#include "olectl.h" 33cdf0e10cSrcweir 34cdf0e10cSrcweir 35cdf0e10cSrcweir [ 36cdf0e10cSrcweir object, 37cdf0e10cSrcweir uuid(DACF7E3F-626B-4BF9-964B-F4910C843711), 38cdf0e10cSrcweir dual, 39cdf0e10cSrcweir helpstring("ISOActiveX Interface"), 40cdf0e10cSrcweir pointer_default(unique) 41cdf0e10cSrcweir ] 42cdf0e10cSrcweir interface ISOActiveX : IDispatch 43cdf0e10cSrcweir { 44cdf0e10cSrcweir }; 45cdf0e10cSrcweir 46cdf0e10cSrcweir[ 47cdf0e10cSrcweir object, 48cdf0e10cSrcweir uuid(BF5D10F3-8A10-4A0B-B150-2B6AA2D7E118), 49cdf0e10cSrcweir dual, 50cdf0e10cSrcweir helpstring("ISOComWindowPeer Interface"), 51cdf0e10cSrcweir pointer_default(unique) 52cdf0e10cSrcweir] 53cdf0e10cSrcweirinterface ISOComWindowPeer : IDispatch 54cdf0e10cSrcweir{ 55cdf0e10cSrcweir [id(1), helpstring("method getWindowHandle")] 56cdf0e10cSrcweir HRESULT getWindowHandle( [in] SAFEARRAY(VARIANT) procId, 57cdf0e10cSrcweir [in] short s, 58cdf0e10cSrcweir [out,retval] long* ret); 59cdf0e10cSrcweir 60cdf0e10cSrcweir [id(2), helpstring("method getToolkit")] 61cdf0e10cSrcweir HRESULT getToolkit( [out,retval] IDispatch** retVal ); 62cdf0e10cSrcweir 63cdf0e10cSrcweir [id(3), helpstring("method setPointer")] 64cdf0e10cSrcweir HRESULT setPointer( [in] IDispatch* xPointer ); 65cdf0e10cSrcweir 66cdf0e10cSrcweir [id(4), helpstring("method setBackground")] 67cdf0e10cSrcweir HRESULT setBackground( [in] int nColor ); 68cdf0e10cSrcweir 69cdf0e10cSrcweir [id(5), helpstring("method invalidate")] 70cdf0e10cSrcweir HRESULT invalidate( [in] short ); 71cdf0e10cSrcweir 72cdf0e10cSrcweir [id(6), helpstring("method invalidateRect")] 73cdf0e10cSrcweir HRESULT invalidateRect( [in] IDispatch* aRect, [in] short nFlags ); 74cdf0e10cSrcweir 75cdf0e10cSrcweir [id(7), helpstring("method dispose")] 76cdf0e10cSrcweir HRESULT dispose(); 77cdf0e10cSrcweir 78cdf0e10cSrcweir [id(8), helpstring("method addEventListener")] 79cdf0e10cSrcweir HRESULT addEventListener( [in] IDispatch* xListener ); 80cdf0e10cSrcweir 81cdf0e10cSrcweir [id(9), helpstring("method removeEventListener")] 82cdf0e10cSrcweir HRESULT removeEventListener( [in] IDispatch* xListener ); 83cdf0e10cSrcweir 84cdf0e10cSrcweir [propget, id(10), helpstring("property_implementedInterfaces")] 85cdf0e10cSrcweir HRESULT Bridge_implementedInterfaces([out, retval] SAFEARRAY(BSTR) *pVal); 86cdf0e10cSrcweir}; 87cdf0e10cSrcweir 88cdf0e10cSrcweir[ 89cdf0e10cSrcweir uuid(61FA3F13-8061-4796-B055-3697ED28CB38), 90cdf0e10cSrcweir version(1.0), 91cdf0e10cSrcweir helpstring("so_activex 1.0 Type Library") 92cdf0e10cSrcweir] 93cdf0e10cSrcweirlibrary SO_ACTIVEXLib 94cdf0e10cSrcweir{ 95cdf0e10cSrcweir importlib("stdole32.tlb"); 96cdf0e10cSrcweir importlib("stdole2.tlb"); 97cdf0e10cSrcweir 98cdf0e10cSrcweir [ 99cdf0e10cSrcweir uuid(7F760565-5719-4F04-BA86-112C474B10EA), 100cdf0e10cSrcweir helpstring("_ISOActiveXEvents Interface") 101cdf0e10cSrcweir ] 102cdf0e10cSrcweir dispinterface _ISOActiveXEvents 103cdf0e10cSrcweir { 104cdf0e10cSrcweir properties: 105cdf0e10cSrcweir methods: 106cdf0e10cSrcweir }; 107cdf0e10cSrcweir 108cdf0e10cSrcweir [ 109cdf0e10cSrcweir uuid(67F2A879-82D5-4A6D-8CC5-FFB3C114B69D), 110cdf0e10cSrcweir helpstring("SOActiveX Class") 111cdf0e10cSrcweir ] 112cdf0e10cSrcweir coclass SOActiveX 113cdf0e10cSrcweir { 114cdf0e10cSrcweir [default] interface ISOActiveX; 115cdf0e10cSrcweir [default, source] dispinterface _ISOActiveXEvents; 116cdf0e10cSrcweir }; 117cdf0e10cSrcweir 118cdf0e10cSrcweir [ 119cdf0e10cSrcweir uuid(EE51BD3E-8BB6-4FB8-B319-F65B1BE3B21D), 120cdf0e10cSrcweir helpstring("SOComWindowPeer Class") 121cdf0e10cSrcweir ] 122cdf0e10cSrcweir coclass SOComWindowPeer 123cdf0e10cSrcweir { 124cdf0e10cSrcweir [default] interface ISOComWindowPeer; 125cdf0e10cSrcweir }; 126cdf0e10cSrcweir}; 127cdf0e10cSrcweir 128