MythUI XML Examples

From MythTV Official Wiki
Revision as of 18:43, 14 August 2008 by GBee (talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

For documentation of the mythui theme format, see:

This page will hold a few examples of different layouts possible.

MythUIButtonList - <buttonlist2>

<buttonlist2 name="column_example" from="basebuttonlist2">
   <spacing>2</spacing> <!-- Spacing between entries -->
   <layout>vertical</layout> <!-- Vertical is the default, so this could be omitted -->
   <buttonarea>x2,y2,w2,h2</buttonarea> <!-- Area in which buttons are layed out, 
   <statetype name="buttonitem"> <!-- Describes the layout, content of the buttons -->
       <state name="active">
           <statetype name="buttoncheck">
           <textarea name="column1" from="buttontext">
           <textarea name="column2" from="buttontext">
       <state name="selected" from="active">
           <textarea name="column1" from="buttontext" /> <!-- Picks up font change in selected state -->
           <textarea name="column2" from="buttontext" />

N.B. This example inherits from basebuttonlist which saves us defining the checkbox images, fonts, arrows etc. These can all be overridden.

<area> - Total widget area, includes arrows which should always displayed for touchscreens <spacing> - Spacing between entries. Zero is the default. (Optional) <layout> - Grid, Horizontal,Vertical. Vertical is the default (Optional) <buttonarea> - Area relative to the total area that the buttons may use, the rest is free for arrows <statetype name="buttonitem"> - Describes the layout, content of the buttons

Use of named textareas

Every button has a default textarea, buttontext but in addition you can define an infinite number of textareas which can be referred to by name in SetText() e.g.

m_buttonList->SetText("This is the default textarea"); m_buttonList->SetText("This is column one", "column1"); m_buttonList->SetText("This is column two", "column2");

I suggest giving them more meaningful names, i.e. If they display name and description of a video then "title", "description" would be clearer to the themer.