Home · All Classes · Grouped Classes · Annotated · Functions

Tutorial: Theming Files

Examples of the:

required to construct a new theme, are provided below.

Theme Project File

A project file in <qtopia-root-dir>/etc/themes/ is required to define the files to be installed for the theme:

    !builtin_theme {
        PACKAGE_NAME=<name of the package>
        PACKAGE_DEPENDS=<name of package this depends upon>
        PACKAGE_DESCRIPTION=<description of the theme package>

    <theme name>conf.files=$${QTOPIA_DEPOT_PATH}/etc/themes/<theme name>.conf
    <theme name>conf.path=/etc/themes
    <theme name>data.files=$${QTOPIA_DEPOT_PATH}/etc/themes/<theme name>/*.xml\
    $${QTOPIA_DEPOT_PATH}/etc/themes/<theme name>/*rc
    <theme name>data.path=/etc/themes/<theme name>
    <theme name>pics.files=$${QTOPIA_DEPOT_PATH}/pics/themes/<theme name>
    <theme name>pics.path=/pics/themes

    INSTALLS+=<theme name>conf <theme name>data
    PICS_INSTALLS+=<theme name>pics

For example, the Portal theme project file: <qtopia-root-dir>/etc/themes/portal/portal.pro contains:

    !builtin_theme {
        PACKAGE_DESCRIPTION=Portal theme for Qtopia Phone

    portaldata.files=$${QTOPIA_DEPOT_PATH}/etc/themes/portal/*.xml \

    INSTALLS+=portalconf portaldata

Theme Configuration File

A configuration file in <qtopia-root-dir>/etc/themes/ is required to define a theme as follows:

    Name = <name of theme (translatable)>
    Style = <name of the Style plug-in that handles widget drawing>
    ColorScheme = <list of color schemes associated with the theme>
    Backgrounds = <list of background images associated with the theme>
    TitleConfig = <path to the title configuration file>
    HomeConfig = <path to the home screen configuration file>
    ContextConfig = <path to the context bar configuration file>
    DialerConfig = <path to the touch screen dialer configuration file>
    CallScreenConfig = <path to the call screen configuration file>
    DecorationConfig = <path to the window decoration configuration file>
    SecondaryTitleConfig = <optional - path to the secondary title configuration file>
    SecondaryHomeConfig = <optional - path to the secondary home screen configuration file>
    BootChargerConfig = <path to the boot charger configuration file>
    IconPath = <list of semi-colon separated paths to substitute icons>

All paths are relative to the etc/themes directory except IconPath which is relative to <qtopia-root-dir>.

For example, the Qtopia theme is defined by: <qtopia-root-dir>/etc/themes/qtopia.conf:

    Name[] = Qtopia
    Style = Qtopia
    ColorScheme = Qtopia.scheme|Carmine.scheme|Crisp.scheme|Fern.scheme|Lavender.scheme|Saffron.scheme|SteelBlue.scheme
    Backgrounds = background|ladybug
    TitleConfig = qtopia/title.xml
    HomeConfig = qtopia/home.xml
    ContextConfig = qtopia/context.xml
    DialerConfig = qtopia/dialer.xml
    CallScreenConfig = qtopia/callscreen.xml
    DecorationConfig = qtopia/decorationrc
    SecondaryTitleConfig = qtopia/secondarytitle.xml
    SecondaryHomeConfig = qtopia/secondaryhome.xml
    BootChargerConfig = qtopia/bootcharger.xml

The title, home screen, call screen, dialer and context bar share the same theming format while the window decoration and widget themes have their own formats.

Copyright © 2008 Nokia Trademarks
Qtopia 4.3.3