[Scummvm-git-logs] scummvm master -> 761c99cbd8324d715f52dfc36ca733a12339cf81
sev-
noreply at scummvm.org
Thu Jun 23 18:26:05 UTC 2022
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
761c99cbd8 DIRECTOR: LINGO: Implement kTheModified field in CastMember::getField()
Commit: 761c99cbd8324d715f52dfc36ca733a12339cf81
https://github.com/scummvm/scummvm/commit/761c99cbd8324d715f52dfc36ca733a12339cf81
Author: Pragyansh Chaturvedi (r41k0u) (pragyanshchaturvedi18 at gmail.com)
Date: 2022-06-23T20:26:02+02:00
Commit Message:
DIRECTOR: LINGO: Implement kTheModified field in CastMember::getField()
Changed paths:
engines/director/castmember.cpp
engines/director/castmember.h
engines/director/lingo/lingo-object.cpp
diff --git a/engines/director/castmember.cpp b/engines/director/castmember.cpp
index ba34dd5f694..25b9e79c90c 100644
--- a/engines/director/castmember.cpp
+++ b/engines/director/castmember.cpp
@@ -48,6 +48,7 @@ CastMember::CastMember(Cast *cast, uint16 castId, Common::SeekableReadStreamEndi
_flags1 = 0;
_modified = true;
+ _isChanged = false;
_objType = kCastMemberObj;
@@ -59,6 +60,12 @@ CastMemberInfo *CastMember::getInfo() {
return _cast->getCastMemberInfo(_castId);
}
+void CastMember::setModified(bool modified) {
+ _modified = modified;
+ if (modified)
+ _isChanged = true;
+}
+
/////////////////////////////////////
// Bitmap
diff --git a/engines/director/castmember.h b/engines/director/castmember.h
index 20379449306..e37a116d9ed 100644
--- a/engines/director/castmember.h
+++ b/engines/director/castmember.h
@@ -73,7 +73,7 @@ public:
virtual bool isEditable() { return false; }
virtual void setEditable(bool editable) {}
virtual bool isModified() { return _modified; }
- virtual void setModified(bool modified) { _modified = modified; }
+ void setModified(bool modified);
virtual Graphics::MacWidget *createWidget(Common::Rect &bbox, Channel *channel, SpriteType spriteType) { return nullptr; }
virtual void updateWidget(Graphics::MacWidget *widget, Channel *channel) {}
virtual void updateFromWidget(Graphics::MacWidget *widget) {}
@@ -112,6 +112,7 @@ protected:
// a link to the widget we created, we may use it later
Graphics::MacWidget *_widget;
bool _modified;
+ bool _isChanged;
};
class BitmapCastMember : public CastMember {
diff --git a/engines/director/lingo/lingo-object.cpp b/engines/director/lingo/lingo-object.cpp
index b5f8d9e8734..a7c50eca05f 100644
--- a/engines/director/lingo/lingo-object.cpp
+++ b/engines/director/lingo/lingo-object.cpp
@@ -676,7 +676,7 @@ Datum CastMember::getField(int field) {
d = 1; // Not loaded handled in Lingo::getTheCast
break;
case kTheModified:
- warning("STUB: CastMember::getField():: Unprocessed getting field \"%s\" of cast %d", g_lingo->field2str(field), _castId);
+ d = (int)_isChanged;
break;
case kTheName:
if (castInfo)
More information about the Scummvm-git-logs
mailing list