diff --git a/GpApp/Externs.h b/GpApp/Externs.h index c1db6c5..f6506af 100644 --- a/GpApp/Externs.h +++ b/GpApp/Externs.h @@ -16,6 +16,7 @@ namespace PortabilityLayer class ResourceArchive; class ScanlineMask; class ResTypeID; + struct RGBAColor; } #define kPreferredDepth 8 @@ -222,7 +223,7 @@ void GetLocalWindowRect (WindowPtr, Rect *); //void FlagWindowFloating (WindowPtr); //Boolean IsWindowFloating (WindowPtr); void OpenMessageWindow (const PLPasStr&); -void SetMessageWindowMessage (StringPtr); +void SetMessageWindowMessage (StringPtr msg, const PortabilityLayer::RGBAColor &color); void CloseMessageWindow (void); void CloseThisWindow (WindowPtr *); diff --git a/GpApp/House.cpp b/GpApp/House.cpp index 658a53b..bc3dc04 100644 --- a/GpApp/House.cpp +++ b/GpApp/House.cpp @@ -17,6 +17,7 @@ #include "FileManager.h" #include "HostFileSystem.h" #include "House.h" +#include "PLStandardColors.h" #include "PLTimeTaggedVOSEvent.h" #include "RectUtils.h" #include "ResourceManager.h" @@ -730,7 +731,7 @@ void ConvertHouseVer1To2 (void) NumToString((long)i, roomStr); GetLocalizedString(14, message); PasStringConcat(message, roomStr); - SetMessageWindowMessage(message); + SetMessageWindowMessage(message, StdColors::Black()); SpinCursor(1); ForceThisRoom(i); diff --git a/GpApp/HouseLegal.cpp b/GpApp/HouseLegal.cpp index d8a191a..bfcf21a 100644 --- a/GpApp/HouseLegal.cpp +++ b/GpApp/HouseLegal.cpp @@ -8,8 +8,10 @@ #include "PLNumberFormatting.h" #include "PLStringCompare.h" +#include "PLStandardColors.h" #include "Externs.h" #include "ObjectEdit.h" +#include "PLStandardColors.h" #include "RectUtils.h" @@ -739,9 +741,8 @@ void LopOffExtraRooms (void) newSize = sizeof(houseType) + (sizeof(roomType) * (long)r); if (SetHandleSize(thisHouse.StaticCast(), newSize) != PLErrors::kNone) // resize house handle (shrink) { - ForeColor(redColor); GetLocalizedString(16, message); - SetMessageWindowMessage(message); + SetMessageWindowMessage(message, StdColors::Red()); } (*thisHouse)->nRooms -= count; numberRooms = (*thisHouse)->nRooms; @@ -772,21 +773,17 @@ void ValidateRoomNumbers (void) ((*thisHouse)->rooms[i].floor < -7)) { (*thisHouse)->rooms[i].suite = kRoomIsEmpty; - ForeColor(redColor); GetLocalizedString(17, message); - SetMessageWindowMessage(message); + SetMessageWindowMessage(message, StdColors::Red()); houseErrors++; - ForeColor(blackColor); } if (((*thisHouse)->rooms[i].suite >= 128) || ((*thisHouse)->rooms[i].suite < 0)) { (*thisHouse)->rooms[i].suite = kRoomIsEmpty; - ForeColor(redColor); GetLocalizedString(18, message); - SetMessageWindowMessage(message); + SetMessageWindowMessage(message, StdColors::Red()); houseErrors++; - ForeColor(blackColor); } } } @@ -885,11 +882,9 @@ void KeepAllObjectsLegal (void) { if (!KeepObjectLegal()) { - ForeColor(redColor); GetLocalizedString(19, message); - SetMessageWindowMessage(message); + SetMessageWindowMessage(message, StdColors::Red()); houseErrors++; - ForeColor(blackColor); DelayTicks(60); } } @@ -923,10 +918,8 @@ void CheckForStaircasePairs (void) neighbor = GetNeighborRoomNumber(kNorthRoom); if (neighbor == kRoomIsEmpty) { - ForeColor(redColor); GetLocalizedString(20, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Red()); DelayTicks(60); } else @@ -940,10 +933,8 @@ void CheckForStaircasePairs (void) } if (!hasStairs) { - ForeColor(redColor); GetLocalizedString(21, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Red()); DelayTicks(60); } } @@ -954,10 +945,8 @@ void CheckForStaircasePairs (void) neighbor = GetNeighborRoomNumber(kSouthRoom); if (neighbor == kRoomIsEmpty) { - ForeColor(redColor); GetLocalizedString(22, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Red()); DelayTicks(60); } else @@ -971,10 +960,8 @@ void CheckForStaircasePairs (void) } if (!hasStairs) { - ForeColor(redColor); GetLocalizedString(23, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Red()); DelayTicks(60); } } @@ -1004,19 +991,19 @@ void CheckHouseForProblems (void) SpinCursor(3); GetLocalizedString(25, message); - SetMessageWindowMessage(message); + SetMessageWindowMessage(message, StdColors::Black()); WrapBannerAndTrailer(); if (isHouseChecks) { SpinCursor(3); GetLocalizedString(26, message); - SetMessageWindowMessage(message); + SetMessageWindowMessage(message, StdColors::Black()); ValidateNumberOfRooms(); if (houseErrors != 0) { GetLocalizedString(27, message); - SetMessageWindowMessage(message); + SetMessageWindowMessage(message, StdColors::Black()); DelayTicks(60); houseErrors = 0; } @@ -1032,9 +1019,7 @@ void CheckHouseForProblems (void) NumToString((long)houseErrors, message); GetLocalizedString(28, message2); PasStringConcat(message, message2); - ForeColor(redColor); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Red()); DelayTicks(45); } } @@ -1053,9 +1038,7 @@ void CheckHouseForProblems (void) NumToString((long)houseErrors, message); GetLocalizedString(29, message2); PasStringConcat(message, message2); - ForeColor(redColor); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Red()); DelayTicks(60); } } @@ -1070,9 +1053,7 @@ void CheckHouseForProblems (void) NumToString((long)houseErrors, message); GetLocalizedString(30, message2); PasStringConcat(message, message2); - ForeColor(blueColor); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(45); } } @@ -1087,9 +1068,7 @@ void CheckHouseForProblems (void) NumToString((long)houseErrors, message); GetLocalizedString(31, message2); PasStringConcat(message, message2); - ForeColor(blueColor); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(45); } } @@ -1104,9 +1083,7 @@ void CheckHouseForProblems (void) NumToString((long)houseErrors, message); GetLocalizedString(32, message2); PasStringConcat(message, message2); - ForeColor(redColor); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Red()); DelayTicks(60); } } @@ -1116,16 +1093,14 @@ void CheckHouseForProblems (void) SpinCursor(3); houseErrors = 0; GetLocalizedString(33, message); - SetMessageWindowMessage(message); + SetMessageWindowMessage(message, StdColors::Black()); KeepAllObjectsLegal(); if (houseErrors != 0) { NumToString((long)houseErrors, message); GetLocalizedString(34, message2); PasStringConcat(message, message2); - ForeColor(redColor); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Red()); DelayTicks(60); } } @@ -1142,10 +1117,8 @@ void CheckHouseForProblems (void) SpinCursor(3); if (CountStarsInHouse() < 1) { - ForeColor(redColor); GetLocalizedString(35, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Red()); DelayTicks(60); } } diff --git a/GpApp/ObjectEdit.cpp b/GpApp/ObjectEdit.cpp index 8d5a418..c599ee3 100644 --- a/GpApp/ObjectEdit.cpp +++ b/GpApp/ObjectEdit.cpp @@ -17,6 +17,7 @@ #include "ObjectEdit.h" #include "Objects.h" #include "Play.h" +#include "PLStandardColors.h" #include "RectUtils.h" #include "ResourceManager.h" #include "Room.h" @@ -812,10 +813,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(46, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } @@ -843,10 +842,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(46, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } @@ -874,10 +871,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(47, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } @@ -905,10 +900,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(47, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } @@ -936,10 +929,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(48, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } @@ -967,10 +958,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(48, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } @@ -998,10 +987,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(49, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } @@ -1029,10 +1016,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(49, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } @@ -1061,10 +1046,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(50, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } @@ -1093,10 +1076,8 @@ void AddObjectPairing (void) GetLocalizedString(45, message); OpenMessageWindow(message); - ForeColor(blueColor); GetLocalizedString(51, message); - SetMessageWindowMessage(message); - ForeColor(blackColor); + SetMessageWindowMessage(message, StdColors::Blue()); DelayTicks(60); CloseMessageWindow(); } diff --git a/GpApp/Settings.cpp b/GpApp/Settings.cpp index a18fd53..d6c415f 100644 --- a/GpApp/Settings.cpp +++ b/GpApp/Settings.cpp @@ -888,6 +888,8 @@ void FrameDisplayIcon (Dialog *theDialog, const PortabilityLayer::RGBAColor &col surface->FrameRect(theRect); InsetRect(&theRect, 1, 1); surface->FrameRect(theRect); + + surface->SetForeColor(StdColors::Black()); } //-------------------------------------------------------------- DisplayUpdate @@ -898,9 +900,7 @@ void DisplayUpdate (Dialog *theDialog) SetDialogItemValue(theDialog, kDoColorFadeItem, (short)wasFade); - ForeColor(redColor); FrameDisplayIcon(theDialog, StdColors::Red()); - ForeColor(blackColor); FrameDialogItemC(theDialog, kBorder1Item, kRedOrangeColor8); FrameDialogItemC(theDialog, kBorder2Item, kRedOrangeColor8); FrameDialogItemC(theDialog, kBorder3Item, kRedOrangeColor8); @@ -1055,7 +1055,6 @@ void DoDisplayPrefs (void) case kDispDefault: FrameDisplayIcon(prefDlg, StdColors::White()); - ForeColor(blackColor); DisplayDefaults(); DisplayUpdate(prefDlg); break; diff --git a/GpApp/Tools.cpp b/GpApp/Tools.cpp index a3d053a..0b16cd9 100644 --- a/GpApp/Tools.cpp +++ b/GpApp/Tools.cpp @@ -135,7 +135,7 @@ void FrameSelectedTool (DrawSurface *surface) InsetRect(&theRect, 1, 1); surface->FrameRect(theRect); - ForeColor(blackColor); + surface->SetForeColor(StdColors::Black()); } #endif diff --git a/GpApp/WindowUtils.cpp b/GpApp/WindowUtils.cpp index 7340d8a..533847a 100644 --- a/GpApp/WindowUtils.cpp +++ b/GpApp/WindowUtils.cpp @@ -136,7 +136,7 @@ void OpenMessageWindow (const PLPasStr &title) // For the above message window, this function displays a string of textÉ // in the center of the window. -void SetMessageWindowMessage (StringPtr message) +void SetMessageWindowMessage (StringPtr message, const PortabilityLayer::RGBAColor &color) { Rect mssgWindowRect; @@ -150,7 +150,7 @@ void SetMessageWindowMessage (StringPtr message) surface->FillRect(mssgWindowRect); const Point textPoint = Point::Create(mssgWindowRect.left, mssgWindowRect.bottom - 6); - surface->SetForeColor(StdColors::Black()); + surface->SetForeColor(color); surface->DrawString(textPoint, message, true); } } diff --git a/PortabilityLayer/PLQDraw.cpp b/PortabilityLayer/PLQDraw.cpp index fb6b866..4e381fa 100644 --- a/PortabilityLayer/PLQDraw.cpp +++ b/PortabilityLayer/PLQDraw.cpp @@ -54,18 +54,6 @@ void EndUpdate(WindowPtr graf) graf->m_surface.m_port.SetDirty(PortabilityLayer::QDPortDirtyFlag_Contents); } -PLError_t GetIconSuite(Handle *suite, short resID, IconSuiteFlags flags) -{ - PL_NotYetImplemented(); - return PLErrors::kNone; -} - -PLError_t PlotIconSuite(Rect *rect, Handle iconSuite) -{ - PL_NotYetImplemented(); - return PLErrors::kNone; -} - void SetRect(Rect *rect, short left, short top, short right, short bottom) { rect->left = left; @@ -218,71 +206,6 @@ static void PlotLine(PortabilityLayer::QDState *qdState, DrawSurface *surface, c surface->m_port.SetDirty(PortabilityLayer::QDPortDirtyFlag_Contents); } -namespace -{ - static bool SystemColorToRGBAColor(SystemColorID color, PortabilityLayer::RGBAColor &rgbaColor) - { - switch (color) - { - default: - return false; - case whiteColor: - rgbaColor.r = rgbaColor.g = rgbaColor.b = 255; - break; - case blackColor: - rgbaColor.r = rgbaColor.g = rgbaColor.b = 0; - break; - case yellowColor: - rgbaColor.r = rgbaColor.g = 255; - rgbaColor.b = 0; - break; - case magentaColor: - rgbaColor.r = rgbaColor.b = 255; - rgbaColor.g = 0; - break; - case redColor: - rgbaColor.r = 255; - rgbaColor.g = rgbaColor.b = 0; - break; - case cyanColor: - rgbaColor.g = rgbaColor.b = 255; - rgbaColor.r = 0; - break; - case greenColor: - rgbaColor.g = 255; - rgbaColor.r = rgbaColor.b = 0; - break; - case blueColor: - rgbaColor.b = 255; - rgbaColor.r = rgbaColor.g = 0; - break; - } - rgbaColor.a = 255; - - return true; - } -} - -void ForeColor(SystemColorID color) -{ - PortabilityLayer::RGBAColor rgbaColor; - if (SystemColorToRGBAColor(color, rgbaColor)) - { - PortabilityLayer::QDState *qdState = PortabilityLayer::QDManager::GetInstance()->GetState(); - qdState->SetForeColor(rgbaColor); - } -} - -void BackColor(SystemColorID color) -{ - PortabilityLayer::RGBAColor rgbaColor; - if (SystemColorToRGBAColor(color, rgbaColor)) - { - PortabilityLayer::QDState *qdState = PortabilityLayer::QDManager::GetInstance()->GetState(); - qdState->SetBackColor(rgbaColor); - } -} - void GetForeColor(RGBColor *color) { const PortabilityLayer::RGBAColor foreColor = PortabilityLayer::QDManager::GetInstance()->GetState()->GetForeColor(); diff --git a/PortabilityLayer/PLQDraw.h b/PortabilityLayer/PLQDraw.h index 3f7baa4..3c529ba 100644 --- a/PortabilityLayer/PLQDraw.h +++ b/PortabilityLayer/PLQDraw.h @@ -11,35 +11,6 @@ namespace PortabilityLayer struct Dialog; - -enum IconSuiteFlags -{ - svAllLargeData = 1, -}; - -enum TextFlags -{ - bold = 1, -}; - -enum SystemFontID -{ - systemFont = 0, // System font - applFont = 1, // Application font -}; - -enum SystemColorID -{ - whiteColor = 1, - blackColor, - yellowColor, - magentaColor, - redColor, - cyanColor, - greenColor, - blueColor, -}; - enum CopyBitsMode { srcCopy, @@ -99,14 +70,9 @@ void SetPortDialogPort(Dialog *dialog); void EndUpdate(WindowPtr graf); -PLError_t GetIconSuite(Handle *suite, short resID, IconSuiteFlags flags); -PLError_t PlotIconSuite(Rect *rect, Handle iconSuite); - void SetRect(Rect *rect, short left, short top, short right, short bottom); int TextWidth(const PLPasStr &str, int firstChar1Based, int length); -void ForeColor(SystemColorID color); -void BackColor(SystemColorID color); void GetForeColor(RGBColor *color); void ClipRect(const Rect *rect);