Use CopyContextRect() where appropriate

git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@3489 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
avolkov
2009-12-29 15:42:36 +00:00
parent 05bb27d9ae
commit 7a4d7a209e
+10 -16
View File
@@ -499,33 +499,27 @@ PrintCoarseScan3DO (void)
static void static void
initPlanetLocationImage (void) initPlanetLocationImage (void)
{ {
EXTENT size;
FRAME cursorFrame; FRAME cursorFrame;
// Get the cursor image // Get the cursor image
cursorFrame = SetAbsFrameIndex (MiscDataFrame, FLASH_INDEX); cursorFrame = SetAbsFrameIndex (MiscDataFrame, FLASH_INDEX);
size.width = GetFrameWidth (cursorFrame); cursorRect.extent = GetFrameBounds (cursorFrame);
size.height = GetFrameHeight (cursorFrame);
cursorRect.extent = size;
eraseFrame = CaptureDrawable (CreateDrawable (
WANT_PIXMAP | MAPPED_TO_DISPLAY,
size.width, size.height, 1));
// copy the hotspot
SetFrameHot (eraseFrame, GetFrameHot (cursorFrame));
} }
static void static void
savePlanetLocationImage (void) savePlanetLocationImage (void)
{ {
RECT r; RECT r;
HOT_SPOT hs = GetFrameHot (eraseFrame); FRAME cursorFrame = SetAbsFrameIndex (MiscDataFrame, FLASH_INDEX);
HOT_SPOT hs = GetFrameHot (cursorFrame);
GetContextClipRect (&r); DestroyDrawable (ReleaseDrawable (eraseFrame));
r.corner.x += cursorRect.corner.x - hs.x;
r.corner.y += cursorRect.corner.y - hs.y; r = cursorRect;
r.extent = cursorRect.extent; r.corner.x -= hs.x;
LoadDisplayPixmap (&r, eraseFrame); r.corner.y -= hs.y;
eraseFrame = CaptureDrawable (CopyContextRect (&r));
SetFrameHot (eraseFrame, hs);
} }
static void static void