[mythtv] Trying to document theme format

Michael J. Hammel mythtv at graphics-muse.com
Fri Oct 17 00:08:03 EDT 2003


I'm trying to document how themes are designed.  I'm not an XML
developer, so if there is a desired format for how such a document
should look I'm not aware of it.  I'm just looking to write a short
Howto for building themes for MythTV.

Here is what I've deduced from the existing themes so far.  The one
question I have for the theme.xml file is what the buttondef "offset"
option is for (image or text or both) and relative to - the upper left
corner for the buttondef box?  I haven't looked into the ui.xml file. 
Some themes have other xml files and I'm not sure what those are for
yet.  I only started digging into this today.

Side note:  the font sizes specified are defaults only, correct?  The
user can change these in the Setup module - or at least that's the way
it appears (perhaps those settings don't affect buttons).


Two required XML files for a theme:
   a. theme.xml:  Main user interface description
   b. ui.xml:  Program Guide interface description


theme.xml
---------
Note:  image sizes are not defined unless otherwise specified.

background
   Describes the background area for all screens
   ARGUMENTS:
      style:  Normal, Tiled
   OPTIONS:
      image:  image to use for background (size: 800x600)
      buttonarea:  uuperX, upperY, width, height

titles
   Defines title bars to use on each screen.
   OPTIONS:
      position:  X,Y position for text to start
      image:  images to use for titles
         OPTIONS:
            mode:  screen associated with this image
               One of the following
               MAIN - main menu
               SETUP - main setup
               TV - TV top level menu
               TVSETUP - setup for TV module
               SCHEDULE - EPG menu
               MUSIC - Music module
               MUSIC_SETTINGS - setup for Music module
               GALLERY - Photo album module
               GAMES - Games module
               WEATHER - Weather module
               VIDEO - Video module
               VIDEO_SETTINGS - Video setup 


genericbutton
   Describes generic button appearance for all screens
   OPTIONS:
      watermarkposition: X, Y screen location for watermarks
      normal:  image used when button is not active
      active:  image used when button is active
      text:  describes text area within button
         OPTIONS:
            area:  X, Y, width, height
            color:  text color
            fontname:  text font
            fontsize:  default font size
            bold:  yes, no
            italics:  yes, no
            centered:  yes, no
            outline:  if defined, sets outline for text block
               OPTIONS:
                  color:  outline color
                  size:  pixel width of outline
            shadow:  if defined, places a shadow behind text box
               OPTIONS:
                  color:  shadow color
                  offset:  shadow offset
                  alpha:  transparency level


logo
   Defines logo image to use on all pages
   OPTIONS:
      image:  image to use for logo
      position:  X,Y position on screen


uparrow
   Defines up arrow image to use when a menu has more (non-visible)
options
   OPTIONS:
      image:  image to use for up arrow
      position:  X,Y position on screen

downarrow
   Defines down arrow image to use when a menu has more (non-visible)
options
   OPTIONS:
      image:  image to use for down arrow
      position:  X,Y position on screen


buttondef
   ARGUMENTS:
      name:  defines which button this section describes
         One of the following for main menu:
            TV
            MUSIC
            GAME
            IMAGES
            VIDEO
            WEATHER
            SETUP
         One of the following for EPG:
            TV_SCHEDULE
            TV_PLAYBACK
            TV_CONFLICTS
            TV_DELETE
         One of the following for Music module:
            MUSIC_PLAYLIST
            MUSIC_RIP
         One of the following for Video module:
            VIDEO
            VIDEO_MANAGER
            VIDEO_BROWSER
            VIDEO_LIST
   OPTIONS:
      image:  Image to use in button, if any (can be transparent image)
      watermarkimage:  snazzy graphic associated with this button
      offset: X,Y offset from buttons upper left corner (I think).





More information about the mythtv-dev mailing list