Sha256: d0191377c34499391bb78ab611ba58fad5dc017ea183d9f19625d6a4ceed25ea
Contents?: true
Size: 675 Bytes
Versions: 9
Compression:
Stored size: 675 Bytes
Contents
module Adva module View class Menu class Items < Array def insert(text, url, options, block) item = [text, url, options, block] if ix = options.delete(:at) super(ix, item) elsif ix = index(options.delete(:before)) super(ix, item) elsif ix = index(options.delete(:after)) super(ix + 1, item) elsif ix = index(options.delete(:replace)) self[ix] = item else push(item) end end def index(text) each_with_index { |item, ix| return ix if item[0] == text } and nil end end end end end
Version data entries
9 entries across 9 versions & 1 rubygems