Using Themes in Helm

Having to always change the default fonts, colours etc. to your particular style can get rather tiring. So we’ve introduced a new file called ‘theme.txt’ that gives you control over the default properties of Helm controls.

Where is the theme.txt file?

media_1390470766602.png
Here it is, in C:\Program Files (x86)\Rascular\HELM DesignerIt’s a simple text file that you can edit with Notepad, or your favourite text editor.

How the theme.txt file is structured

media_1390471950382.png

The basic format is the same for all settings: <Helm property>=<value>.The file is divided into sections. Each section has a heading title in square brackets like this [BUTTON].The [BASE] section contains settings that apply to all controls and the remaining sections set properties for specific control types. You’ll see that you can override the BASE setting in a control setting. An example of this is Look.Point. In BASE this is set to 18 and in TEXTFIELD it is set to 14, changing the default point size for that particular control type.

You can put any ‘assignment’ in any section, e.g. Font.Name=”Arial” in BASE. All sections that ‘derive’ from base will find it there. If a higher-level section redefines Font.Name, then that overrides the BASE definition for those objects.

How theme properties inherit

Here’s the complete list of theme-able properties and how they inherit. For example IMAGEPICKER derives from DROPDOWN which derives from BASE. So you can set a different default colour from an IMAGEPICKER, or you can let it inherit the value from DROPDOWN or from BASE.

Font has following sub-properties : Font.Color, Font.Name, Font.PointSize, Font.Opacity, Font.ShadowDistance, Font.Alignment

BASE
 Width
 Height
    |
    |___THUMBNAIL
    |     Color
    |     Font
    |
    |___DROPDOWN
    |     Color
    |     Font
    |     DropDownCount
    |        |
    |        |___IMAGEPICKER
    |
    |___IMAGE
    |     Color
    |     Image
    |     Stretch
    |
    |___LABEL
    |     Caption
    |     Font
    |
    |___ANALOGCONTROL 
    |     Knob
    |     Track
    |        |
    |        |___FADER
    |        |     Vertical 
    |        |    
    |        |___ROTARY
    |
    |___BUTTON
    |     Caption
    |     Stretch
    |     Font
    |     UpPicture
    |     DownPicture
    |        |
    |        |___BUTTONBUS
    |             DisabledPicture
    |             Buttons
    |             ButtonSpacing
    |                |
    |                |___RADIOGROUP
    |                |
    |                |___OUTPUTSELECTOR
    |                |     LockIcon
    |                |
    |                |___ROUTERBUS
    |                     ArmedPicture
    |                     LockIcon
    |___WEBBROWSER 
    |     Color
    |     Font
    |
    |___TEXTFIELD
    |      Color
    |      Font
    |
    |___BROWSER
    |     ThumbWidth
    |     ThumbHeight
    |     WidthGap
    |     HeightGap
    |     Color
    |     Font
    |        |___FILEBROWSER->BROWSER
    |        |
    |        |___ISBROWSER->BROWSER
    |
    |___METER
         LeftMargin
         RightMargin
         TopMargin
         BottomMargin
         TickStep
         TickWidth
         DecayRate
         PeakHoldTime
         PeakZone
         DrawTicks
         DrawNumbers
         PeakColor
         NormalColor
         Font

So when you find next yourself setting the same value again and again, just edit the theme.txt file, restart Helm Designer to accept the changes and relax.