# File lib/json/editor.rb, line 457
457:       def create
458:         add_item("Change node", ?n, &method(:change_node))
459:         add_separator
460:         add_item("Cut node", ?X, &method(:cut_node))
461:         add_item("Copy node", ?C, &method(:copy_node))
462:         add_item("Paste node (appending)", ?A, &method(:paste_node_appending))
463:         add_item("Paste node (inserting before)", ?I,
464:           &method(:paste_node_inserting_before))
465:         add_separator
466:         add_item("Append new node", ?a, &method(:append_new_node))
467:         add_item("Insert new node before", ?i, &method(:insert_new_node))
468:         add_separator 
469:         add_item("Collapse/Expand node (recursively)", ?e,
470:           &method(:collapse_expand))
471: 
472:         menu.show_all
473:         signal_connect(:button_press_event) do |widget, event|
474:           if event.kind_of? Gdk::EventButton and event.button == 3
475:             menu.popup(nil, nil, event.button, event.time)
476:           end
477:         end
478:         signal_connect(:popup_menu) do
479:           menu.popup(nil, nil, 0, Gdk::Event::CURRENT_TIME)
480:         end
481:       end