CommandFusion Wiki

Documentation Resources

User Tools

Site Tools



This is an old revision of the document!

Theme Library

The Theme Library allows you to use pre-defined themes within your projects. These themes can be created and shared by anyone.
Note: Currently sharing is a manual process. We are working on ways to allow full sharing directly within guiDesigner. But for now, you need to share the theme GUI file and all images manually.

Accessing the Theme Library

There are two ways to access the Theme Library within guiDesigner:

  1. Click on the 'world' icon in the Theme Manager window (resize the theme manager window if it is not visible)
  2. Select Themes > Theme Library from the main menu

Built in Theme Library

guiDesigner comes with some built-in themes. To learn more about the inbuilt themes click here.

Creating Theme Library Entries

You can create your own library files for use in future projects, or to share with others. Basically, a theme library file is just a specially formatted GUI File.

Theme Details

The theme library name and author details are grabbed from the GUI File Project Properties. The project name is used as the theme name, whilst the author is used as the theme's author also.

Theme Previews

Any themes defined in the project will be visible in the Theme Library file, using the theme details to render the preview. You can also create a custom preview for a particular theme by creating a subpage and naming it theme_<themename>, where <themename> is the actual name of the theme definition you are creating the preview for. This allows you to show how a button theme looks with specific text, an overlay image, or amongst other objects such as a background image, etc. Anything you place on this subpage will be shown on the theme preview window within the Theme Library. If this subpage doesn't exist, the Theme Library will draw the appropriate GUI object based on the theme details alone.


You can also create 'groups' within the theme library file. Groups allow you to create a collection of GUI Objects which can be dragged and dropped in two ways:

  1. Dragged into the project tree - this will create a copy of the group as a new subpage in the open project
  2. Dragged onto an open page/subpage - this will create copies of all the objects within the group directly onto the page (rather than creating a subpage).

Good examples of use cases for the second method (dragging objects onto a page) are an Arrow Pad (containing left, right, up and down arrows, as well as an enter button) and a numpad (numbers 0 to 9, an asterix and hash).

To create a group in your theme library file, simply create a subpage called group_<groupname>, where <groupname> is the name you want to give your group. For example, group_arrowpad. This will then show up as a group item named arrowpad within the Theme Library, allowing users to simply drag the group onto a page in their project and have all the objects automatically added (or into their project tree to create a subpage containing all the objects).

Save Location

Once you have created your guiDesigner file for your Theme Library entry, you need to save a copy of it into the location where guiDesigner is installed, such as:
C:\Program Files (x86)\CommandFusion\themes

Create a new folder for each theme, and the first .gui file that is found in that directory will be loaded into the Theme Manager when you next launch guiDesigner.

You can also include a icon.png file in that directory, and it will be used as the icon image in front of the theme name within the Theme Library.
This icon file should be 16×16 pixels. Transparency is supported.

software/gui-designer/theme-library.1380607618.txt.gz · Last modified: 2013/10/01 06:06 by jarrod