module Plugin::GUI::Cuscadable::ExtendedCuscadable

Public Instance Methods

cuscaded() click to toggle source

インスタンスの一覧を取得する

Return

インスタンスの配列

# File core/plugin/gui/cuscadable.rb, line 79
def cuscaded
  @cuscaded ||= {}          # slug => instance
end
exist?(slug) click to toggle source

そのスラッグを持つインスタンスがあるかどうかを調べる

Args

slug

スラッグ

Return

スラッグslugを持つインスタンスが既にあれば真

# File core/plugin/gui/cuscadable.rb, line 88
def exist?(slug)
  @cuscaded.has_key?(slug) end
instance(slug = nil, name=slug, plugin=nil) click to toggle source

タブ slug に対するインターフェイスを作成。 slug に対応するタブがない場合は作成する。

Args

slug

スラッグ(Symbol)

name

タブのラベル(String)

plugin

タブを作成したプラグイン

# File core/plugin/gui/cuscadable.rb, line 51
def instance(slug = nil, name=slug, plugin=nil)
  if not slug
    slug = "__#{self.to_s}_#{Process.pid}_#{Time.now.to_i.to_s(16)}_#{rand(2 ** 32).to_s(16)}".to_sym
    return instance if cuscaded.has_key? slug end
  type_strict slug => Symbol, name => :to_s
  if cuscaded.has_key? slug
    imaginally = cuscaded[slug]
    if name != slug and name != imaginally
      imaginally.name = name
    end
    imaginally
  else
    new(slug, name.to_s, plugin) end end
regist(tab)
Alias for: register
register(tab) click to toggle source

新しく作成したタブを新規登録する

Args

tab

タブ

Return

self

# File core/plugin/gui/cuscadable.rb, line 70
def register(tab)
  cuscaded[tab.slug] ||= tab
  self end
Also aliased as: regist