fix: route workspace project open action
This commit is contained in:
@@ -181,6 +181,7 @@ function App() {
|
|||||||
{page === 'workspace' ? (
|
{page === 'workspace' ? (
|
||||||
<Workspace
|
<Workspace
|
||||||
workbench={workbench}
|
workbench={workbench}
|
||||||
|
onNavigate={navigate}
|
||||||
setWorkbench={(value) => { setWorkbench(value); setLeftTab('tasks') }}
|
setWorkbench={(value) => { setWorkbench(value); setLeftTab('tasks') }}
|
||||||
leftTab={leftTab}
|
leftTab={leftTab}
|
||||||
setLeftTab={setLeftTab}
|
setLeftTab={setLeftTab}
|
||||||
@@ -240,8 +241,9 @@ function TopBar({ page, workbench, facade, onNavigate, onOpenWorkspace }: { page
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
function Workspace({ workbench, setWorkbench, leftTab, setLeftTab, rightTab, setRightTab, bottomOpen, setBottomOpen, selectedObject, setSelectedObject, document, facade, workbenchIcon: WorkbenchIcon, showNotice }: {
|
function Workspace({ workbench, onNavigate, setWorkbench, leftTab, setLeftTab, rightTab, setRightTab, bottomOpen, setBottomOpen, selectedObject, setSelectedObject, document, facade, workbenchIcon: WorkbenchIcon, showNotice }: {
|
||||||
workbench: Workbench
|
workbench: Workbench
|
||||||
|
onNavigate: (page: Page) => void
|
||||||
setWorkbench: (value: Workbench) => void
|
setWorkbench: (value: Workbench) => void
|
||||||
leftTab: 'model' | 'tasks'
|
leftTab: 'model' | 'tasks'
|
||||||
setLeftTab: (tab: 'model' | 'tasks') => void
|
setLeftTab: (tab: 'model' | 'tasks') => void
|
||||||
@@ -262,7 +264,7 @@ function Workspace({ workbench, setWorkbench, leftTab, setLeftTab, rightTab, set
|
|||||||
<div className="workbench-picker"><WorkbenchIcon size={17} /><select value={workbench} onChange={(event) => setWorkbench(event.target.value as Workbench)} aria-label="Workbench">{Object.keys(workbenchDefinitions).map((option) => <option key={option}>{option}</option>)}</select><ChevronDown size={14} /></div>
|
<div className="workbench-picker"><WorkbenchIcon size={17} /><select value={workbench} onChange={(event) => setWorkbench(event.target.value as Workbench)} aria-label="Workbench">{Object.keys(workbenchDefinitions).map((option) => <option key={option}>{option}</option>)}</select><ChevronDown size={14} /></div>
|
||||||
<div className="toolbar-divider" />
|
<div className="toolbar-divider" />
|
||||||
<IconButton icon={FilePlus2} label="New document" onClick={() => { facade.gui.command.execute({ commandId: 'new-document' }); showNotice('New document prepared') }} />
|
<IconButton icon={FilePlus2} label="New document" onClick={() => { facade.gui.command.execute({ commandId: 'new-document' }); showNotice('New document prepared') }} />
|
||||||
<IconButton icon={FolderOpen} label="Open project" onClick={() => showNotice('Project browser opened')} />
|
<IconButton icon={FolderOpen} label="Open project" onClick={() => onNavigate('projects')} />
|
||||||
<IconButton icon={Save} label="Save project" onClick={() => { facade.gui.command.execute({ commandId: 'save' }); showNotice('Saved to local workspace') }} />
|
<IconButton icon={Save} label="Save project" onClick={() => { facade.gui.command.execute({ commandId: 'save' }); showNotice('Saved to local workspace') }} />
|
||||||
<IconButton icon={RefreshCw} label="Recompute document" disabled={document.readOnly} onClick={() => { void facade.app.document.recomputeAsync().then((result) => showNotice(result.status === 'completed' ? 'Recompute completed' : `Recompute ${result.status}`)) }} />
|
<IconButton icon={RefreshCw} label="Recompute document" disabled={document.readOnly} onClick={() => { void facade.app.document.recomputeAsync().then((result) => showNotice(result.status === 'completed' ? 'Recompute completed' : `Recompute ${result.status}`)) }} />
|
||||||
<div className="toolbar-divider" />
|
<div className="toolbar-divider" />
|
||||||
|
|||||||
Reference in New Issue
Block a user