VARIABLES

NOTE: THE VARIABLES HAVE BEEN COMPLETELY REDONE FOR V3.+. PLEASE UPDATE YOUR PREFERENCES FILES!

There are over 100 variables that the user can set to customize either the calendars generated or the behavior of FWCalendar while the calendar is being created.

User variables are contained in localized preferences files. This allows you to keep your variables separate so you don't have to change them every time the macros are updated. No values need to be entered in the preferences file if the values listed as default are acceptable; if the default value is not acceptable, enter the desired values in the preferences file.

Changes made to the preferences file using the variable editor are saved, but not to the preferences file itself (this file is never modified by the program). Should you change any values in the preferences file, you will need to select the "Load" button in the variable editor and re-load the preferences file for the changes to be read. Note that this will cause any previous changes made with the variable editor to be lost, so it is always best to keep your preferred default values set in the preferences file.

Both FWCalendar and FWCAddEvent use the same preferences file for initializing variables, so the preferences file should not be changed between using FWCalendar and FWCAddEvent. See notes on the variable editor for more details.

There should be no need to change variables in the macro itself.

All font sizes are computed according to the size of the TextArea and the MiniCal heights relative to the area available to the calendar. The font used for dates, highlights, and FWCAddEvent text can have the width adjusted.

The following rules MUST be followed in creating or modifying a preferences file:

Any comments must be fully contained in the same line.
Variable names must be separated from the '=' by at least one space.
The variables must be followed by the line: /* End Pass One - DO NOT DELETE THIS LINE!!! */

Localization strings
Localized preferences files are included with the distribution. Each file includes all of the currently used translation strings (ending in '$'). If you would like to include your language, please contact the author. If you would like to improve the translation strings for your language, please email the author the updated preferences file.

Two special pairs of variables are GeneratingM$/GenMVars and GeneratingY$/GenYVars. These have been added to allow variations in sentence structure for different languages. The defaults are:

GeneratingM$ = 'Generating %s %s calendar'
GenMVars = 'Month.Month EnteredYear'

GeneratingY$ = 'Generating %s calendar'
GenYVars = 'EnteredYear'

Each of the %s place holders in GeneratingM$ and GeneratingY$ is replaced by one of the variables in GenMVars and GenYVars. The three possibilities for GenMVars and GenYVars are Month, Month.Month, and EnteredYear. These are internal variables representing the month number, the name of the month, and the year, respectively. The defaults result in requesters saying 'Generating October 1999 calendar' and 'Generating 1999 calendar' (depending on the selected month/year, of course), respectively.

