[Scummvm-cvs-logs] SF.net SVN: scummvm: [22735] scummvm/trunk/gui
lordhoto at users.sourceforge.net
lordhoto at users.sourceforge.net
Mon May 29 06:13:05 CEST 2006
Revision: 22735
Author: lordhoto
Date: 2006-05-29 06:12:04 -0700 (Mon, 29 May 2006)
ViewCVS: http://svn.sourceforge.net/scummvm/?rev=22735&view=rev
Log Message:
-----------
- Fixes disabled transparency for classic theme.
- Introduces check for define 'CT_NO_TRANSPARENCY' to disable transparency support.
Modified Paths:
--------------
scummvm/trunk/gui/ThemeClassic.cpp
scummvm/trunk/gui/theme.h
Modified: scummvm/trunk/gui/ThemeClassic.cpp
===================================================================
--- scummvm/trunk/gui/ThemeClassic.cpp 2006-05-29 13:06:28 UTC (rev 22734)
+++ scummvm/trunk/gui/ThemeClassic.cpp 2006-05-29 13:12:04 UTC (rev 22735)
@@ -26,7 +26,7 @@
_system = system;
_initOk = false;
memset(&_screen, 0, sizeof(_screen));
-#ifdef OLDGUI_TRANSPARENCY
+#ifndef CT_NO_TRANSPARENCY
memset(&_dialog, 0, sizeof(_dialog));
#endif
_font = 0;
@@ -97,7 +97,7 @@
}
void ThemeClassic::openDialog(bool topDialog) {
-#ifdef OLDGUI_TRANSPARENCY
+#ifndef CT_NO_TRANSPARENCY
if (!_dialog) {
_dialog = new DialogState;
assert(_dialog);
@@ -110,7 +110,7 @@
}
void ThemeClassic::closeDialog() {
-#ifdef OLDGUI_TRANSPARENCY
+#ifndef CT_NO_TRANSPARENCY
if (_dialog) {
_dialog->screen.free();
delete _dialog;
@@ -143,11 +143,13 @@
return;
restoreBackground(r);
-
+
+#ifndef CT_NO_TRANSPARENCY
if ((hints & THEME_HINT_SAVE_BACKGROUND) && !(hints & THEME_HINT_FIRST_DRAW) && !_forceRedraw) {
addDirtyRect(r);
return;
}
+#endif
box(r.left, r.top, r.width(), r.height(), _color, _shadowcolor);
addDirtyRect(r, (hints & THEME_HINT_SAVE_BACKGROUND) != 0);
@@ -181,11 +183,13 @@
return;
restoreBackground(r);
-
+
+#ifndef CT_NO_TRANSPARENCY
if ((hints & THEME_HINT_SAVE_BACKGROUND) && !(hints & THEME_HINT_FIRST_DRAW) && !_forceRedraw) {
addDirtyRect(r);
return;
}
+#endif
switch (background) {
case kWidgetBackgroundBorder:
@@ -452,7 +456,7 @@
void ThemeClassic::restoreBackground(Common::Rect r, bool special) {
r.clip(_screen.w, _screen.h);
r.clip(_drawArea);
-#ifndef OLDGUI_TRANSPARENCY
+#ifdef CT_NO_TRANSPARENCY
_screen.fillRect(r, _bgcolor);
#else
if (_dialog) {
@@ -482,7 +486,7 @@
r.clip(_screen.w, _screen.h);
r.clip(_drawArea);
_system->copyRectToOverlay((OverlayColor*)_screen.getBasePtr(r.left, r.top), _screen.w, r.left, r.top, r.width(), r.height());
-#ifdef OLDGUI_TRANSPARENCY
+#ifndef CT_NO_TRANSPARENCY
if (_dialog && save) {
if (_dialog->screen.pixels) {
OverlayColor *dst = (OverlayColor*)_dialog->screen.getBasePtr(r.left, r.top);
@@ -544,7 +548,7 @@
return usedColor;
}
-#ifdef OLDGUI_TRANSPARENCY
+#ifndef CT_NO_TRANSPARENCY
void ThemeClassic::blendScreenToDialog() {
Common::Rect rect(0, 0, _screen.w, _screen.h);
Modified: scummvm/trunk/gui/theme.h
===================================================================
--- scummvm/trunk/gui/theme.h 2006-05-29 13:06:28 UTC (rev 22734)
+++ scummvm/trunk/gui/theme.h 2006-05-29 13:12:04 UTC (rev 22735)
@@ -206,7 +206,8 @@
int _loadedThemeX, _loadedThemeY;
};
-#define OLDGUI_TRANSPARENCY
+// enable this to disable transparency support for the classic theme
+//#define CT_NO_TRANSPARENCY
class ThemeClassic : public Theme {
public:
@@ -263,7 +264,7 @@
OSystem *_system;
Graphics::Surface _screen;
-#ifdef OLDGUI_TRANSPARENCY
+#ifndef CT_NO_TRANSPARENCY
struct DialogState {
Graphics::Surface screen;
} *_dialog;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list