]> source.dussan.org Git - redmine.git/commit
Converted Menus to a Tree structure to allow submenus.
authorEric Davis <edavis@littlestreamsoftware.com>
Wed, 25 Nov 2009 05:36:44 +0000 (05:36 +0000)
committerEric Davis <edavis@littlestreamsoftware.com>
Wed, 25 Nov 2009 05:36:44 +0000 (05:36 +0000)
commit1f06cf889990d9640f7160c4969ed074fb68a7ca
tree034ebf2c1567b0d707af669b3ccd1f403237a866
parent5a9528cf3d9eb4afbec81cf1d79f7134596906f1
Converted Menus to a Tree structure to allow submenus.

* Bundle the rubytree gem
* Patched RubyTree's TreeNode to add some additional methods.
* Converted the menu rendering to walk the Tree of MenuItems to render
  each item
* Added a menu option for :parent_menu to make this menu a child of the parent
* Added a bunch of tests
* Made MenuItem a subclass of Tree::TreeNode in order to use it's methods
  directly
* Changed the exceptions in MenuItem#new to be ArgumentErrors instead of the
  generic RuntimeError

  #4250

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3090 e93f8b46-1217-0410-a6f0-8f06a7374b81
20 files changed:
config/environment.rb
lib/redmine/menu_manager.rb
test/unit/lib/redmine/menu_manager/mapper_test.rb [new file with mode: 0644]
test/unit/lib/redmine/menu_manager/menu_helper_test.rb [new file with mode: 0644]
test/unit/lib/redmine/menu_manager/menu_item_test.rb [new file with mode: 0644]
test/unit/lib/redmine/menu_manager_test.rb [new file with mode: 0644]
test/unit/lib/redmine_test.rb [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/.specification [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/COPYING [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/ChangeLog [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/History.txt [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/Manifest.txt [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/README [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/Rakefile [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/TODO [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/lib/tree.rb [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/lib/tree/binarytree.rb [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/setup.rb [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/test/test_binarytree.rb [new file with mode: 0644]
vendor/gems/rubytree-0.5.2/test/test_tree.rb [new file with mode: 0644]