Normal Variables
AddEventRows - The maximum number of rows of FWCAddEvent text allowed on each day; affects the point size of the FWCAddEvent font
Values: any decimal number (larger = smaller text)
Default: 9
AdjustDST - Take daylight savings time changes into account when using SunCalc�
Values: 0 = don't adjust, 1 = adjust (requires RexxTricks.library)
Default: 1
DateOffset - Fraction of box width to offset dates from edge of box
Values: any decimal number
Default: 0.02
DoBackgrounds - Use a different background colors as defined below�; Highlight backgrounds will only be used if DoHighlights = 1
Values: 0 = no background, 1 = use background
Default: 0
DoDateBox - Draw a box around the date in the Font.Date color
Values: 0 = don't draw, 1 = draw
Default: 0
DoEaster - Include Easter and Easter-based holidays�
Values: 0 = don't include, 1 = include
Default: 1
DoExtended - Include days from the previous/next months on the main calendar�. Not possible with either DoNoteBox or DoTopExtraWk.
Values: 0 = don't include, 1 = include
Default: 0
DoHide - Hide PageStream window while rendering�
Values: 0 = don't hide, 1 = hide
Default: 0
DoHighlights - Include highlights on main calendar�
Values: 0 = don't include, 1 = include
Default: 1
DoImages - Insert images (requires Visage, ImageDTInfo, or PicSize to be installed)�
Values: 0 = Don't insert, 1 = insert
Default: 0
DoJulian - Insert Julian day at the defined position�; if the value for DoJulianLeft is equal to the value for DoJulian, the Julian days left will be appended to Julian days passed, separated by a /
Values: 0 = don't insert
TC = align top center
TR = align top right
BL = align bottom left
BC = align bottom center
BR = align bottom right
Default: 0
DoJulianLeft - Insert the days remaining in the year at the defined position�; if the value for DoJulianLeft is equal to the value for DoJulian, the Julian days left will be appended to Julian days passed, separated by a /
Values: 0 = don't insert
TC = align top center
TR = align top right
BL = align bottom left
BC = align bottom center
BR = align bottom right
Default: 0
DoMatchColors - Causes the date color to match the color set by Color.Highlight or Color.HighlightH (if a highlight is printed)�
Values: 0 = date color determined by Color.Date
1 = date color matches highlight color
Default: 0
DoMiniCals - Include mini-calendars�
Values: 0 = don't include, 1 = include
Default: 1
DoNoteBox - Include note box at top and bottom of calendar if possible�. Not possible if DoExtended is set.
Values: 0 = don't include, 1 = include
Default: 0
DoPhases - Include the phases of the moon�
Values: 0 = don't insert
TC = align top center
TR = align top right
BL = align bottom left
BC = align bottom center
BR = align bottom right
Default: 0
DoShanghai - Force application screen to shanghai windows
Values: 0 = don't force, 1 = force
Default: 1
DoSunRise - Insert sunrise times (requires SunCalc)� at the defined position�; if the value for DoSunRise is equal to the value for DoSunSet, the sunset time will be appended to the sunrise time, separated by a /
Values: 0 = don't insert
TC = align top center
TR = align top right
BL = align bottom left
BC = align bottom center
BR = align bottom right
Default: 0
DoSunSet - Insert sunset times (requires SunCalc)� at the defined position�; if the value for DoSunRise is equal to the value for DoSunSet, the sunset time will be appended to the sunrise time, separated by a /
Values: 0 = don't insert
TC = align top center
TR = align top right
BL = align bottom left
BC = align bottom center
BR = align bottom right
Default: 0
DoTopExtraWk - Print dates that would be in week 6 as full-sized cells at the top of the calendar rather than as half-height cells at the bottom of the calendar�. Not possible if DoExtended is set.
Values: 0 = half-height cells at the bottom, 1 = full-sized cells at the top
Default: 0
DoWeekNumber - Include the sequential week number at the defined position on the first day of each week�
Values: 0 = don't insert
TC = align top center
TR = align top right
BL = align bottom left
BC = align bottom center
BR = align bottom right
Default: 0
EventKey - Sets the "hot key" for the event gadget of the FWCAddEvent requester�
Values: Any character
Default: 'E'
FinalView - Sets the magnification percent of the calendar after it is created
Values: FW = Any whole number (20 - 400)
PGS = Any number (5 - 3000)
Default: 75
GfxApp - The name of the graphics application used to determine the datatype, width, and height of images to be inserted�
Values: see Images
Default: 'Visage'
GfxAppPath - Path to graphics application�
Values: : or / terminated path to the graphics application; don't include the application name with the path!
Default: None
GfxCmd - The template used in calling the graphics application�
Values: see Images
Default: '%s info'
GfxTemplate - The template used in parsing the graphic application's output�
Values: see Images
Default: '. "0a"x . ImgDT ImgWidth "x" ImgHeight "x" .'
HeaderLoc - Vertical adjustment for location of month/year heading�
Values: any decimal number (larger moves heading higher)
Default: 2
HeaderSize - The amount of available vertical space used for the name of the month; larger numbers result in a larger month name
Values: any decimal number (larger = larger text)
Default: 0.5
HighlightRows - The maximum number of rows of Highlight text desired in each day; affects point size of Highlight font
Values: any decimal number (larger = smaller text)
Default: 9
LaunchM - Variable to be INTERPRETed upon completion of monthly calendar�
Values: See Launch Program
Default: None
LaunchY - Variable to be INTERPRETed upon completion of yearly calendar�
Values: See Launch Program
Default: None
Leading - The height of each text line expressed as a percentage of the font height.
Values: any decimal number (larger = lines farther apart)
Default: 100
MagnifyExtras - The font size of the extras (sunrise, julian, etc) text; expressed as a percentage of the internally calculated highlight font size.
Values: any decimal number (<1 will shrink extras text, >1 will make extras text larger)
Default: 1
MaxPixHeight - Maximum percentage of boxheight to be used for images
Values: Decimal number less than 1
Default: 0.75
MaxPixWidth - Maximum percentage of boxwidth to be used for images
Values: Decimal number less than 1
Default: 0.75
MiniCalHeight - Fraction of text area height used for minicals�
Values: any decimal number
Default: 0.60
MiniCalSpacing - Fraction of print width placed between full-year minicals�
Values: any decimal number
Default: 0.05
MiniCalWidth - Width-to-height ratio for minicals�
Values: any decimal number
Default: 2.00
MinWidth - The smallest font width allowed when compressing highlights and events, expressed as a percent of the normal width
Values: any decimal number (lower = more compression allowed)
Default: 80
MoonRadius - Percentage of boxheight to use for moon image
Values: Decimal number less than 1
Default: 0.1
Orientation - Orientation of the calendar
Values: 'Wide' = landscape, 'Tall' = portrait
Default: 'Wide'
PageHeight - Height of paper in current units
Values: any decimal number in your measurement units
Default: FW = read from preferences
PGS = 11.0
PageWidth - Width of paper in current units
Values: any decimal number in your measurement units
Default: FW = read from preferences
PGS = 8.5
ShiftLMini - Values for shifting the left minical; shift = value/720 inches�
Values: any number (- = shift left, + = shift right)
Default: 0
ShiftRMini - Values for shifting the right minical; shift = value/720 inches�
Values: any number (- = shift left, + = shift right)
Default: 0
StartWeek - Day of the week to use in the first calendar column�
Values: 0 = Sunday
1 = Monday
2 = Tuesday
3 = Wednesday
4 = Thursday
5 = Friday
6 = Saturday
Default: 0 (Sunday)
StretchDateH - Factor to stretch date heights by, gives "drop cap" effect�
Values: Any number, best 1 - 4
Default: 1
StretchDateW - Factor to stretch date widths by, resulting in wider/narrower fonts�
Values: Any number, best 1 - 4
Default: 1
Storage - : or / terminated path where temporary files will be created
Values: Any : or / terminated path
Default: 'RAM:FWC/'
SunCalcPath - Path to SunCalc
Values: : or / terminated path to SunCalc; don't include the application name with the path!
Default: None
TabFactor - Amount to indent line if TabSub is found�
Values: Any decimal number
Default: 3
TabSub - Character combination to be replaced by a 'tab' (beginning of first line only)�
Values: Any set of characters
Default: '/~'
TextAdj - Fraction of font height to lower inserted text for Final Writer version; takes into account that Final Writer text is located according to the baseline and not the top or bottom of the text block. TextAdj represents how far down the font the baseline is located.
Values: any decimal number (.77 = 77%)
Default: 0.77
TTextArea - Fraction of print height used for top of tall calendar
Values: any decimal number
Default: 0.15
WeekdaySize - The amount of available vertical space used for the names of the weekdays; larger numbers result in a larger weekday name
Values: any decimal number (larger = larger text)
Default: 0.5
WTextArea - Fraction of print height used for top of wide calendar
Values: any decimal number
Default: 0.20

