lib/knj/gtk2_tv.rb in knjrbfw-0.0.49 vs lib/knj/gtk2_tv.rb in knjrbfw-0.0.50
- old
+ new
@@ -1,6 +1,10 @@
+#This module contains various helper-methods for handeling stuff regarding treeviews.
module Knj::Gtk2::Tv
+ #Initializes a treeview with a model and a number of columns. Returns a hash containing various data like the renderers.
+ #===Examples
+ # Knj::Gtk2::Tv.init(treeview, ["ID", "Name"])
def self.init(tv, columns)
ret = {
:renderers => []
}
@@ -60,10 +64,13 @@
end
return ret
end
+ #Appends data to the treeview.
+ #===Examples
+ # Knj::Gtk2::Tv.append(treeview, [1, "Kasper"])
def self.append(tv, data)
iter = tv.model.append
count = 0
data.each do |value|
@@ -84,10 +91,13 @@
end
return {:iter => iter}
end
+ #Gets the selected data from the treeview.
+ #===Examples
+ # Knj::Gtk2::Tv.sel(treeview) #=> [1, "Kasper"]
def self.sel(tv)
selected = tv.selection.selected_rows
if !tv.model or selected.size <= 0
return nil
@@ -216,18 +226,22 @@
end
end
end
end
+#Shortcuts on the actual treeview-objects.
class Gtk::TreeView
+ #Shortcut to do Knj::Gtk2::Tv.sel(treeview)
def sel
return Knj::Gtk2::Tv.sel(self)
end
+ #Shortcut to do Knj::Gtk2.append(treeview, [data1, data2])
def append(data)
return Knj::Gtk2::Tv.append(self, data)
end
+ #Shortcut to do Knj::Gtk2.init(treeview, columns_array)
def init(cols)
return Knj::Gtk2::Tv.init(self, cols)
end
end
\ No newline at end of file