Kate Theme Extensions
Kate supports SummerBoard themes (used with permission from Nullriver Inc) and extends them to support more features than originally planned to allow greater customization and control over the display for the theme creators.
The extensions are designed in a way that the theme designed for FaceLift will still work with SummerBoard flawlessly, but will lack certain visual enhancements. If you are a theme author with a well-known released theme and wish to add the support for Kate extensions, contact us at for a free license (don't forget to provide a link to your creation!).
Here is an example of what can be done: Buuf Psychodelic. And we'd like to publically apologize to Louie Mantia for making his theme look horrible!
How to extend your SummerBoard theme
To let FaceLift know about some stuff you want to control, simply include a file named
Info.plist in your theme's folder. This file should be a dictionary containing one or more keys defined below. Here is a sample file for you to try and play with:
Info.plist.
Icon Labels
To customize icon labels, you can add the following items to the Info.plist under the key
LabelBackground:
- StrokeThickness float - thickness of the border, or 0 to disable border
- CornerRadius float - radius of the background corners, 0 to disable curved corners, -1 to use default (½ of the height of the background)
- FillColor dict - color for the label background fill:
- A float - alpha (0.0 - 1.0)
- R float - red component (0.0 - 1.0)
- G float - green component (0.0 - 1.0)
- B float - blue component (0.0 - 1.0)
- -or-
- WebColor string - web format color string (#FF00FF)
- StrokeColor dict - color for the label border stroke:
- A float - alpha (0.0 - 1.0)
- R float - red component (0.0 - 1.0)
- G float - green component (0.0 - 1.0)
- B float - blue component (0.0 - 1.0)
- -or-
- WebColor string - web format color string (#FF00FF)
These are the options for the
Label (related to the label text itself):
- Color dict - color for the label text:
- A float - alpha (0.0 - 1.0)
- R float - red component (0.0 - 1.0)
- G float - green component (0.0 - 1.0)
- B float - blue component (0.0 - 1.0)
- -or-
- WebColor string - web format color string (#FF00FF)
- DockColor dict - color for the label text when the icon is in the Dock:
- A float - alpha (0.0 - 1.0)
- R float - red component (0.0 - 1.0)
- G float - green component (0.0 - 1.0)
- B float - blue component (0.0 - 1.0)
- -or-
- WebColor string - web format color string (#FF00FF)
- Font dict - font for the label text:
- Name string - font family name as defined in /System/Library/Fonts/CGFontCache.plist, for example, MarkerFeltThin
- Size float - font size (default 11)
- Style string - font style, must be either
normal, bold or italic
Calendar Icon
Previously, the Calendar icon was pretty limited in a sense that you couldn't customize how to draw the day of the week and the date… which is no longer the case with the key
CalendarIcon in Info.plist. There are two dictionaries in that dictionary,
Date and
Weekday, each of which may contain the following keys:
- Color dict - color for the text:
- A float - alpha (0.0 - 1.0)
- R float - red component (0.0 - 1.0)
- G float - green component (0.0 - 1.0)
- B float - blue component (0.0 - 1.0)
- -or-
- WebColor string - web format color string (#FF00FF)
- ShadowColor dict - color for the shadow under the text. If not present, shadow is not drawn:
- A float - alpha (0.0 - 1.0)
- R float - red component (0.0 - 1.0)
- G float - green component (0.0 - 1.0)
- B float - blue component (0.0 - 1.0)
- -or-
- WebColor string - web format color string (#FF00FF)
- ShadowBlur float - the shadow blur (0.0 - 5.0)
- ShadowOffset dict - the shadow location:
- X float - the horizontal offset of the shadow, positive values move the shadow to the right, negative - to the left
- Y float - the vertical offset of the shadow, positive values move the shadow down, negative - up
- Font dict - font for the text:
- Name string - font family name as defined in /System/Library/Fonts/CGFontCache.plist, for example, MarkerFeltThin
- Size float - font size (default 11)
- Style string - font style, must be either
normal, bold or italic
- Rect dict - zone used for the text drawing:
- X float - the horizontal "origin" of the rectangle - 0 is the leftmost side
- Y float - the vertical "origin" of the rectangle - 0 is the topmost side
- Width float - width of the rectangle
- Height float - height of the rectangle
Questions? Want more control?
We encourage you to study the
example. And if you want more customization, let us know - we will be expanding the specification in the future releases!