small refactor

This commit is contained in:
2026-02-13 00:11:36 +00:00
parent d60136ed9c
commit f5c0cc9ca4
+24 -23
View File
@@ -132,6 +132,21 @@ func BindWindowEvents(
})
}
func getCurNodeRef(tree *tview.TreeView) (*windowReference, error) {
curNode := tree.GetCurrentNode()
if curNode == nil {
return nil, fmt.Errorf("unable to get current tree node")
}
winRef := getWindowRefFromNode(curNode)
if winRef == nil {
return nil, fmt.Errorf("unable to get window reference from tree node")
}
return winRef, nil
}
func layoutToolTreeViewEvCapture(bus *events.Bus, doc *dom.DOM,
tree *tview.TreeView) func(event *tcell.EventKey) *tcell.EventKey {
return func(event *tcell.EventKey) *tcell.EventKey {
@@ -148,35 +163,21 @@ func layoutToolTreeViewEvCapture(bus *events.Bus, doc *dom.DOM,
case 'x':
// Delete selected window
bus.Emit(ui.LogEv{Log: "calling delete window\n"})
curNode := tree.GetCurrentNode()
if curNode == nil {
bus.Emit(ui.LogEv{Log: "unable to get current tree node"})
wRef, err := getCurNodeRef(tree)
if err != nil {
bus.Emit(ui.LogEv{Log: " -> " + err.Error()})
break
}
winRef := getWindowRefFromNode(curNode)
if winRef == nil {
// Whatever, do something better here
break
}
bus.Emit(ui.DestroyWindowEv{ID: winRef.ID})
bus.Emit(ui.DestroyWindowEv{ID: wRef.ID})
case 'm':
// Go into move mode
curNode := tree.GetCurrentNode()
if curNode == nil {
bus.Emit(ui.LogEv{Log: "unable to get current tree node"})
bus.Emit(ui.LogEv{Log: "calling dimensions tool\n"})
wRef, err := getCurNodeRef(tree)
if err != nil {
bus.Emit(ui.LogEv{Log: " -> " + err.Error()})
break
}
winRef := getWindowRefFromNode(curNode)
if winRef == nil {
// Whatever, do something better here
break
}
windowManipulationTool(bus, doc, winRef.ID)
windowManipulationTool(bus, doc, wRef.ID)
case 'e':
// Go into edit mode
case 's':