X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e755eb67b62b608174a4efbb13bdd9fbebfa29a1..2ec335db7806c058a02d022d2f75b4144ce69d2a:/include/wx/msw/ole/oleutils.h?ds=sidebyside diff --git a/include/wx/msw/ole/oleutils.h b/include/wx/msw/ole/oleutils.h index c9a6be1bd0..a9891f8fca 100644 --- a/include/wx/msw/ole/oleutils.h +++ b/include/wx/msw/ole/oleutils.h @@ -12,17 +12,16 @@ #ifndef _WX_OLEUTILS_H #define _WX_OLEUTILS_H -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "oleutils.h" -#endif - #include "wx/defs.h" #if wxUSE_OLE +// ole2.h includes windows.h, so include wrapwin.h first +#include "wx/msw/wrapwin.h" // get IUnknown, REFIID &c #include #include "wx/intl.h" +#include "wx/log.h" // ============================================================================ // General purpose functions and macros @@ -144,7 +143,7 @@ private: #define IMPLEMENT_IUNKNOWN_METHODS(classname) \ STDMETHODIMP classname::QueryInterface(REFIID riid, void **ppv) \ { \ - wxLogQueryInterface(_T(#classname), riid); \ + wxLogQueryInterface(wxT(#classname), riid); \ \ if ( IsIidFromList(riid, ms_aIids, WXSIZEOF(ms_aIids)) ) { \ *ppv = this; \ @@ -161,14 +160,14 @@ private: \ STDMETHODIMP_(ULONG) classname::AddRef() \ { \ - wxLogAddRef(_T(#classname), m_cRef); \ + wxLogAddRef(wxT(#classname), m_cRef); \ \ return ++m_cRef; \ } \ \ STDMETHODIMP_(ULONG) classname::Release() \ { \ - wxLogRelease(_T(#classname), m_cRef); \ + wxLogRelease(wxT(#classname), m_cRef); \ \ if ( --m_cRef == wxAutoULong(0) ) { \ delete this; \ @@ -205,41 +204,40 @@ void wxLogRelease(const wxChar *szInterface, ULONG cRef); // wrapper around BSTR type (by Vadim Zeitlin) -class WXDLLEXPORT wxBasicString +class WXDLLIMPEXP_CORE wxBasicString { public: // ctors & dtor - wxBasicString(const char *sz); wxBasicString(const wxString& str); + wxBasicString(const wxBasicString& bstr); ~wxBasicString(); - void Init(const char* sz); + wxBasicString& operator=(const wxBasicString& bstr); // accessors - // just get the string - operator BSTR() const { return m_wzBuf; } - // retrieve a copy of our string - caller must SysFreeString() it later! - BSTR Get() const { return SysAllocString(m_wzBuf); } + // just get the string + operator BSTR() const { return m_bstrBuf; } + // retrieve a copy of our string - caller must SysFreeString() it later! + BSTR Get() const { return SysAllocString(m_bstrBuf); } private: - // @@@ not implemented (but should be) - wxBasicString(const wxBasicString&); - wxBasicString& operator=(const wxBasicString&); - - OLECHAR *m_wzBuf; // actual string + // actual string + BSTR m_bstrBuf; }; +#if wxUSE_VARIANT // Convert variants -class WXDLLEXPORT wxVariant; +class WXDLLIMPEXP_FWD_BASE wxVariant; -bool wxConvertVariantToOle(const wxVariant& variant, VARIANTARG& oleVariant) ; -bool wxConvertOleToVariant(const VARIANTARG& oleVariant, wxVariant& variant) ; +WXDLLIMPEXP_CORE bool wxConvertVariantToOle(const wxVariant& variant, VARIANTARG& oleVariant); +WXDLLIMPEXP_CORE bool wxConvertOleToVariant(const VARIANTARG& oleVariant, wxVariant& variant); +#endif // wxUSE_VARIANT // Convert string to Unicode -BSTR wxConvertStringToOle(const wxString& str); +WXDLLIMPEXP_CORE BSTR wxConvertStringToOle(const wxString& str); // Convert string from BSTR to wxString -wxString wxConvertStringFromOle(BSTR bStr); +WXDLLIMPEXP_CORE wxString wxConvertStringFromOle(BSTR bStr); #else // !wxUSE_OLE @@ -253,4 +251,3 @@ inline void wxOleUninitialize() { } #endif // wxUSE_OLE/!wxUSE_OLE #endif //_WX_OLEUTILS_H -