grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [GITGRUB] New menu interface (implementation)


From: Bean
Subject: Re: [GITGRUB] New menu interface (implementation)
Date: Thu, 24 Sep 2009 01:10:47 +0800

Hi,

Update:
Add widget infrastructure, currently only implement two widget, screen
and panel.
Support loading from theme file.

I've packed the resource and upload it at:

http://grub4dos.sourceforge.net/menu.zip

To use it, unzip to /menu and add the following line in grub.cfg:

. /menu/menu.cfg

Select "text mode" or "graphic mode", it would draw the menu based on
config file, press any key and it returns to grub menu.

Here is the sample theme file:

screen
{
  panel
  {
    x = "5"
    y = "5"
    width = "-5"
    height = "-5"

    top_left = "/menu/menu_tl.png,,black/cyan/#0x250F"
    top = "/menu/menu_t.png,tiling,black/cyan/#0x2501"
    top_right = "/menu/menu_tr.png,,black/cyan/#0x2513"
    left = "/menu/menu_l.png,tiling,black/cyan/#0x2503"
    right = "/menu/menu_r.png,tiling,black/cyan/#0x2503"
    bottom_left = "/menu/menu_bl.png,,black/cyan/#0x2517"
    bottom = "/menu/menu_b.png,tiling,black/cyan/#0x2501"
    bottom_right = "/menu/menu_br.png,tiling,black/cyan/#0x251B"

    background = "/menu/back.png,,#808080/cyan"

    panel
    {
      x = 1
      y = 1
      width = -1
      height = 2
      background = ",blue"
    }
  }
}

The most complex property is the background image, for example:

top = "/menu/menu_t.png,tiling,black/cyan/#0x2501"

/menu/menu_t.png - image
tiling - scaling method (can be empty, center, tiling, minfit, maxfit)
black/cyan/#0x2501 - color, the full format is something like this:

#808080/black/cyan/A

#808080 - color in graphic mode
black - foreground in text mode
cyan - background in text mode
A - fill char in text mode

-- 
Bean

gitgrub home: http://github.com/grub/grub/
my fork page: http://github.com/bean123/grub/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]