class Gtk::ListList

Public Instance Methods

column_schemer() click to toggle source
# File core/mui/gtk_listlist.rb, line 8
def column_schemer
  [{:kind => :active, :widget => :boolean, :type => TrueClass, :label => '表示'},
   {:kind => :text, :type => String, :label => 'リスト名'},
   {:type => UserList},
  ].freeze
end
set_auto_getter(plugin, own = false, &proc) click to toggle source

「自分」のアカウントが関係するTwitterリストでこのリストビューを埋める。

Args

own

真なら自分が作成したTwitterリストのみをこのリストビューに入れる 偽なら自分が作成したものと自分がフォローしているTwitterリストも入れる

Return

self

# File core/mui/gtk_listlist.rb, line 22
def set_auto_getter(plugin, own = false, &proc)
  type_strict plugin => Plugin, proc => Proc
  add_hook(Service.primary, own, UserLists.new(Plugin.filtering(:following_lists, UserLists.new).first), &proc)
  create = plugin.add_event(:list_created) { |service, lists|
    if destroyed?
      error "gtk widget already destroyed."
    else
      add_hook(service, own, UserLists.new(lists), &proc) end }
  destroy = plugin.add_event(:list_destroy){ |service, list_ids|
    if destroyed?
      error "gtk widget already destroyed."
    else
      each{ |model, path, iter|
        remove(iter) if list_ids.include?(iter[2][:id]) } end }
  signal_connect(:destroy){ |w, event|
    plugin.detach(create).detach(destroy)
    true }
  self end