def create_tree
model = Gtk::TreeStore.new(String, String, String, TrueClass)
tree_view = Gtk::TreeView.new
tree_view.set_model(model)
selection = tree_view.selection
selection.set_mode(Gtk::SELECTION_BROWSE)
tree_view.set_size_request(200, -1)
append_children(model, generate_index)
cell = Gtk::CellRendererText.new
cell.style = Pango::FontDescription::STYLE_ITALIC
column = Gtk::TreeViewColumn.new("Widget (double click for demo)", cell,
{
'text' => TITLE_COLUMN,
'style_set' => ITALIC_COLUMN,
})
tree_view.append_column(column)
selection.signal_connect('changed') do |selection|
iter = selection.selected
load_file(iter.get_value(FILENAME_COLUMN)) if iter
end
tree_view.signal_connect('row_activated') do |tree_view, path, column|
row_activated_cb(tree_view.model, path)
end
tree_view.expand_all
return tree_view
end