# File gtk/sample/gtk-demo/tree_store.rb, line 137
    def initialize
      # create window, etc
      super('Card planning sheet')

      vbox = Gtk::VBox.new(false, 8)
      vbox.border_width = 8
      add(vbox)

      vbox.pack_start(Gtk::Label.new("Jonathan's Holiday Card Planning Sheet"),
                      false, false, 0)

      sw = Gtk::ScrolledWindow.new(nil, nil)
      sw.shadow_type = Gtk::SHADOW_ETCHED_IN
      sw.set_policy(Gtk::POLICY_AUTOMATIC,
                    Gtk::POLICY_AUTOMATIC)
      vbox.pack_start(sw, true, true, 0)

      # create model
      model = create_model

      # create tree view
      treeview = Gtk::TreeView.new(model)
      treeview.rules_hint = true
      treeview.selection.mode = Gtk::SELECTION_MULTIPLE

      add_columns(treeview)

      sw.add(treeview)

      # expand all rows after the treeview widget has been realized
      treeview.signal_connect('realize') do
        treeview.expand_all
      end
      set_default_size(650, 400)
    end