]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/ole/oleutils.h
fixes to wxFontDialog after recent changes
[wxWidgets.git] / include / wx / msw / ole / oleutils.h
index 9809d398e0003e31755f98f391ae9e99c17b39b2..737939078a26c5002c4e281dbbd3375e723e8aec 100644 (file)
@@ -17,7 +17,9 @@
 #endif
 
 #include "wx/defs.h"
-
+#if wxUSE_NORLANDER_HEADERS
+#include <ole2.h>
+#endif
 // ============================================================================
 // General purpose functions and macros
 // ============================================================================
@@ -83,9 +85,9 @@ bool IsIidFromList(REFIID riid, const IID *aIids[], size_t nCount);
 #define   IMPLEMENT_IUNKNOWN_METHODS(classname)                               \
   STDMETHODIMP classname::QueryInterface(REFIID riid, void **ppv)             \
   {                                                                           \
-    wxLogQueryInterface(#classname, riid);                                    \
+    wxLogQueryInterface(_T(#classname), riid);                                \
                                                                               \
-    if ( IsIidFromList(riid, ms_aIids, WXSIZEOF(ms_aIids)) ) {                  \
+    if ( IsIidFromList(riid, ms_aIids, WXSIZEOF(ms_aIids)) ) {                \
       *ppv = this;                                                            \
       AddRef();                                                               \
                                                                               \
@@ -94,20 +96,20 @@ bool IsIidFromList(REFIID riid, const IID *aIids[], size_t nCount);
     else {                                                                    \
       *ppv = NULL;                                                            \
                                                                               \
-      return (HRESULT) E_NOINTERFACE;                                                   \
+      return (HRESULT) E_NOINTERFACE;                                         \
     }                                                                         \
   }                                                                           \
                                                                               \
   STDMETHODIMP_(ULONG) classname::AddRef()                                    \
   {                                                                           \
-    wxLogAddRef(#classname, m_cRef);                                          \
+    wxLogAddRef(_T(#classname), m_cRef);                                      \
                                                                               \
     return ++m_cRef;                                                          \
   }                                                                           \
                                                                               \
   STDMETHODIMP_(ULONG) classname::Release()                                   \
   {                                                                           \
-    wxLogRelease(#classname, m_cRef);                                         \
+    wxLogRelease(_T(#classname), m_cRef);                                     \
                                                                               \
     if ( --m_cRef == 0 ) {                                                    \
       delete this;                                                            \
@@ -124,17 +126,17 @@ bool IsIidFromList(REFIID riid, const IID *aIids[], size_t nCount);
 // VZ: I don't know it's not done for compilers other than VC++ but I leave it
 //     as is. Please note, though, that tracing OLE interface calls may be
 //     incredibly useful when debugging OLE programs.
-#if defined(__WXDEBUG__) && defined(__VISUALC__) && (__VISUALC__ >= 1000)
+#if defined(__WXDEBUG__) && ( ( defined(__VISUALC__) && (__VISUALC__ >= 1000) ) || defined(__MWERKS__) )
 // ----------------------------------------------------------------------------
 // All OLE specific log functions have DebugTrace level (as LogTrace)
 // ----------------------------------------------------------------------------
 
 // tries to translate riid into a symbolic name, if possible
-void wxLogQueryInterface(const char *szInterface, REFIID riid);
+void wxLogQueryInterface(const wxChar *szInterface, REFIID riid);
 
 // these functions print out the new value of reference counter
-void wxLogAddRef (const char *szInterface, ULONG cRef);
-void wxLogRelease(const char *szInterface, ULONG cRef);
+void wxLogAddRef (const wxChar *szInterface, ULONG cRef);
+void wxLogRelease(const wxChar *szInterface, ULONG cRef);
 
 #else   //!WXDEBUG
   #define   wxLogQueryInterface(szInterface, riid)