[Scummvm-git-logs] scummvm master -> fa815cc92af339fefa76da902e716f28ba863973

sev- noreply at scummvm.org
Tue Jul 19 21:47:11 UTC 2022


This automated email contains information about 5 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
8ee1fcbcb8 GRAPHICS: MACGUI: Implemented debug method for printing WM mode
8b17ee5272 GRAPHICS: MACGUI: Properly load desktop tile if requested
1cd3b914e1 DIRECTOR: Fix desktop mode
76a2c77854 DIRECTOR: Fix quirk for kidsbox
fa815cc92a DIRECTOR: Remove unnecessary global constants


Commit: 8ee1fcbcb8236c5a00f65c7e6f668621cf48b467
    https://github.com/scummvm/scummvm/commit/8ee1fcbcb8236c5a00f65c7e6f668621cf48b467
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2022-07-19T23:46:57+02:00

Commit Message:
GRAPHICS: MACGUI: Implemented debug method for printing WM mode

Changed paths:
    graphics/macgui/macwindowmanager.cpp
    graphics/macgui/macwindowmanager.h


diff --git a/graphics/macgui/macwindowmanager.cpp b/graphics/macgui/macwindowmanager.cpp
index 92b04203f39..abde8e9126e 100644
--- a/graphics/macgui/macwindowmanager.cpp
+++ b/graphics/macgui/macwindowmanager.cpp
@@ -1360,4 +1360,49 @@ void MacWindowManager::setEngineRedrawCallback(void *engine, void (*redrawCallba
 	_redrawEngineCallback = redrawCallback;
 }
 
+void MacWindowManager::printWMMode(int debuglevel) {
+	Common::String out;
+
+	if (_mode & kWMModeNoDesktop)
+		out += "kWMModeNoDesktop";
+	else
+		out += "!kWMModeNoDesktop";
+
+	if (_mode & kWMModeAutohideMenu)
+		out += " kWMModeAutohideMenu";
+
+	if (_mode & kWMModalMenuMode)
+		out += " kWMModalMenuMode";
+
+	if (_mode & kWMModeForceBuiltinFonts)
+		out += " kWMModeForceBuiltinFonts";
+
+	if (_mode & kWMModeUnicode)
+		out += " kWMModeUnicode";
+
+	if (_mode & kWMModeManualDrawWidgets)
+		out += " kWMModeManualDrawWidgets";
+
+	if (_mode & kWMModeFullscreen)
+		out += " kWMModeFullscreen";
+	else
+		out += " !kWMModeFullscreen";
+
+	if (_mode & kWMModeButtonDialogStyle)
+		out += " kWMModeButtonDialogStyle";
+
+	if (_mode & kWMMode32bpp)
+		out += " kWMMode32bpp";
+	else
+		out += " !kWMMode32bpp";
+
+	if (_mode & kWMNoScummVMWallpaper)
+		out += " kWMNoScummVMWallpaper";
+
+	if (_mode & kWMModeWin95)
+		out += " kWMModeWin95";
+
+	debug(debuglevel, "WM mode: %s", out.c_str());
+}
+
 } // End of namespace Graphics
diff --git a/graphics/macgui/macwindowmanager.h b/graphics/macgui/macwindowmanager.h
index 8f5e8c81d20..29e6df0ac1e 100644
--- a/graphics/macgui/macwindowmanager.h
+++ b/graphics/macgui/macwindowmanager.h
@@ -298,6 +298,8 @@ public:
 
 	void clearWidgetRefs(MacWidget *widget);
 
+	void printWMMode(int debuglevel = 0);
+
 private:
 	void replaceCursorType(MacCursorType type);
 


Commit: 8b17ee5272d8c205fd17a5c8dbae8fd8018a639f
    https://github.com/scummvm/scummvm/commit/8b17ee5272d8c205fd17a5c8dbae8fd8018a639f
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2022-07-19T23:46:57+02:00

Commit Message:
GRAPHICS: MACGUI: Properly load desktop tile if requested

Changed paths:
    graphics/macgui/macwindowmanager.cpp


