def add_columns(treeview)
model = treeview.model
renderer = Gtk::CellRendererText.new
renderer.xalign = 0.0
col_offset = treeview.insert_column(-1, 'Holiday',
renderer,
'text' => HOLIDAY_NAME_COLUMN)
column = treeview.get_column(col_offset - 1)
column.clickable = true
[
['Alex', true ],
['Havoc', false],
['Tim', true ],
['Owen', false],
['Dave', false],
].each_with_index do |args, i|
person, european = *args
renderer = Gtk::CellRendererToggle.new
renderer.xalign = 0.0
eval(%Q[def renderer.column; #{ALEX_COLUMN + i}; end])
renderer.signal_connect('toggled') do |cell, path|
item_toggled(cell, path, model)
end
attributes = {
'active' => (ALEX_COLUMN + i),
'visible' => VISIBLE_COLUMN,
}
if european
attributes['activatable'] = WORLD_COLUMN
end
col_offset = treeview.insert_column(-1, person, renderer, attributes)
column = treeview.get_column(col_offset - 1)
column.sizing = Gtk::TreeViewColumn::FIXED
column.fixed_width = 50
column.clickable = true
end
end