class DynamicMenu::Base

Public Class Methods

new(parent) click to toggle source
# File lib/dynamic_menu/base.rb, line 4
def initialize(parent)
  @parent ||= parent
  load_instance_vars
  @menuLinks = AdvancedArray.new
  build_menu
end

Public Instance Methods

add(*args) click to toggle source
# File lib/dynamic_menu/base.rb, line 38
def add *args
  args.each do |arg|
    @menuLinks << arg
  end
end
inherit_from(menu_name) click to toggle source
# File lib/dynamic_menu/base.rb, line 20
def inherit_from menu_name
  #@menuLinks ||= AdvancedHash::AdvancedHash.new
  file = Rails.root.to_s+"/app/menus/#{params[:controller]}/#{menu_name}.rb"
  load file
  links_obj = "#{menu_name}_menu".camelize.classify.constantize.new(@parent)
  @menuLinks.concat(links_obj.get_menu_links)
end
load_instance_vars() click to toggle source
# File lib/dynamic_menu/base.rb, line 28
def load_instance_vars
  @parent.instance_variables.each do |var|
    instance_variable_set(var.intern,@parent.instance_variable_get(var.intern))
  end
end
menu_instance() click to toggle source
method_missing(method, *args) click to toggle source
Calls superclass method
# File lib/dynamic_menu/base.rb, line 15
def method_missing(method, *args)
  super unless @parent.methods.index method
  @parent.send(method, *args)
end