(m *Scene)
| 1206 | } |
| 1207 | |
| 1208 | func (tr *Tree) contextMenu(m *Scene) { |
| 1209 | if tr.IsReadOnly() || tr.rootIsReadOnly() { |
| 1210 | tr.contextMenuReadOnly(m) |
| 1211 | return |
| 1212 | } |
| 1213 | tri := tr.This.(Treer) |
| 1214 | NewFuncButton(m).SetFunc(tr.AddChildNode).SetText("Add child").SetIcon(icons.Add).SetEnabled(tr.HasSelection()) |
| 1215 | NewFuncButton(m).SetFunc(tr.InsertBefore).SetIcon(icons.Add).SetEnabled(tr.HasSelection()) |
| 1216 | NewFuncButton(m).SetFunc(tr.InsertAfter).SetIcon(icons.Add).SetEnabled(tr.HasSelection()) |
| 1217 | NewFuncButton(m).SetFunc(tr.Duplicate).SetIcon(icons.ContentCopy).SetEnabled(tr.HasSelection()) |
| 1218 | NewFuncButton(m).SetFunc(tr.DeleteNode).SetText("Delete").SetIcon(icons.Delete). |
| 1219 | SetEnabled(tr.HasSelection()) |
| 1220 | NewSeparator(m) |
| 1221 | NewFuncButton(m).SetFunc(tri.Copy).SetIcon(icons.Copy).SetKey(keymap.Copy).SetEnabled(tr.HasSelection()) |
| 1222 | NewFuncButton(m).SetFunc(tri.Cut).SetIcon(icons.Cut).SetKey(keymap.Cut).SetEnabled(tr.HasSelection()) |
| 1223 | paste := NewFuncButton(m).SetFunc(tri.Paste).SetIcon(icons.Paste).SetKey(keymap.Paste) |
| 1224 | cb := tr.Scene.Events.Clipboard() |
| 1225 | if cb != nil { |
| 1226 | paste.SetState(cb.IsEmpty(), states.Disabled) |
| 1227 | } |
| 1228 | NewSeparator(m) |
| 1229 | NewFuncButton(m).SetFunc(tr.editNode).SetText("Edit").SetIcon(icons.Edit).SetEnabled(tr.HasSelection()) |
| 1230 | NewFuncButton(m).SetFunc(tr.inspectNode).SetText("Inspect").SetIcon(icons.EditDocument).SetEnabled(tr.HasSelection()) |
| 1231 | NewSeparator(m) |
| 1232 | |
| 1233 | NewFuncButton(m).SetFunc(tr.OpenAll).SetIcon(icons.KeyboardArrowDown).SetEnabled(tr.HasSelection()) |
| 1234 | NewFuncButton(m).SetFunc(tr.CloseAll).SetIcon(icons.KeyboardArrowRight).SetEnabled(tr.HasSelection()) |
| 1235 | } |
| 1236 | |
| 1237 | // IsRoot returns true if given node is the root of the tree, |
| 1238 | // creating an error snackbar if it is and action is non-empty. |
nothing calls this directly
no test coverage detected