home *** CD-ROM | disk | FTP | other *** search
- Rainlendar Skinning Instructions
- --------------------------------
-
- This document gives some details how you can skin Rainlendar. Most of the
- skinning can be done via the GUI, which is probably the easiest way to modify
- the skins. However, sometimes it might be useful to do the changes directly
- in the skin files. The skin files weren't originally meant to be edited by
- humans, so some of the entries might be a bit unintuitive.
-
- The items (numbers) in an image can be placed either horizontally or
- vertically. The correct placement is determined from the dimensions of the
- image (i.e. whichever is bigger: height or width). The images must be cropped
- so that they don't hold any extra space and their width (or height) must be
- divisional with the number of items in the image. The current version of
- Rainlendar supports BMP, JPG and PNG files. Them PNGs can include alpha mask.
-
- Please note that if you disable all items on the calendar the window won't have
- any size and it will be impossible to quit it. You'll have to kill the process
- in order to quit the program.
-
- The name of the skin file can be anything that ends with ".ini".
- The skins must be placed in a separate subfolders, which will give the name
- to the skin. The same folder can also contain several skin ini-files.
-
- Only the ones that affect the outlook of the calendar are explained here.
- Check the Rainlendar's manual for info about the general settings.
-
- -----------------------------------------------------------------------
-
- BackgroundBitmapName
- --------------------
- The filename of the background picture to use behind the calendar. You can also
- select if you want the image to be tiled or stretched if it's too small for the
- calendar window. It's also possible to grab the desktop behind the calendar and
- use it as background.
-
- BackgroundMode
- --------------
- 0 = Tile background to fill the whole window
- 1 = Transparent background
- 2 = Stretch background to fill the whole window
- 3 = Solid color background
-
- BackgroundBevel
- ---------------
- 0 = No not draw bevel around solid color background
- 1 = Draw bevel around solid color background
-
- BackgroundSolidColor
- --------------------
- Color of the solid background defined as BGR hex-value (e.g. BackgroundSolidColor=888888)
-
- ToolTipFont
- -----------
- The font to be used with the tooltips. Check below for more info about the fonts.
-
- ToolTipFontColor
- ----------------
- Color of the tooltip font defined as BGR hex-value (e.g. ToolTipFontColor=000000)
-
- ToolTipBGColor
- --------------
- Color of the tooltip background defined as BGR hex-value (e.g. ToolTipBGColor=FFFFFF)
-
- DaysEnable
- ----------
- 0 = Do not show days in calendar
- 1 = Show days in calendar
-
- DaysX
- -----
- X-position of the days
-
- DaysY
- -----
- Y-position of the days
-
- DaysW
- -----
- Width of the days
-
- DaysH
- -----
- Height of the days
-
- DaysAlign
- ---------
- 0 = TopLeft
- 1 = TopRight
- 2 = TopCenter
- 16 = MiddleLeft
- 17 = MiddleRight
- 18 = Middle
- 32 = BottomLeft
- 33 = BottomRight
- 34 = BottomCenter
-
- DaysRasterizer
- --------------
- FONT = Use fonts to display the days
- BITMAP = Use bitmap to display the days
-
- DaysFont
- --------
- The font to be used with the days. Check below for more info about the fonts.
-
- DaysFontColor
- -------------
- Color of the font defined as BGR hex-value (e.g. DaysFontColor=44AAFF)
-
- DaysBitmapName
- --------------
- Filename of the days bitmap. The bitmap must contain either numbers from 0 to 9
- or from 0 to 31. All the numbers must be same size.
-
- DaysNumOfComponents
- -------------------
- Number of components in the bitmap. If the bitmap has numbers from 0 to 9, set
- this to 10. For numbers from 0 to 31 use value 32. Note that with 32 numbers
- the 0 is never used, so it may hold anything.
-
- DaysSeparation
- --------------
- The horizontal separation of the numbers (i.e. how close/far the numbers are
- placed from each other). This is only applied with bitmaps when the number of
- components is 10. The value can be negative.
-
- DaysIgnoreToday
- ---------------
- 0 = Draw a day for today
- 1 = Do not draw a day for today
-
- DaysIgnoreEvent
- ---------------
- 0 = Draw a day for event days
- 1 = Do not draw a day for event days
-
- TodayEnable
- -----------
- 0 = Do not show today in calendar
- 1 = Show today in calendar
-
- TodayAlign
- ----------
- 0 = TopLeft
- 1 = TopRight
- 2 = TopCenter
- 16 = MiddleLeft
- 17 = MiddleRight
- 18 = Middle
- 32 = BottomLeft
- 33 = BottomRight
- 34 = BottomCenter
-
- TodayRasterizer
- ---------------
- FONT = Use fonts to display the today
- BITMAP = Use bitmap to display the today
-
- TodayFont
- ---------
- The font to be used with the today. Check below for more info about the fonts.
-
- TodayFontColor
- --------------
- Color of the font defined as BGR hex-value (e.g. TodayFontColor=44AAFF)
-
- TodayBitmapName
- ---------------
- Filename of the today bitmap. The bitmap must contain either numbers from 0 to 9
- or from 0 to 31. It can also contain just one image.
-
- TodayNumOfComponents
- --------------------
- Number of components in the bitmap. If the bitmap has numbers from 0 to 9, set
- this to 10. For numbers from 0 to 31 use value 32. If the bitmap contains only
- one image use value 1.
-
- TodaySeparation
- ---------------
- The horizontal separation of the numbers (i.e. how close/far the numbers are
- placed from each other). This is only applied with bitmaps when the number of
- components is 10. The value can be negative.
-
- WeekdaysEnable
- --------------
- 0 = Do not show weekdays in calendar
- 1 = Show weekdays in calendar
-
- WeekdaysAlign
- -------------
- 0 = TopLeft
- 1 = TopRight
- 2 = TopCenter
- 16 = MiddleLeft
- 17 = MiddleRight
- 18 = Middle
- 32 = BottomLeft
- 33 = BottomRight
- 34 = BottomCenter
-
- WeekdaysRasterizer
- ------------------
- FONT = Use fonts to display the weekdays
- BITMAP = Use bitmap to display the weekdays
-
- WeekdaysFont
- ------------
- The font to be used with the today. Check below for more info about the fonts.
-
- WeekdaysFontColor
- -----------------
- Color of the font defined as BGR hex-value (e.g. WeekdaysFontColor=44AAFF)
-
- WeekdayNames
- ------------
- Weekday strings separated with '/'-char
- (E.g. WeekdayNames=Sun/Mon/Tue/Wed/Thu/Fri/Sat)
-
- WeekdaysBitmapName
- ------------------
- Filename of the weekdays bitmap. The bitmap must contain 7 items (one for each
- weekday).
-
- MonthEnable
- -----------
- 0 = Do not show month in calendar
- 1 = Show month in calendar
-
- MonthX
- ------
- X-position of the month
-
- MonthY
- ------
- Y-position of the month
-
- MonthAlign
- ----------
- 0 = TopLeft
- 1 = TopRight
- 2 = TopCenter
- 16 = MiddleLeft
- 17 = MiddleRight
- 18 = Middle
- 32 = BottomLeft
- 33 = BottomRight
- 34 = BottomCenter
-
- MonthRasterizer
- ---------------
- FONT = Use fonts to display the months
- BITMAP = Use bitmap to display the months
-
- MonthFont
- ---------
- The font to be used with the month. Check below for more info about the fonts.
-
- MonthFontColor
- --------------
- Color of the font defined as BGR hex-value (e.g. WeekdaysFontColor=44AAFF)
-
- MonthBitmapName
- ---------------
- Filename of the months bitmap. The bitmap must contain 12 items (one for each
- month).
-
- MonthNames
- ----------
- Names of the months separated with '/'-char
- (E.g MonthNames=January/February/March/April/May/June/July/August/September/October/November/December)
-
- YearEnable
- ----------
- 0 = Do not show year in calendar
- 1 = Show year in calendar
-
- YearX
- -----
- X-position of the year
-
- YearY
- -----
- Y-position of the year
-
- YearAlign
- ---------
- 0 = TopLeft
- 1 = TopRight
- 2 = TopCenter
- 16 = MiddleLeft
- 17 = MiddleRight
- 18 = Middle
- 32 = BottomLeft
- 33 = BottomRight
- 34 = BottomCenter
-
- YearRasterizer
- --------------
- FONT = Use fonts to display the years
- BITMAP = Use bitmap to display the years
-
- YearFont
- --------
- The font to be used with the year. Check below for more info about the fonts.
-
- YearFontColor
- -------------
- Color of the font defined as BGR hex-value (e.g. WeekdaysFontColor=44AAFF)
-
- YearBitmapName
- --------------
- Filename of the year bitmap. The bitmap must contain numbers from 0 to 9.
-
- DaysSeparation
- --------------
- The horizontal separation of the numbers (i.e. how close/far the numbers are
- placed from each other). The value can be negative.
-
- EventEnable
- -----------
- 0 = Do not show events in calendar
- 1 = Show events in calendar
-
- EventAlign
- ----------
- 0 = TopLeft
- 1 = TopRight
- 2 = TopCenter
- 16 = MiddleLeft
- 17 = MiddleRight
- 18 = Middle
- 32 = BottomLeft
- 33 = BottomRight
- 34 = BottomCenter
-
- EventRasterizer
- ---------------
- FONT = Use fonts to display the events
- BITMAP = Use bitmap to display the events
-
- EventFont
- ---------
- The font to be used with the events. Check below for more info about the fonts.
-
- EventFontColor
- --------------
- Color of the font defined as BGR hex-value (e.g. WeekdaysFontColor=44AAFF)
-
- EventBitmapName
- ---------------
- Filename of the events bitmap. The bitmap must contain either numbers from
- 0 to 9 or from 0 to 31. It can also contain just one image.
-
- EventNumOfComponents
- --------------------
- Number of components in the bitmap. If the bitmap has numbers from 0 to 9, set
- this to 10. For numbers from 0 to 31 use value 32. If the bitmap contains only
- one image use value 1.
-
- EventSeparation
- ---------------
- The horizontal separation of the numbers (i.e. how close/far the numbers are
- placed from each other). This is only applied with bitmaps when the number of
- components is 10. The value can be negative.
-
- EventInCalendar
- ---------------
- 0 = Do not show event texts inside the calendar
- 1 = Show event texts inside the calendar
-
- EventFont2
- ----------
- The font to be used with the events texts that are dran on the calendar. Check
- below for more info about the fonts.
-
- EventFontColor2
- ---------------
- Color of the font defined as BGR hex-value (e.g. WeekdaysFontColor=44AAFF)
-
- WeekNumbersEnable
- -----------------
- 0 = Do not show week numbers in calendar
- 1 = Show week numbers in calendar
-
- WeekNumbersAlign
- ----------------
- 0 = TopLeft
- 1 = TopRight
- 2 = TopCenter
- 16 = MiddleLeft
- 17 = MiddleRight
- 18 = Middle
- 32 = BottomLeft
- 33 = BottomRight
- 34 = BottomCenter
-
- WeekNumbersRasterizer
- ---------------------
- FONT = Use fonts to display the week numbers
- BITMAP = Use bitmap to display the week numbers
-
- WeekNumbersFont
- ---------------
- The font to be used with the week numbers. Check below for more info about the
- fonts.
-
- WeekNumbersFontColor
- --------------------
- Color of the font defined as BGR hex-value (e.g. WeekdaysFontColor=44AAFF)
-
- WeekNumbersBitmapName
- ---------------------
- Filename of the week numbers bitmap. The bitmap must contain either numbers
- from 0 to 9 or from 0 to 53. It can also contain just one image.
-
- WeekNumbersNumOfComponents
- --------------------------
- Number of components in the bitmap. If the bitmap has numbers from 0 to 9, set
- this to 10. For numbers from 0 to 53 use value 54.
-
- WeekNumbersSeparation
- ---------------------
- The horizontal separation of the numbers (i.e. how close/far the numbers are
- placed from each other). This is only applied with bitmaps when the number of
- components is 10. The value can be negative.
-
- TodoW
- -----
- The width of the todo window.
-
- TodoFont
- --------
- The font to be used with the todo items. Check below for more info about the
- fonts.
-
- TodoFontColor
- -------------
- Color of the font defined as BGR hex-value (e.g. TodoFontColor=44AAFF)
-
- TodoBitmapName
- --------------
- Name of the todo window's background image.
-
- TodoBitmapMargins
- -----------------
- Margins for the bitmap scaling. The margins are four comma separated values
- that define the non-scaled part of the images borders. e.g. TodoBitmapMargins=10,10,0,0
- would leave 10 pixels from the left and top borders as is and scale the rest.
-
- TodoTextMargins
- ---------------
- Margins for the text. The margins are four comma separated values
- that define the borders for the text (i.e. text is not drawn on the border area).
-
- TodoSeparation
- --------------
- The horizontal separation of the todo items (i.e. how close/far the texts are
- placed from each other).
-
- TodoItemBitmapName
- ------------------
- Name of the image for the todo items.
-
- TodoItemAlign
- -------------
- 0 = TopLeft
- 1 = TopRight
- 2 = TopCenter
- 16 = MiddleLeft
- 17 = MiddleRight
- 18 = Middle
- 32 = BottomLeft
- 33 = BottomRight
- 34 = BottomCenter
-
- TodoItemOffset
- --------------
- Offset to the todo item. This is two comma separated values (e.g. TodoItemOffset=10,-10)
-
- MessageBoxBitmapName
- --------------------
- Name of the messagebox background image.
-
- MessageBoxFont
- --------------
- The font to be used with the messagebox texts. Check below for more info about the
- fonts.
-
- MessageBoxFontColor
- -------------------
- Color of the font defined as BGR hex-value (e.g. TodoFontColor=44AAFF)
-
- MessageBoxBitmapMargins
- -----------------------
- Margins for the bitmap scaling. The margins are four comma separated values
- that define the non-scaled part of the images borders. e.g. MessageBoxBitmapMargins=10,10,0,0
- would leave 10 pixels from the left and top borders as is and scale the rest.
-
- MessageBoxTextMargins
- ---------------------
- Margins for the text. The margins are four comma separated values
- that define the borders for the text (i.e. text is not drawn on the border area).
-
- MessageBoxTextMaxWidth
- ----------------------
- Maximum width in pixels that the message box can scale. The text is wrapped if longer than that.
-
- MessageBoxSeparation
- --------------------
- The horizontal separation of the event texts (i.e. how close/far the texts are
- placed from each other).
-
-
- -----------------------------------------------------------------------
- Fonts
- -----------------------------------------------------------------------
-
- The fonts are defined with 13 values and the name of the font all separated
- with '/'-char. The most important values are the first one which defines the
- height of the font and the last, which is the typeface name of the font. The
- height of the font is defined in logical size and not in the point size.
-
- E.g. -17/0/0/0/700/0/0/0/0/3/2/1/34/Arial
-
- The different values are in order:
-
- height of font
- average character width
- angle of escapement
- base-line orientation angle
- font weight
- italic attribute option
- underline attribute option
- strikeout attribute option
- character set identifier
- output precision
- clipping precision
- output quality
- pitch and family
- typeface name
-
- Check CreateFont() in Win32API documentation for more info.
-
-
- -----------------------------------------------------------------------
- Profiles
- -----------------------------------------------------------------------
-
- With profiles you can customize individual events. In the previous versions
- (<= 0.11) it was possible to override the event font color / bitmap in
- the Edit Event dialog. This is not supported anymore as the new profile
- system provides a better(?) way to customize the events.
-
- When you create an event there is a combo box below the message's text
- box, which can be used to select the profile for the event. The combo box
- lists the profiles that are defined in the current skin's ini-file, but
- you can also give a custom profile name. If a certain profile is not
- defined in a skin a default settings are used instead.
-
- The profiles are defined in the skin file by making a new section. The name
- of the section must start with the word "Profile" (without the quotes). After
- that you can put pretty much anything to make the section unique (i.e. there
- cannot be two sections that have same name (i.e. the string between []-chars,
- not the "Name=" string).
-
- The profile section must have a key called Name, which will give the identity
- to the profile. The name is the one that is displayed in the Edit Event dialog.
-
- Other keys that can be in the profile section are:
-
- ToolTipFontColor
- EventBitmapName
- EventFontColor
- EventFontColor2
- EventIconName
- EventIconAlign
- EventDrawAlways
- Priority
-
- The values for the keys are exactly the same as defined above. The profile
- settings override the default skin settings, so for example if the default
- ToolTipFontColor value is black and you create a profile that defines it
- white, all events that use that profile will draw the tooltip texts white.
- Note that it is not necessary to give all the keys always; you can define
- just the ones that are necessary (default values are used for the missing
- keys).
-
- The EventIconName, EventIconAlign and EventDrawAlways can only be used with
- the profiles. The event icon is a small image that is displayed on top of the
- event with the given profile. The align uses the same alignment system as other
- aligns (check e.g. DaysAlign for the codes). If the EventDrawAlways is set to 1
- it means that the event is drawn always on the calendar.
-
- The priority defines what is drawn on the calendar when there are several
- event on the same day. The repeating events also have predefined priorities so
- that less frequently happening events have higher priority. Like this:
-
- Daily Priority = 10
- Weekly Priority = 20
- Monthly Priority = 30
- Annually Priority = 40
- Single Priority = 50
-
- The profile's priority value is added to this to determine the actual priority
- for the event.
-
- Currently it is not possible to create/edit the profiles from the GUI.
- You need to create by hand with a text editor.
-
- E.g.
-
- [Profile 1]
- Name=Sunday
- ToolTipFontColor=00DDFF
- EventFontColor=DD8888
-
- [Profile 2]
- Name=Important
- ToolTipFontColor=FFFFFF
- EventFontColor=FFFFFF
- EventFontColor2=FFFFFF
- EventIconName=Icons/Lightning.png
- EventIconAlign=18
-