Split out runtime

This commit is contained in:
Jordan Eldredge 2019-07-02 06:33:07 -07:00
parent 4a2e783577
commit c2a43e85fc
6 changed files with 71 additions and 47 deletions

View file

@ -1,53 +1,8 @@
const fs = require("fs");
const path = require("path");
const run = require("./index");
class GuiObject {}
class Group extends GuiObject {
findObject(id) {
throw new Error("Not implemented");
}
setXmlParam(id, value) {
throw new Error("Not implemented");
}
}
class PopupMenu {}
class Container {}
const onScriptLoadedCallbacks = [];
const onSetXuiParamCallbacks = [];
class System {
_start() {
onScriptLoadedCallbacks.forEach(cb => {
cb();
});
}
onScriptLoaded(cb) {
onScriptLoadedCallbacks.push(cb);
}
onSetXuiParam(cb) {
onSetXuiParamCallbacks.push(cb);
}
getScriptGroup() {
return new Group();
}
getToken(str, separator, tokennum) {
return "Some Token String";
}
getParam() {
return "Some String";
}
messagebox(message, var2, var3, var4) {
alert(message);
}
}
const runtime = {
d6f50f6449b793fa66baf193983eaeef: System,
"45be95e5419120725fbb5c93fd17f1f9": Group,
"4ee3e1994becc636bc78cd97b028869c": GuiObject,
f4787af44ef7b2bb4be7fb9c8da8bea9: PopupMenu,
e90dc47b4ae7840d0b042cb0fcf775d2: Container
};
const runtime = require("./runtime");
const System = require("./runtime/System");
function main() {
const relativePath = process.argv[2];

View file

@ -0,0 +1,12 @@
const GuiObject = require("./GuiObject");
class Group extends GuiObject {
findObject(id) {
throw new Error("Not implemented");
}
setXmlParam(id, value) {
throw new Error("Not implemented");
}
}
module.exports = Group;

View file

@ -0,0 +1,5 @@
const MakiObject = require("./MakiObject");
class GuiObject extends MakiObject {}
module.exports = GuiObject;

View file

@ -0,0 +1,3 @@
class MakiObject {}
module.exports = MakiObject;

View file

@ -0,0 +1,33 @@
const Group = require("./Group");
const MakiObject = require("./MakiObject");
const onScriptLoadedCallbacks = [];
const onSetXuiParamCallbacks = [];
class System extends MakiObject {
_start() {
onScriptLoadedCallbacks.forEach(cb => {
cb();
});
}
onScriptLoaded(cb) {
onScriptLoadedCallbacks.push(cb);
}
onSetXuiParam(cb) {
onSetXuiParamCallbacks.push(cb);
}
getScriptGroup() {
return new Group();
}
getToken(str, separator, tokennum) {
return "Some Token String";
}
getParam() {
return "Some String";
}
messagebox(message, var2, var3, var4) {
alert(message);
}
}
module.exports = System;

View file

@ -0,0 +1,16 @@
const System = require("./System");
const Group = require("./Group");
const GuiObject = require("./GuiObject");
class PopupMenu {}
class Container {}
const runtime = {
d6f50f6449b793fa66baf193983eaeef: System,
"45be95e5419120725fbb5c93fd17f1f9": Group,
"4ee3e1994becc636bc78cd97b028869c": GuiObject,
f4787af44ef7b2bb4be7fb9c8da8bea9: PopupMenu,
e90dc47b4ae7840d0b042cb0fcf775d2: Container
};
module.exports = runtime;