unsafe HRESULT IOleControlSite.TransformCoords(Point *pPtlHimetric, PointF *pPtfContainer, XFORMCOORDS dwFlags) { if (pPtlHimetric is null || pPtfContainer is null) { return(HRESULT.E_INVALIDARG); } HRESULT hr = SetupLogPixels(false); if (hr < 0) { return(hr); } if ((dwFlags & XFORMCOORDS.HIMETRICTOCONTAINER) != 0) { if ((dwFlags & XFORMCOORDS.SIZE) != 0) { pPtfContainer->X = (float)host.HM2Pix(pPtlHimetric->X, logPixelsX); pPtfContainer->Y = (float)host.HM2Pix(pPtlHimetric->Y, logPixelsY); } else if ((dwFlags & XFORMCOORDS.POSITION) != 0) { pPtfContainer->X = (float)host.HM2Pix(pPtlHimetric->X, logPixelsX); pPtfContainer->Y = (float)host.HM2Pix(pPtlHimetric->Y, logPixelsY); } else { Debug.WriteLineIf(AxHTraceSwitch.TraceVerbose, "\t dwFlags not supported: " + dwFlags); return(HRESULT.E_INVALIDARG); } } else if ((dwFlags & XFORMCOORDS.CONTAINERTOHIMETRIC) != 0) { if ((dwFlags & XFORMCOORDS.SIZE) != 0) { pPtlHimetric->X = host.Pix2HM((int)pPtfContainer->X, logPixelsX); pPtlHimetric->Y = host.Pix2HM((int)pPtfContainer->Y, logPixelsY); } else if ((dwFlags & XFORMCOORDS.POSITION) != 0) { pPtlHimetric->X = host.Pix2HM((int)pPtfContainer->X, logPixelsX); pPtlHimetric->Y = host.Pix2HM((int)pPtfContainer->Y, logPixelsY); } else { Debug.WriteLineIf(AxHTraceSwitch.TraceVerbose, "\t dwFlags not supported: " + dwFlags); return(HRESULT.E_INVALIDARG); } } else { Debug.WriteLineIf(AxHTraceSwitch.TraceVerbose, "\t dwFlags not supported: " + dwFlags); return(HRESULT.E_INVALIDARG); } return(HRESULT.S_OK); }
unsafe HRESULT IOleControlSite.TransformCoords(Point *pPtlHimetric, PointF *pPtfContainer, XFORMCOORDS dwFlags) { if (pPtlHimetric == null || pPtfContainer == null) { return(HRESULT.E_INVALIDARG); } if ((dwFlags & XFORMCOORDS.HIMETRICTOCONTAINER) != 0) { if ((dwFlags & XFORMCOORDS.SIZE) != 0) { pPtfContainer->X = (float)WebBrowserHelper.HM2Pix(pPtlHimetric->X, WebBrowserHelper.LogPixelsX); pPtfContainer->Y = (float)WebBrowserHelper.HM2Pix(pPtlHimetric->Y, WebBrowserHelper.LogPixelsY); } else if ((dwFlags & XFORMCOORDS.POSITION) != 0) { pPtfContainer->X = (float)WebBrowserHelper.HM2Pix(pPtlHimetric->X, WebBrowserHelper.LogPixelsX); pPtfContainer->Y = (float)WebBrowserHelper.HM2Pix(pPtlHimetric->Y, WebBrowserHelper.LogPixelsY); } else { return(HRESULT.E_INVALIDARG); } } else if ((dwFlags & XFORMCOORDS.CONTAINERTOHIMETRIC) != 0) { if ((dwFlags & XFORMCOORDS.SIZE) != 0) { pPtlHimetric->X = WebBrowserHelper.Pix2HM((int)pPtfContainer->X, WebBrowserHelper.LogPixelsX); pPtlHimetric->Y = WebBrowserHelper.Pix2HM((int)pPtfContainer->Y, WebBrowserHelper.LogPixelsY); } else if ((dwFlags & XFORMCOORDS.POSITION) != 0) { pPtlHimetric->X = WebBrowserHelper.Pix2HM((int)pPtfContainer->X, WebBrowserHelper.LogPixelsX); pPtlHimetric->Y = WebBrowserHelper.Pix2HM((int)pPtfContainer->Y, WebBrowserHelper.LogPixelsY); } else { return(HRESULT.E_INVALIDARG); } } else { return(HRESULT.E_INVALIDARG); } return(HRESULT.S_OK); }