diff --git a/graphics/macgui/macwindowmanager.cpp b/graphics/macgui/macwindowmanager.cpp
index abde8e9126e..53ca2a712a1 100644
--- a/graphics/macgui/macwindowmanager.cpp
+++ b/graphics/macgui/macwindowmanager.cpp
@@ -167,7 +167,7 @@ MacWindowManager::MacWindowManager(uint32 mode, MacPatterns *patterns, Common::L
 	_mouseDown = false;
 	_hoveredWidget = nullptr;
 
-	_mode = mode;
+	_mode = 0;
 	_language = language;
 
 	_menu = 0;
@@ -251,7 +251,7 @@ MacWindowManager::~MacWindowManager() {
 
 void MacWindowManager::setDesktopMode(uint32 mode) {
 	if (!(mode & Graphics::kWMNoScummVMWallpaper)) {
-		if (_mode & Graphics::kWMNoScummVMWallpaper)
+		if (!_mode || (_mode & Graphics::kWMNoScummVMWallpaper))
 			loadDesktop();
 	} else if (_desktopBmp) {
 		_desktopBmp->free();


Commit: 1cd3b914e1786589692ecb3693f52e5f750843a8
    https://github.com/scummvm/scummvm/commit/1cd3b914e1786589692ecb3693f52e5f750843a8
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2022-07-19T23:46:57+02:00

Commit Message:
DIRECTOR: Fix desktop mode

Changed paths:
    engines/director/director.cpp


diff --git a/engines/director/director.cpp b/engines/director/director.cpp
index 9c6ab12e2eb..021faab0064 100644
--- a/engines/director/director.cpp
+++ b/engines/director/director.cpp
@@ -89,7 +89,8 @@ DirectorEngine::DirectorEngine(OSystem *syst, const DirectorGameDescription *gam
 
 	_wmWidth = 1024;
 	_wmHeight = 768;
-	_wm = new Graphics::MacWindowManager(_wmMode, &_director3QuickDrawPatterns, getLanguage());
+
+	_wm = nullptr;
 
 	_gameDataDir = Common::FSNode(ConfMan.get("path"));
 
@@ -126,8 +127,6 @@ DirectorEngine::DirectorEngine(OSystem *syst, const DirectorGameDescription *gam
 
 	_surface = nullptr;
 	_tickBaseline = 0;
-
-	gameQuirks(_gameDescription->desc.gameId, _gameDescription->desc.platform);
 }
 
 DirectorEngine::~DirectorEngine() {
@@ -181,9 +180,15 @@ Common::Error DirectorEngine::run() {
 	if (debugChannelSet(-1, kDebug32bpp))
 		_wmMode |= Graphics::kWMMode32bpp;
 
-	_wm->setDesktopMode(_wmMode);
+	_wm = new Graphics::MacWindowManager(_wmMode, &_director3QuickDrawPatterns, getLanguage());
 	_wm->setEngine(this);
 
+	gameQuirks(_gameDescription->desc.gameId, _gameDescription->desc.platform);
+
+	_wm->setDesktopMode(_wmMode);
+
+	_wm->printWMMode();
+
 	_pixelformat = _wm->_pixelformat;
 
 	debug("Director pixelformat is: %s", _pixelformat.toString().c_str());


Commit: 76a2c77854d2572d2f838b9a191eb9af345c3245
    https://github.com/scummvm/scummvm/commit/76a2c77854d2572d2f838b9a191eb9af345c3245
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2022-07-19T23:46:58+02:00

Commit Message:
DIRECTOR: Fix quirk for kidsbox

Changed paths:
    engines/director/game-quirks.cpp


diff --git a/engines/director/game-quirks.cpp b/engines/director/game-quirks.cpp
index 3b808cafa93..1fa1ad1f624 100644
--- a/engines/director/game-quirks.cpp
+++ b/engines/director/game-quirks.cpp
@@ -29,7 +29,7 @@ static void quirkKidsBox() {
     // a full screen 640x480 game window. If desktop mode is off, ScummVM
     // will pick a game window that fits the splash screen and then try
     // to squish the full size game window into it.
-    g_director->_wmMode = Director::kWMModeDesktop;
+    g_director->_wmMode &= !Graphics::kWMModeNoDesktop;
     // Game runs in 640x480; clipping it to this size ensures the main
     // game window takes up the full screen, and only the splash is windowed.
     g_director->_wmWidth = 640;


Commit: fa815cc92af339fefa76da902e716f28ba863973
    https://github.com/scummvm/scummvm/commit/fa815cc92af339fefa76da902e716f28ba863973
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2022-07-19T23:46:58+02:00

Commit Message:
DIRECTOR: Remove unnecessary global constants

Changed paths:
    engines/director/director.cpp
    engines/director/director.h


diff --git a/engines/director/director.cpp b/engines/director/director.cpp
index 021faab0064..1677aaf7e74 100644
--- a/engines/director/director.cpp
+++ b/engines/director/director.cpp
@@ -85,7 +85,7 @@ DirectorEngine::DirectorEngine(OSystem *syst, const DirectorGameDescription *gam
 	_version = getDescriptionVersion();
 	_fixStageSize = false;
 	_fixStageRect = Common::Rect();
-	_wmMode = debugChannelSet(-1, kDebugDesktop) ? kWMModeDesktop : kWMModeFullscreen;
+	_wmMode = 0;
 
 	_wmWidth = 1024;
 	_wmHeight = 768;
@@ -177,6 +177,12 @@ Common::Error DirectorEngine::run() {
 
 	_currentPalette = nullptr;
 
+	//        we run mac-style menus     |   and we will redraw all widgets
+	_wmMode = Graphics::kWMModalMenuMode | Graphics::kWMModeManualDrawWidgets;
+
+	if (!debugChannelSet(-1, kDebugDesktop))
+		_wmMode |= Graphics::kWMModeFullscreen | Graphics::kWMModeNoDesktop;
+
 	if (debugChannelSet(-1, kDebug32bpp))
 		_wmMode |= Graphics::kWMMode32bpp;
 
diff --git a/engines/director/director.h b/engines/director/director.h
index 21d4f844575..d576a014a49 100644
--- a/engines/director/director.h
+++ b/engines/director/director.h
@@ -55,10 +55,6 @@ class ManagedSurface;
 
 namespace Director {
 
-const uint32 kWMModeDesktop = Graphics::kWMModalMenuMode | Graphics::kWMModeManualDrawWidgets;
-const uint32 kWMModeFullscreen = Graphics::kWMModalMenuMode | Graphics::kWMModeNoDesktop
-	| Graphics::kWMModeManualDrawWidgets | Graphics::kWMModeFullscreen;
-
 class Archive;
 class Cast;
 class DirectorSound;




More information about the Scummvm-git-logs mailing list