class FiltermodelDemo

Tree View/Filter Model

This example demonstrates how GtkTreeModelFilter can be used not
just to show a subset of the rows, but also to compute columns
that are not actually present in the underlying model.

Constants

AREA_COLUMN
HEIGHT_COLUMN
SQUARE_COLUMN
WIDTH_COLUMN

Public Class Methods

new(main_window) click to toggle source
# File gtk3/sample/gtk-demo/filtermodel.rb, line 17
def initialize(main_window)
  initialize_builder

  @window = @builder["window1"]
  @window.screen = main_window.screen

  set_treeview_column_data_from_int_to_string("treeviewcolumn1",
                                              "cellrenderertext1",
                                              WIDTH_COLUMN)
  set_treeview_column_data_from_int_to_string("treeviewcolumn2",
                                              "cellrenderertext2",
                                              HEIGHT_COLUMN)

  set_treeview_column_data_from_int_to_string("treeviewcolumn3",
                                              "cellrenderertext3",
                                              WIDTH_COLUMN)

  set_treeview_column_data_from_int_to_string("treeviewcolumn4",
                                              "cellrenderertext4",
                                              HEIGHT_COLUMN)

  set_treeview_column_data_from_int_to_string("treeviewcolumn5",
                                              "cellrenderertext5",
                                              AREA_COLUMN)

  column = @builder["treeviewcolumn6"]
  cell = @builder["cellrendererpixbuf1"]
  column.add_attribute(cell, "visible", SQUARE_COLUMN)

  @store = @builder["liststore1"]

  initialize_tree_model_filter_computed

  set_treeview_column_data_from_int_to_string("treeviewcolumn7",
                                              "cellrenderertext6",
                                              WIDTH_COLUMN)

  set_treeview_column_data_from_int_to_string("treeviewcolumn8",
                                              "cellrenderertext7",
                                              HEIGHT_COLUMN)

  initialize_tree_model_filter_selected
end

Public Instance Methods

run() click to toggle source
# File gtk3/sample/gtk-demo/filtermodel.rb, line 61
def run
  if !@window.visible?
    @window.show_all
  else
    @window.destroy
  end
  @window
end