class Glass::MenuItem

Constants

BUILT_IN_ACTIONS

Attributes

action[RW]
display_name[RW]
icon_url[RW]
id[RW]
remove_when_selected[RW]

Public Class Methods

create(action_sym, args) click to toggle source
# File lib/glass/menu_item.rb, line 12
def self.create(action_sym, args)
  args = BUILT_IN_ACTIONS.include?(action_sym) ? args.merge({action: action_sym.to_s.upcase}) : args.merge({id: action_sym})
  new(args)
end
new(opts={}) click to toggle source
# File lib/glass/menu_item.rb, line 17
def initialize(opts={})
  self.action                 = opts[:action] || "CUSTOM"
  self.id                     = opts[:id]
  self.display_name           = opts[:display_name]
  self.icon_url               = opts[:icon_url]
  self.remove_when_selected   = opts[:remove_when_selected] || false
end

Public Instance Methods

serialize() click to toggle source
# File lib/glass/menu_item.rb, line 29
def serialize
  hash = {action: action}
  hash.merge!({id: id,
               removeWhenSelected: remove_when_selected,
               values: [{ displayName: display_name, 
                          iconUrl: icon_url}]}) if action == "CUSTOM"
  hash
end