diff options
Diffstat (limited to 'instance-manager.js')
| -rw-r--r-- | instance-manager.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/instance-manager.js b/instance-manager.js new file mode 100644 index 0000000..7d27a7e --- /dev/null +++ b/instance-manager.js @@ -0,0 +1,40 @@ +"use strict"; + +const { ipcRenderer } = require('electron'); +const TabGroup = require("electron-tabs"); +const $ = window.jQuery = require("jquery"); + +const tabGroup = new TabGroup(); + +function createNewConnection() { + ipcRenderer.send("instanceManager.openNewConnectionDialog"); +} + +function registerNewInstance(payload) { + tabGroup.addTab({ + title: payload.connectionName, + src: "file://" + __dirname + "/editor-instance.html", + visible: true, + active: true, + webviewAttributes: {"nodeintegration":true}, + ready: tab => { + let webview = tab.webview; + if (!!webview) { + webview.addEventListener("dom-ready", () => { + webview.send("editorInstance.registerQueryExecutor", payload.assignedQueryExecutorId); + }) + } + } + }); +} + +ipcRenderer.on("instanceManager.registerNewInstance", (event, payload) => { + registerNewInstance(payload); +}); + + +$(document).ready(() => { + $("#new-connection").click(() => { + createNewConnection(); + }) +})
\ No newline at end of file |