]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/ole/oleutils.cpp
restore call to GetTabSize removed in r69880, it is needed to set x_extent
[wxWidgets.git] / src / msw / ole / oleutils.cpp
index 2b10b4ae04376c879d9a4d12254098aa85d7713a..fbfae3a5d9d15e03b579108036a5ed40f8ca12bb 100644 (file)
@@ -58,7 +58,7 @@
 // ============================================================================
 
 // return true if the iid is in the array
 // ============================================================================
 
 // return true if the iid is in the array
-bool IsIidFromList(REFIID riid, const IID *aIids[], size_t nCount)
+WXDLLEXPORT bool IsIidFromList(REFIID riid, const IID *aIids[], size_t nCount)
 {
   for ( size_t i = 0; i < nCount; i++ ) {
     if ( riid == *aIids[i] )
 {
   for ( size_t i = 0; i < nCount; i++ ) {
     if ( riid == *aIids[i] )
@@ -148,14 +148,11 @@ WXDLLEXPORT bool wxConvertVariantToOle(const wxVariant& variant, VARIANTARG& ole
         oleVariant.vt = VT_I4;
         oleVariant.lVal = variant.GetLong() ;
     }
         oleVariant.vt = VT_I4;
         oleVariant.lVal = variant.GetLong() ;
     }
-    // cVal not always present
-#ifndef __GNUWIN32__
     else if (type == wxT("char"))
     {
         oleVariant.vt=VT_I1;            // Signed Char
         oleVariant.cVal=variant.GetChar();
     }
     else if (type == wxT("char"))
     {
         oleVariant.vt=VT_I1;            // Signed Char
         oleVariant.cVal=variant.GetChar();
     }
-#endif
     else if (type == wxT("double"))
     {
         oleVariant.vt = VT_R8;
     else if (type == wxT("double"))
     {
         oleVariant.vt = VT_R8;
@@ -164,12 +161,7 @@ WXDLLEXPORT bool wxConvertVariantToOle(const wxVariant& variant, VARIANTARG& ole
     else if (type == wxT("bool"))
     {
         oleVariant.vt = VT_BOOL;
     else if (type == wxT("bool"))
     {
         oleVariant.vt = VT_BOOL;
-        // 'bool' required for VC++ 4 apparently
-#if (defined(__VISUALC__) && (__VISUALC__ <= 1000))
-        oleVariant.bool = variant.GetBool();
-#else
-        oleVariant.boolVal = variant.GetBool();
-#endif
+        oleVariant.boolVal = variant.GetBool() ? VARIANT_TRUE : VARIANT_FALSE;
     }
     else if (type == wxT("string"))
     {
     }
     else if (type == wxT("string"))
     {
@@ -370,6 +362,10 @@ wxConvertOleToVariant(const VARIANTARG& oleVariant, wxVariant& variant)
                 variant = oleVariant.boolVal != 0;
                 break;
 
                 variant = oleVariant.boolVal != 0;
                 break;
 
+            case VT_R4:
+                variant = oleVariant.fltVal;
+                break;
+
             case VT_R8:
                 variant = oleVariant.dblVal;
                 break;
             case VT_R8:
                 variant = oleVariant.dblVal;
                 break;
@@ -516,18 +512,18 @@ static wxString GetIidName(REFIID riid)
 #endif
 }
 
 #endif
 }
 
-void wxLogQueryInterface(const wxChar *szInterface, REFIID riid)
+WXDLLEXPORT void wxLogQueryInterface(const wxChar *szInterface, REFIID riid)
 {
   wxLogTrace(wxTRACE_OleCalls, wxT("%s::QueryInterface (iid = %s)"),
              szInterface, GetIidName(riid).c_str());
 }
 
 {
   wxLogTrace(wxTRACE_OleCalls, wxT("%s::QueryInterface (iid = %s)"),
              szInterface, GetIidName(riid).c_str());
 }
 
-void wxLogAddRef(const wxChar *szInterface, ULONG cRef)
+WXDLLEXPORT void wxLogAddRef(const wxChar *szInterface, ULONG cRef)
 {
   wxLogTrace(wxTRACE_OleCalls, wxT("After %s::AddRef: m_cRef = %d"), szInterface, cRef + 1);
 }
 
 {
   wxLogTrace(wxTRACE_OleCalls, wxT("After %s::AddRef: m_cRef = %d"), szInterface, cRef + 1);
 }
 
-void wxLogRelease(const wxChar *szInterface, ULONG cRef)
+WXDLLEXPORT void wxLogRelease(const wxChar *szInterface, ULONG cRef)
 {
   wxLogTrace(wxTRACE_OleCalls, wxT("After %s::Release: m_cRef = %d"), szInterface, cRef - 1);
 }
 {
   wxLogTrace(wxTRACE_OleCalls, wxT("After %s::Release: m_cRef = %d"), szInterface, cRef - 1);
 }