Hi,
Update:
Add sub menu support, generate widgets dynamically using menu entries.
Now grub.cfg should look like this:
menuentry "AAA" {
set root=(hd0,1)
chainloader +1
}
menuentry "BBB" --class ubuntu {
true
}
. /menu/menu.cfg
The menu have three items, AAA, BBB and Tools, which is a menu
appended in menu.cfg.
Tools are a submenu, its content is defined using menu section:
menu {
Tools {
"Toggle Mode" {
command = menu_toggle_mode
}
"Terminal" {
command = "menu_popup term_window"
}
"Change Theme" {
Default {
command="load_config /menu/blue.txt\nmenu_refresh"
}
Green {
command="load_config /menu/green.txt\nmenu_refresh"
}
White {
command="load_config /menu/white.txt\nmenu_refresh"
}
}
"Layout Demo" {
command = "menu_popup layout_test"
}
Halt {
command = "halt"
}
Reboot {
command = "reboot"
}
}
}
merge_config command would append this with user defined menu items.
The screen section is very simple now:
screen {
panel {
extend = 1
valign = center
halign = center
panel {
class = frame
id = __menu__
}
}
}
command menu_create would scan screen for id __menu__, and add widgets
according to the menu content. The generated widget entry looks like
this:
panel
{
class = select
command = COMMAND
image { class = CLASS }
text { text = TITLE }
}
The submenu is this:
panel
{
class = frame
command = "menu_popup -r menu_tree N"
}
--
Bean
gitgrub home: http://github.com/grub/grub/
my fork page: http://github.com/bean123/grub/
_______________________________________________
Grub-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/grub-devel