//-------------------------------------------------------------------------- void VeWindows::_GetDisplayBounds(VideoDisplay& kDisplay, VeRect& kRect) { DisplayModeData* pkData = (DisplayModeData*)(VeRefObject*)(kDisplay.m_kCurrentMode.m_spDriverData); kRect.x = (VeInt32)VeCeilf(pkData->m_kDeviceMode.dmPosition.x * pkData->m_f32ScaleX); kRect.y = (VeInt32)VeCeilf(pkData->m_kDeviceMode.dmPosition.y * pkData->m_f32ScaleY); kRect.w = (VeInt32)VeCeilf(pkData->m_kDeviceMode.dmPelsWidth * pkData->m_f32ScaleX); kRect.h = (VeInt32)VeCeilf(pkData->m_kDeviceMode.dmPelsHeight * pkData->m_f32ScaleY); }
//-------------------------------------------------------------------------- bool WindowsVideoDevice::_GetDisplayBounds(VeVideoDisplay* pkDisplay, VeRect* pkRect) noexcept { VE_ASSERT(pkDisplay); VeDisplayModeData* pkData = (VeDisplayModeData*)pkDisplay->m_kCurrentMode.m_spDriverData; pkRect->x = (VeInt32)VeCeilf(pkData->DeviceMode.dmPosition.x * pkData->ScaleX); pkRect->y = (VeInt32)VeCeilf(pkData->DeviceMode.dmPosition.y * pkData->ScaleY); pkRect->w = (VeInt32)VeCeilf(pkData->DeviceMode.dmPelsWidth * pkData->ScaleX); pkRect->h = (VeInt32)VeCeilf(pkData->DeviceMode.dmPelsHeight * pkData->ScaleY); return true; }