Nudge scoreboard rects to positive coordinates (pending move to a different window)

This commit is contained in:
elasota
2019-12-26 19:41:24 -05:00
parent 97570693da
commit 87d112d187
2 changed files with 29 additions and 7 deletions

View File

@@ -49,6 +49,13 @@ extern Boolean evenFrame, onePlayerLeft;
//============================================================== Functions
//-------------------------------------------------------------- MarkScoreboardPortDirty
void MarkScoreboardPortDirty(void)
{
GetWindowPort(mainWindow)->m_port.SetDirty(PortabilityLayer::QDPortDirtyFlag_Contents);
}
//-------------------------------------------------------------- RefreshScoreboard
void RefreshScoreboard (short mode)
@@ -62,6 +69,8 @@ void RefreshScoreboard (short mode)
CopyBits((BitMap *)*GetGWorldPixMap(boardSrcMap),
GetPortBitMapForCopyBits(GetWindowPort(mainWindow)),
&boardSrcRect, &boardDestRect, srcCopy, 0L);
MarkScoreboardPortDirty();
QuickBatteryRefresh(false);
QuickBandsRefresh(false);
@@ -186,6 +195,8 @@ void RefreshRoomTitle (short mode)
CopyBits((BitMap *)*GetGWorldPixMap(boardTSrcMap),
(BitMap *)*GetGWorldPixMap(boardSrcMap),
&boardTSrcRect, &boardTDestRect, srcCopy, nil);
MarkScoreboardPortDirty();
}
//-------------------------------------------------------------- RefreshNumGliders
@@ -225,6 +236,8 @@ void RefreshNumGliders (void)
CopyBits((BitMap *)*GetGWorldPixMap(boardGSrcMap),
(BitMap *)*GetGWorldPixMap(boardSrcMap),
&boardGSrcRect, &boardGDestRect, srcCopy, nil);
MarkScoreboardPortDirty();
}
//-------------------------------------------------------------- RefreshPoints
@@ -262,6 +275,8 @@ void RefreshPoints (void)
&boardPSrcRect, &boardPDestRect, srcCopy, nil);
displayedScore = theScore;
MarkScoreboardPortDirty();
}
//-------------------------------------------------------------- QuickGlidersRefresh
@@ -297,6 +312,8 @@ void QuickGlidersRefresh (void)
CopyBits((BitMap *)*GetGWorldPixMap(boardGSrcMap),
GetPortBitMapForCopyBits(GetWindowPort(mainWindow)),
&boardGSrcRect, &boardGQDestRect, srcCopy, nil);
MarkScoreboardPortDirty();
}
//-------------------------------------------------------------- QuickScoreRefresh
@@ -332,6 +349,8 @@ void QuickScoreRefresh (void)
CopyBits((BitMap *)*GetGWorldPixMap(boardPSrcMap),
GetPortBitMapForCopyBits(GetWindowPort(mainWindow)),
&boardPSrcRect, &boardPQDestRect, srcCopy, nil);
MarkScoreboardPortDirty();
}
//-------------------------------------------------------------- QuickBatteryRefresh
@@ -362,6 +381,8 @@ void QuickBatteryRefresh (Boolean flash)
&badgesDestRects[kBatteryBadge],
srcCopy, nil);
}
MarkScoreboardPortDirty();
}
//-------------------------------------------------------------- QuickBandsRefresh
@@ -384,6 +405,8 @@ void QuickBandsRefresh (Boolean flash)
&badgesDestRects[kBandsBadge],
srcCopy, nil);
}
MarkScoreboardPortDirty();
}
//-------------------------------------------------------------- QuickFoilRefresh
@@ -406,6 +429,8 @@ void QuickFoilRefresh (Boolean flash)
&badgesDestRects[kFoilBadge],
srcCopy, nil);
}
MarkScoreboardPortDirty();
}
//-------------------------------------------------------------- AdjustScoreboardHeight

View File

@@ -93,7 +93,6 @@ void InitScoreboardMap (void)
LoadGraphic(kBadgePictID);
boardDestRect = boardSrcRect;
QOffsetRect(&boardDestRect, 0, -kScoreboardTall);
hOffset = (RectWide(&houseRect) - 640) / 2;
if (hOffset < 0)
@@ -123,9 +122,7 @@ void InitScoreboardMap (void)
boardPDestRect = boardPSrcRect;
QOffsetRect(&boardPDestRect, 570 + hOffset, 5); // total = 6396 pixels
boardPQDestRect = boardPDestRect;
QOffsetRect(&boardPQDestRect, 0, -kScoreboardTall);
boardGQDestRect = boardGDestRect;
QOffsetRect(&boardGQDestRect, 0, -kScoreboardTall);
TextFont(applFont);
TextSize(12);
TextFace(bold);
@@ -149,13 +146,13 @@ void InitScoreboardMap (void)
QOffsetRect(&badgesBadgesRects[3], 16, 49);
QSetRect(&badgesDestRects[0], 0, 0, 16, 16); // foil
QOffsetRect(&badgesDestRects[0], 432 + hOffset, 2 - kScoreboardTall);
QOffsetRect(&badgesDestRects[0], 432 + hOffset, 2);
QSetRect(&badgesDestRects[1], 0, 0, 16, 16); // rubber bands
QOffsetRect(&badgesDestRects[1], 449 + hOffset, 2 - kScoreboardTall);
QOffsetRect(&badgesDestRects[1], 449 + hOffset, 2);
QSetRect(&badgesDestRects[2], 0, 0, 16, 17); // battery
QOffsetRect(&badgesDestRects[2], 467 + hOffset, 1 - kScoreboardTall);
QOffsetRect(&badgesDestRects[2], 467 + hOffset, 1);
QSetRect(&badgesDestRects[3], 0, 0, 16, 17); // helium
QOffsetRect(&badgesDestRects[3], 467 + hOffset, 1 - kScoreboardTall);
QOffsetRect(&badgesDestRects[3], 467 + hOffset, 1);
SetGWorld(wasCPort, wasWorld);
}