X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4708068cb62f59675e0f255bcfdaa23a54e06f0a..98af9c738332c9a24475ad19efbfabe2b152c429:/src/msw/ole/activex.cpp diff --git a/src/msw/ole/activex.cpp b/src/msw/ole/activex.cpp index 0463a8843a..bddc57e3a9 100644 --- a/src/msw/ole/activex.cpp +++ b/src/msw/ole/activex.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: msw/ole/activex.cpp +// Name: src/msw/ole/activex.cpp // Purpose: wxActiveXContainer implementation // Author: Ryan Norton , Lindsay Mathieson // Modified by: @@ -24,6 +24,7 @@ #endif #include "wx/dcclient.h" +#include "wx/math.h" #include "wx/msw/ole/activex.h" @@ -437,7 +438,9 @@ public: HRESULT STDMETHODCALLTYPE LockContainer(BOOL){return S_OK;} //********************IOleItemContainer*************************** HRESULT STDMETHODCALLTYPE - #ifdef _UNICODE + #if defined(__WXWINCE__) + GetObject + #elif defined(_UNICODE) GetObjectW #else GetObjectA @@ -741,7 +744,7 @@ static void PixelsToHimetric(SIZEL &sz) }; #define HIMETRIC_INCH 2540 -#define CONVERT(x, logpixels) MulDiv(HIMETRIC_INCH, (x), (logpixels)) +#define CONVERT(x, logpixels) wxMulDivInt32(HIMETRIC_INCH, (x), (logpixels)) sz.cx = CONVERT(sz.cx, logX); sz.cy = CONVERT(sz.cy, logY); @@ -799,7 +802,11 @@ void wxActiveXContainer::OnPaint(wxPaintEvent& WXUNUSED(event)) posRect.right = w; posRect.bottom = h; +#if defined(_WIN32_WCE) && _WIN32_WCE < 400 + ::InvalidateRect(m_oleObjectHWND, NULL, false); +#else ::RedrawWindow(m_oleObjectHWND, NULL, NULL, RDW_INTERNALPAINT); +#endif RECTL *prcBounds = (RECTL *) &posRect; m_viewObject->Draw(DVASPECT_CONTENT, -1, NULL, NULL, NULL, (HDC)dc.GetHDC(), prcBounds, NULL, NULL, 0);