1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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 #ifndef UNO_TYPE_WRAPPER_HXX
20 #define UNO_TYPE_WRAPPER_HXX
22 #include <wincrap.hxx>
24 #pragma warning (disable:4505)
25 // disable "unreferenced local function has been removed" globally
27 #include "comifaces.hxx"
29 /* creates an UnoTypWrapper and sets the Name property to the value
30 specified by sTypeName.
31 Returns true if the object could be created and initialized.
33 bool createUnoTypeWrapper(BSTR sTypeName
, VARIANT
* pVariant
);
34 bool createUnoTypeWrapper(const OUString
& sTypeName
, VARIANT
* pVar
);
37 public CComObjectRootEx
<CComMultiThreadModel
>,
38 public IUnoTypeWrapper
,
43 virtual ~UnoTypeWrapper();
45 BEGIN_COM_MAP(UnoTypeWrapper
)
46 COM_INTERFACE_ENTRY(IDispatch
)
47 COM_INTERFACE_ENTRY(IUnoTypeWrapper
)
50 // IDispatch -------------------------------------------
51 STDMETHOD( GetTypeInfoCount
)(UINT
*pctinfo
);
53 STDMETHOD( GetTypeInfo
)( UINT iTInfo
,
57 STDMETHOD( GetIDsOfNames
)( REFIID riid
,
63 STDMETHOD( Invoke
)( DISPID dispIdMember
,
67 DISPPARAMS
*pDispParams
,
69 EXCEPINFO
*pExcepInfo
,
71 // IUnoTypeWrapper --------------------------------------
72 STDMETHOD(put_Name
)(BSTR val
);
73 STDMETHOD(get_Name
)(BSTR
* pVal
);
80 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */