aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2016-08-29 21:55:43 -0400
committerPaul Gilbert2016-08-29 21:55:43 -0400
commitc41845e6aec5fce0326ddabbed176e40b83204ab (patch)
tree4ec2953f2c35bf821057df9759c3d6fe549a14b8
parent9dd2e198aec75791ed7052148997bac25a46ec55 (diff)
downloadscummvm-rg350-c41845e6aec5fce0326ddabbed176e40b83204ab.tar.gz
scummvm-rg350-c41845e6aec5fce0326ddabbed176e40b83204ab.tar.bz2
scummvm-rg350-c41845e6aec5fce0326ddabbed176e40b83204ab.zip
TITANIC: Preliminary implementation for CVideoSurface movieBlitRect
-rw-r--r--engines/titanic/support/video_surface.cpp14
1 files changed, 13 insertions, 1 deletions
diff --git a/engines/titanic/support/video_surface.cpp b/engines/titanic/support/video_surface.cpp
index 594f660937..b5f668793a 100644
--- a/engines/titanic/support/video_surface.cpp
+++ b/engines/titanic/support/video_surface.cpp
@@ -163,7 +163,19 @@ void CVideoSurface::blitRect2(const Rect &srcRect, const Rect &destRect, CVideoS
}
void CVideoSurface::movieBlitRect(const Rect &srcRect, const Rect &destRect, CVideoSurface *src) {
- // TODO
+ if (lock()) {
+ if (src->lock()) {
+ Graphics::ManagedSurface *srcSurface = src->_rawSurface;
+ Graphics::ManagedSurface *destSurface = _rawSurface;
+
+ // TODO: Handle the transparency mode correctly
+ destSurface->blitFrom(*srcSurface, srcRect, Point(srcRect.left, srcRect.top));
+
+ src->unlock();
+ }
+
+ unlock();
+ }
}
uint CVideoSurface::getTransparencyColor() {