# File lib/json/editor.rb, line 456
      def create
        add_item("Change node", ?n, &method(:change_node))
        add_separator
        add_item("Cut node", ?X, &method(:cut_node))
        add_item("Copy node", ?C, &method(:copy_node))
        add_item("Paste node (appending)", ?A, &method(:paste_node_appending))
        add_item("Paste node (inserting before)", ?I,
          &method(:paste_node_inserting_before))
        add_separator
        add_item("Append new node", ?a, &method(:append_new_node))
        add_item("Insert new node before", ?i, &method(:insert_new_node))
        add_separator
        add_item("Collapse/Expand node (recursively)", ?e,
          &method(:collapse_expand))

        menu.show_all
        signal_connect(:button_press_event) do |widget, event|
          if event.kind_of? Gdk::EventButton and event.button == 3
            menu.popup(nil, nil, event.button, event.time)
          end
        end
        signal_connect(:popup_menu) do
          menu.popup(nil, nil, 0, Gdk::Event::CURRENT_TIME)
        end
      end