"Array" variables
AltColor. - Text colors for use when there is a non-white background
Default: Translation for 'Black'
Date - Day numbers
Extended - Day numbers for previous/next months
Highlight - Day numbers & text for non-holiday highlights
HighlightH - Day numbers & text for holiday highlights
Julian - Julian day number
WeekNumber - Sequential week number
Sunrise - Sunrise time
Sunset - Sunset time
Background. - Background colors
Default: Translation for 'White'
MiniCal - Minicals
Highlight - Non-holiday highlights
HighlightH - Holiday highlights
Weekend - Saturdays & Sundays
AddEvent - Boxed events added with FWCAddEvent
Bold. - Bolded font names
Values: FW = Any valid font including FULL path�
PGS = Any valid font name
Default: FW = 'FWFonts/SWOLFonts/SoftSans_Bold'
PGS = 'Helvetica-Bold'
MiniCal - MiniCal day numbers
FYMiniCal - Full-year MiniCal day numbers
Color. - Text & moon colors
Default: Translation for 'Black'
AddEvent - FWCAddEvent text
Date - Day numbers
Extended - Day numbers for previous/next months
Header - Calendar title (Month & Year)
Highlight - Day numbers & text for non-holiday highlights
HighlightH - Day numbers & text for holiday highlights
Julian - Julian day number
MiniCal - MiniCal day numbers
Moon - Moon image
NoteBox - Note box label
Sunrise - Sunrise time
Sunset - Sunset time
Weekday - Weekday titles
WeekNumber - Sequential week number
Font. - Font names
Values: FW = Any valid font including FULL path�
PGS = Any valid font name
Default: FW = 'FWFonts/SWOLFonts/SoftSans_Bold'
PGS = 'Helvetica-Bold'
Date - Day numbers
Extras - Sunrise/sunset, julian/julian left, etc
Highlight - Highlights and FWCAddEvent
Weekday - Weekday titles
Header - Calendar title (Month & Year)
Minical - MiniCal day numbers
ImageClass. - Image files to be used for common events�
Vaules: An image file, with or without path (see Images)
Default: None

The variables must match a word in the highlight for the day (see Images for more information)
Line. - Line and box colors
Default: Translation for 'Black'
Grid - Current-month dates (main grid color)
MiniCal - Minical borders
Extended - Previous/next months
AddEvent - Boxed events added with FWCAddEvent
NoteBox - Note box
Margin. - Margin settings
Values: any decimal number in your measurement units
Default: FW - read from preferences
PGS - 0.5
Top - Top margin
Bottom - Bottom margin
Left - Left Margin
Right - Right Margin
Text. - Text strings to be included before the value�
Default: ''
Julian - Julian days
WeekNumber - Sequential week number
Sunrise - Sunrise time
Sunset - Sunset time
Width. - Font widths (in percent)
Values: FW - Any whole number (4 - 255)
PGS - Any number (1 - 655 by 0.01)
Default: FW = 'FWFonts/SWOLFonts/SoftSans_Bold'
PGS = 'Helvetica-Bold'
Default: Calculated or 100%
Date - Day numbers, highlight & FWCAddEvent text

The variables shown in this area are the "stems" of the variables. To set a particular variable to a specific value (eg, the date font color to blue), add the variable to the "stem" followed by the value:

Color.Date = 'Blue'
To set all values of a "stem" to a specific value (eg, set all text colors to red), simply follow the "stem" by the value:
Color. = 'Red'
Used in FWCalendar only

Used in FWCAddEvent only