66
67
68
69
70
71
72
73
74
75
|
# File 'ext/ruby/qtruby/rails_support/active_table_model.rb', line 66
def data(index, role=Qt::DisplayRole)
invalid = Qt::Variant.new
return invalid unless role == Qt::DisplayRole or role == Qt::EditRole
item = @collection[index.row]
return invalid if item.nil?
raise "invalid column #{index.column}" if (index.column < 0 ||
index.column >= @keys.size)
value = eval("item.attributes['%s']" % @keys[index.column].gsub(/\./, "'].attributes['"))
return Qt::Variant.new(value)
end
|