import './TabMenu.css'; import { createSignal, For, onMount, Show } from 'solid-js'; import { NodeManager } from '../Mangers/NodeManager'; import { Tab } from '../structs/Tab'; import { SettingsMenu } from './SettingsMenu'; import { openUrl } from '@tauri-apps/plugin-opener'; export let TabMenu = () => { let [ tabImportOpen, setTabImportOpen ] = createSignal(false); let [ tabs, setTabs ] = createSignal([], { equals: false }); let [ settingsOpen, setSettingsOpen ] = createSignal(false); let closeTabImportMenu = () => { window.removeEventListener('click', closeTabImportMenu); setTabImportOpen(false); } onMount(() => { NodeManager.Instance.HookTabUpdate(setTabs); }); return ( <> setSettingsOpen(false)} />
{ tab =>
{ NodeManager.Instance.SelectTab(tab.id); }}>
{ if(tab.selected()){ NodeManager.Instance.SaveTab(tab); } }}> }>
{ let input = as HTMLInputElement; e.target.innerHTML = ''; e.target.appendChild(input); input.select(); input.onchange = () => { NodeManager.Instance.RenameTab(tab.id, input.value); e.target.innerHTML = input.value; } }}>{ tab.name }
{ setTimeout(() => { NodeManager.Instance.CloseTab(tab.id); }, 50) }}>
}
{ NodeManager.Instance.AddTab("Untitled"); }} onContextMenu={( e ) => { e.preventDefault(); setTabImportOpen(true); window.addEventListener('click', closeTabImportMenu); }}>
Import from file
Import from URL
New Tab
setSettingsOpen(true)} />
openUrl('https://github.com/phaze-the-dumb/VRCMacros/wiki')} />
) }