Branding

From FreeCAD Documentation
Revision as of 13:53, 2 October 2006 by Xorx (talk) (Icons: Added Definition)
Jump to: navigation, search

This article describes the Branding of FreeCAD. That is how to give FreeCAD a unique look.

Program Name

Images

All image resources are compiled into FreeCAD. This reduces delayed loading and keeps the installation compact. The images are included in XPM-Format which is basically a text format that uses C-syntax. You can basically draw this images with a text editor, but it is more comfortable to create the images with your favorite graphics program and convert it later to XPM format.

For conversion you can use the ImageConv tool wich is included with freecad. You can find it under

/trunk/src/Tools/ImageTools/ImageConv

It can not only convert images but also automatically update the BmpFactoryIcons.cpp file, where the images are registered.

Icons

The main application icon FCIcon that appears in window titles and other places is defined in

/trunk/src/Gui/Icons/images.cpp

and starts with the line

static const char *FCIcon[]={

Replace it with your favourite icon, recompile freecad and the next step to create your own brand is done. There are many other icons in this file that you might change to your gusto.

If you need to add new icons, you have to register it in

/trunk/src/Gui/Icons/BmpFactoryIcons.cpp

so that you can access from FreeCAD.

Splash Screen

The splash screen image, that is also used as background for the About Box is located in the file

/trunk/src/Gui/Icons/developers.h

and starts with the line

static const char* const splash_screen[] = {

Replace the contents of this static array with an XPM image of your choice to make FreeCAD looking more how you like it.

Background Image

The background image appears, when no document window is open. Like the splash screen it is defined in developers.h in the section starting with:

static const char* const background[]={

You should choose a low contrast image for the background. Otherwise it might irritate the user.