aboutsummaryrefslogtreecommitdiff
path: root/engines/director
diff options
context:
space:
mode:
Diffstat (limited to 'engines/director')
-rw-r--r--engines/director/lingo/lingo.cpp11
-rw-r--r--engines/director/lingo/lingo.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/engines/director/lingo/lingo.cpp b/engines/director/lingo/lingo.cpp
index d3e84a0d7c..21a5b5347a 100644
--- a/engines/director/lingo/lingo.cpp
+++ b/engines/director/lingo/lingo.cpp
@@ -160,6 +160,13 @@ void Lingo::addCode(const char *code, ScriptType type, uint16 id) {
const char *begin, *end;
+ if (!strncmp(code, "menu:", 5)) {
+ debugC(2, kDebugLingoCompile, "Parsing menu");
+ parseMenu(code);
+
+ return;
+ }
+
// macros and factories have conflicting grammar. Thus we ease life for the parser.
if ((begin = findNextDefinition(code))) {
bool first = true;
@@ -392,6 +399,10 @@ Common::String *Lingo::toLowercaseMac(Common::String *s) {
return res;
}
+void Lingo::parseMenu(const char *code) {
+ warning("STUB: parseMenu");
+}
+
void Lingo::runTests() {
Common::File inFile;
Common::ArchiveMemberList fsList;
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index ab6759d0b2..e04de92b8b 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -431,6 +431,8 @@ public:
private:
int parse(const char *code);
+ void parseMenu(const char *code);
+
void push(Datum d);
Datum pop(void);