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: Michal Suchanek
Subject: Re: [GITGRUB] New menu interface (implementation)
Date: Thu, 8 Oct 2009 13:26:20 +0200

2009/10/8 Bean <address@hidden>:
> Hi,
>
> Update:
>
> Rename position to extend, values are:
> first: extend the first child widget (near)
> all: extend all children widgets
> last: extend the last child widget (far), this is default value if not set
>
> For example:
> direction = left_to_right
> extend = all
>
> Add style support, each widget has style property, if it's set, menu
> would looks through the style section for additional property, for
> example:
>
> screen {
>  background = "/menu/back.png,,blue"
>  direction = bottom_to_top
>
>  panel {
>    height = 2
>    halign = extend
>    style = text_border
>  }
>
>  panel {
>    direction = left_to_right
>    extend = all
>    valign = extend
>    halign = extend
>
>    panel {
>      valign = extend
>      halign = extend
>      style = text_border,padding
>
>      term {
>        width = 100%
>        height = 100%
>      }
>    }
>
>    panel {
>      valign = extend
>      halign = extend
>      style = text_border,padding
>      border_width = 2/0
>      border_height = 2/0
>      border_color = brown:red
>
>      term {
>        width = 100%
>        height = 100%
>        font = "Times Regular 18"
>      }
>    }
>  }
> }
>
> style {
>  text_border {
>    top_left = ",,cyan/blue,#0x250F:,,light-gray/blue,#0x2554"
>    top = ",tiling,cyan/blue,#0x2501:,,light-gray/blue,#0x2550"
>    top_right = ",,cyan/blue,#0x2513:,,light-gray/blue,#0x2557"
>    left = ",tiling,cyan/blue,#0x2503:,,light-gray/blue,#0x2551"
>    right = ",tiling,cyan/blue,#0x2503:,,light-gray/blue,#0x2551"
>    bottom_left = ",,cyan/blue,#0x2517:,,light-gray/blue,#0x255A"
>    bottom = ",tiling,cyan/blue,#0x2501:,,light-gray/blue,#0x2550"
>    bottom_right = ",tiling,cyan/blue,#0x251B:,,light-gray/blue,#0x255D"
>  }
>
>  padding {
>    padding_top = 8/0
>    padding_bottom = 8/0
>    padding_left = 8/1
>    padding_right = 8/1
>  }
>
>  term {
>    color = "cyan/blue:light-gray/blue"
>  }
> }
>
> panel that has "style = text_border,padding" would inherit the
> properties in text_border and padding section. If style is not set, it
> would search the section with the same class name (term for instance).
>

I am not sure this is the right approach.

Style writers should be free to style any widget without special
support in the widget.

If there is special styling property it should not refer to a
particular visual representation. They should specify the purpose of
the widget and the style should decide how widgets of that type are
visually realized.

Thanks

Michal




reply via email to

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