Table of Contents

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 - in other words, a self-contained guiDesigner project that defines how the themes and groups will be presented in the Theme Library.

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.

Groups

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 GUI objects within the group (buttons, etc) 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 asterisk 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 an 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.

Test Your Theme

After copying your project to the guiDesigner themes folder, you can test it by:

  1. Close guiDesigner
  2. Launch guiDesigner again.
  3. You should now see your theme in the theme library.