diff --git a/index.html b/index.html
new file mode 100644
index 0000000..1749686
--- /dev/null
+++ b/index.html
@@ -0,0 +1,8 @@
+
+
+ 7GUI
+
+
+
+
+
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..1749686
--- /dev/null
+++ b/index.html
@@ -0,0 +1,8 @@
+
+
+ 7GUI
+
+
+
+
+
diff --git a/package-lock.json b/package-lock.json
index 2736021..a6d5c4b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1221,7 +1221,8 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"aproba": {
"version": "1.2.0",
@@ -1242,12 +1243,14 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -1262,17 +1265,20 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"core-util-is": {
"version": "1.0.2",
@@ -1389,7 +1395,8 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"ini": {
"version": "1.3.5",
@@ -1401,6 +1408,7 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -1415,6 +1423,7 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -1422,12 +1431,14 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@@ -1446,6 +1457,7 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -1526,7 +1538,8 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"object-assign": {
"version": "4.1.1",
@@ -1538,6 +1551,7 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"wrappy": "1"
}
@@ -1623,7 +1637,8 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -1659,6 +1674,7 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -1678,6 +1694,7 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -1721,12 +1738,14 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
}
}
},
@@ -1910,6 +1929,29 @@
"integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==",
"dev": true
},
+ "imgui-js": {
+ "version": "file:imgui-js",
+ "requires": {
+ "@types/emscripten": "0.0.32",
+ "@types/node": "^12.0.4",
+ "@types/systemjs": "^0.20.6",
+ "systemjs": "^0.21.6"
+ },
+ "dependencies": {
+ "@types/emscripten": {
+ "version": "0.0.32",
+ "bundled": true
+ },
+ "@types/node": {
+ "version": "12.0.8",
+ "bundled": true
+ },
+ "@types/systemjs": {
+ "version": "0.20.6",
+ "bundled": true
+ }
+ }
+ },
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
@@ -3219,6 +3261,11 @@
"acorn-node": "^1.2.0"
}
},
+ "systemjs": {
+ "version": "0.21.6",
+ "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-0.21.6.tgz",
+ "integrity": "sha512-R+5S9eV9vcQgWOoS4D87joZ4xkFJHb19ZsyKY07D1+VBDE9bwYcU+KXE0r5XlDA8mFoJGyuWDbfrNoh90JsA8g=="
+ },
"through": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..1749686
--- /dev/null
+++ b/index.html
@@ -0,0 +1,8 @@
+
+
+ 7GUI
+
+
+
+
+
diff --git a/package-lock.json b/package-lock.json
index 2736021..a6d5c4b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1221,7 +1221,8 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"aproba": {
"version": "1.2.0",
@@ -1242,12 +1243,14 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -1262,17 +1265,20 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"core-util-is": {
"version": "1.0.2",
@@ -1389,7 +1395,8 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"ini": {
"version": "1.3.5",
@@ -1401,6 +1408,7 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -1415,6 +1423,7 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -1422,12 +1431,14 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@@ -1446,6 +1457,7 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -1526,7 +1538,8 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"object-assign": {
"version": "4.1.1",
@@ -1538,6 +1551,7 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"wrappy": "1"
}
@@ -1623,7 +1637,8 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -1659,6 +1674,7 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -1678,6 +1694,7 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -1721,12 +1738,14 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
}
}
},
@@ -1910,6 +1929,29 @@
"integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==",
"dev": true
},
+ "imgui-js": {
+ "version": "file:imgui-js",
+ "requires": {
+ "@types/emscripten": "0.0.32",
+ "@types/node": "^12.0.4",
+ "@types/systemjs": "^0.20.6",
+ "systemjs": "^0.21.6"
+ },
+ "dependencies": {
+ "@types/emscripten": {
+ "version": "0.0.32",
+ "bundled": true
+ },
+ "@types/node": {
+ "version": "12.0.8",
+ "bundled": true
+ },
+ "@types/systemjs": {
+ "version": "0.20.6",
+ "bundled": true
+ }
+ }
+ },
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
@@ -3219,6 +3261,11 @@
"acorn-node": "^1.2.0"
}
},
+ "systemjs": {
+ "version": "0.21.6",
+ "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-0.21.6.tgz",
+ "integrity": "sha512-R+5S9eV9vcQgWOoS4D87joZ4xkFJHb19ZsyKY07D1+VBDE9bwYcU+KXE0r5XlDA8mFoJGyuWDbfrNoh90JsA8g=="
+ },
"through": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
diff --git a/package.json b/package.json
index 92a2505..9823d66 100644
--- a/package.json
+++ b/package.json
@@ -14,6 +14,9 @@
},
"author": "",
"license": "ISC",
+ "dependencies": {
+ "imgui-js": "file:./imgui-js"
+ },
"devDependencies": {
"@types/node": "^12.0.0",
"browserify": "^16.2.3",
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..1749686
--- /dev/null
+++ b/index.html
@@ -0,0 +1,8 @@
+
+
+ 7GUI
+
+
+
+
+
diff --git a/package-lock.json b/package-lock.json
index 2736021..a6d5c4b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1221,7 +1221,8 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"aproba": {
"version": "1.2.0",
@@ -1242,12 +1243,14 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@@ -1262,17 +1265,20 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"core-util-is": {
"version": "1.0.2",
@@ -1389,7 +1395,8 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"ini": {
"version": "1.3.5",
@@ -1401,6 +1408,7 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@@ -1415,6 +1423,7 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@@ -1422,12 +1431,14 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@@ -1446,6 +1457,7 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"minimist": "0.0.8"
}
@@ -1526,7 +1538,8 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"object-assign": {
"version": "4.1.1",
@@ -1538,6 +1551,7 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"wrappy": "1"
}
@@ -1623,7 +1637,8 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"safer-buffer": {
"version": "2.1.2",
@@ -1659,6 +1674,7 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@@ -1678,6 +1694,7 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
+ "optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@@ -1721,12 +1738,14 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
- "dev": true
+ "dev": true,
+ "optional": true
}
}
},
@@ -1910,6 +1929,29 @@
"integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==",
"dev": true
},
+ "imgui-js": {
+ "version": "file:imgui-js",
+ "requires": {
+ "@types/emscripten": "0.0.32",
+ "@types/node": "^12.0.4",
+ "@types/systemjs": "^0.20.6",
+ "systemjs": "^0.21.6"
+ },
+ "dependencies": {
+ "@types/emscripten": {
+ "version": "0.0.32",
+ "bundled": true
+ },
+ "@types/node": {
+ "version": "12.0.8",
+ "bundled": true
+ },
+ "@types/systemjs": {
+ "version": "0.20.6",
+ "bundled": true
+ }
+ }
+ },
"inflight": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
@@ -3219,6 +3261,11 @@
"acorn-node": "^1.2.0"
}
},
+ "systemjs": {
+ "version": "0.21.6",
+ "resolved": "https://registry.npmjs.org/systemjs/-/systemjs-0.21.6.tgz",
+ "integrity": "sha512-R+5S9eV9vcQgWOoS4D87joZ4xkFJHb19ZsyKY07D1+VBDE9bwYcU+KXE0r5XlDA8mFoJGyuWDbfrNoh90JsA8g=="
+ },
"through": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
diff --git a/package.json b/package.json
index 92a2505..9823d66 100644
--- a/package.json
+++ b/package.json
@@ -14,6 +14,9 @@
},
"author": "",
"license": "ISC",
+ "dependencies": {
+ "imgui-js": "file:./imgui-js"
+ },
"devDependencies": {
"@types/node": "^12.0.0",
"browserify": "^16.2.3",
diff --git a/src/main.ts b/src/main.ts
index e69de29..01ba4d0 100644
--- a/src/main.ts
+++ b/src/main.ts
@@ -0,0 +1,37 @@
+import * as ImGui_Impl from "../imgui-js/example/imgui_impl";
+import * as ImGui from "imgui-js";
+import { ImGuiIO } from "imgui-js";
+
+async function main(): Promise
+{
+ await ImGui.default();
+ window.requestAnimationFrame(init);
+}
+
+function init(): void
+{
+ console.log("Total allocated space (uordblks) @ _init:", ImGui.bind.mallinfo().uordblks);
+
+ // Setup Dear ImGui binding
+ ImGui.IMGUI_CHECKVERSION();
+ ImGui.CreateContext();
+
+ const io: ImGuiIO = ImGui.GetIO();
+ // io.ConfigFlags |= ImGui.ConfigFlags.NavEnableKeyboard; // Enable Keyboard Controls
+
+ // Setup style
+ ImGui.StyleColorsDark();
+
+ const output: HTMLElement = document.getElementById("output") || document.body;
+ const canvas: HTMLCanvasElement = document.createElement("canvas");
+ output.appendChild(canvas);
+ canvas.tabIndex = 1;
+ canvas.style.position = "absolute";
+ canvas.style.left = "0px";
+ canvas.style.right = "0px";
+ canvas.style.top = "0px";
+ canvas.style.bottom = "0px";
+ canvas.style.width = "100%";
+ canvas.style.height = "100%";
+ ImGui_Impl.Init(canvas);
+}