onKey receives key down events for the embedded list
(evname string, ev interface{})
| 164 | |
| 165 | // onKey receives key down events for the embedded list |
| 166 | func (t *Tree) onKey(evname string, ev interface{}) { |
| 167 | |
| 168 | // Get selected item |
| 169 | item := t.Selected() |
| 170 | if item == nil { |
| 171 | return |
| 172 | } |
| 173 | // If item is not a tree node, dispatch event to item |
| 174 | node, ok := item.(*TreeNode) |
| 175 | if !ok { |
| 176 | item.GetPanel().Dispatch(evname, ev) |
| 177 | return |
| 178 | } |
| 179 | // If not enter key pressed, ignore |
| 180 | kev := ev.(*window.KeyEvent) |
| 181 | if evname != OnKeyDown || kev.Key != window.KeyEnter { |
| 182 | return |
| 183 | } |
| 184 | // Toggles the expansion state of the node |
| 185 | node.expanded = !node.expanded |
| 186 | node.update() |
| 187 | node.updateItems() |
| 188 | } |
| 189 | |
| 190 | // |
| 191 | // TreeNode methods |
nothing calls this directly
no test coverage detected