# File lib/json/editor.rb, line 1009
1009:       def initialize(encoding)
1010:         @changed  = false
1011:         @encoding = encoding
1012:         super(TOPLEVEL)
1013:         display_title
1014:         set_default_size(800, 600)
1015:         signal_connect(:delete_event) { quit }
1016: 
1017:         vbox = VBox.new(false, 0)
1018:         add(vbox)
1019:         #vbox.border_width = 0

1020: 
1021:         @treeview = JSONTreeView.new(self)
1022:         @treeview.signal_connect('cursor-changed''cursor-changed') do
1023:           display_status('')
1024:         end
1025: 
1026:         menu_bar = create_menu_bar
1027:         vbox.pack_start(menu_bar, false, false, 0)
1028: 
1029:         sw = ScrolledWindow.new(nil, nil)
1030:         sw.shadow_type = SHADOW_ETCHED_IN
1031:         sw.set_policy(POLICY_AUTOMATIC, POLICY_AUTOMATIC)
1032:         vbox.pack_start(sw, true, true, 0)
1033:         sw.add(@treeview)
1034: 
1035:         @status_bar = Statusbar.new
1036:         vbox.pack_start(@status_bar, false, false, 0)
1037: 
1038:         @filename ||= nil
1039:         if @filename
1040:           data = read_data(@filename)
1041:           view_new_model Editor.data2model(data)
1042:         end
1043:       end