Properties Templates

A GEDitCOM II browser style contains a series of special property templates, each of which has a list of related properties. These templates are required and have fixed names (thus they cannot be deleted and their names cannot be changed). The property templates ade define below. Details on editing this properties is given here.

Editing Colors

These properties define a series of named colors. Whenever the color of any interface element is set (e.g., setting the window background), it must be set using the color "Key" defined in the editing colors. You can create any number of colors. To support light and dark modes on new MacOSs, create two colors. The first color is for light mode. The second color's name must be exactly the same except end in a space plus the word "Dark". This second color sets the color for dark mode. Commands that set colors should use the light color's name.

All named colors will be listed in the GEDitCOM II settings when the browser style is opened. Light and dark mode colors will be listed under the light mode name and have a color well to set light mode color on the left and dark mode color on the right. Users can change the colors, but not their names. The color name displayed to the user will be found by using light mode name as a Key to look up a string in the current language strings. If no match is found, the Key itself will be used. The displayed name should be a clear description of the color's function.

Two special colors with specific names are required. If they are not provided in a browser style, GEDitCOM II will add them when the browser style is opened and give them built-in settings:

Editing Fonts

These properties define a series of named fonts. Whenever the font of any interface element is set, it must be set to a font "Key" defined in the editing fonts. You can create any number of fonts. To support light and dark modes on new MacOSs, create two fonts. The first font is for light mode. The second font's name must be exactly the same except end in a space plus the word "Dark". This second font's color set the font color to use in dark mode. The second font's font name, style, and size are ignore; those settings come from the light mode font. Commands that set fonts should use the light font's name.

All named fonts will be listed in the GEDitCOM II settings when the browser style is opened. Light and dark mode fonts will be listed under the light mode name and have a color well to set light mode color on the left and dark mode color on the right. Users can change the font settings, but not their names. The font name displayed to the user will be found by using the Key to look up a string in the current language strings. If no match is found, the Key itself is used. The displayed name should be a clear description of the font's function.

Several special fonts with specific names are required (one for light mode and one for dark mode); these required fonts provide the default font for each type of cell. The font for any specific cell can always be changed by setting the cell's font property. If any required font is not provided in a browser style, GEDitCOM II will add it and set it to be 12 point, black, Courier font.

Editing Properties

The editing properties initialize a series of variables that can be used in any template.

All editing properties will be listed in the GEDitCOM II settings when the browser style is opened. Users can change the property values, but not their names. The property name displayed to the user will be found by using the Key to look up a string in the current language strings. If no match is found, the Key itself will be used. The displayed name, should be a clear description of the property's function.

Each editing property is defined by 5 settings:

  1. No - the order the properties will be displayed in the GEDitCOM II editing settings tab (see below for details on controlling the appearance of editing properties in the GEDitCOM II settings).
  2. Key - the Key for the property; the only function of the Key is to look up name to be displayed in the GEDitCOM II settings for each property.
  3. Variable - the variable that gets initialized to a value when a template starts; the templates can use these variables to control their functioning. The variable must be a valid variable name. No two properties can have the same variable name. Some read-only variables ending in "$" are automatically created in new browser styles; their names cannot be changed.
  4. Type - the type of variable. Currently only "Number" or "Group" are allowed. More options may be available in the future.
  5. Value - the value to assign to the variable

There are several required variables. If these variables are not provided, they will be added by GEDitCOM II when the browser style is loaded and initialized to default values. The required variables must match exactly the variable names defined below. The text names of such variables, however, can be customized as desired to control the name that appears in the GEDitCOM II settings. The required variables are:

When GEDitCOM IIloads editing properties into the "Editing" tab of its settings window, it first locates the above required variables and loads them into "Margins Settings" and "Default Settings" sections. All custom editing properties are then loaded, in order, into style-specific sections. Your options to control the display in the settings window are:

English

The English strings is a place to store key-string pairs. Many features of templates can access these keys to fetch their corresponding strings. For example, a key can translate a GEDCOM tag word, like MARR, to a full word, like Marriage. Keyed strings can also be used to translate Keys for editing colors, fonts, and properties and for individual and family events into strings to be displayed to the user in GEDitCOM II settings and dialog boxes.

An important use of key-string pairs for writing browser styles that support multiple languages. Good browser style writing should never hard code text to be displayed to the user in a template. Instead, all text strings should be coded using the local(key) or string(key) functions.

  1. The available keys are defined in a collection of strings. You use the keys in the templates and other editing properties and define the keys in the English strings section.
  2. To support multiple languages, you create a new strings property with its name being the name for the alternate language and redefine all keys to new values.
  3. The English strings are required and therefore the list cannot be deleted and its name cannot be changed. GEDitCOM II will revert to English strings if the strings for an alternate language cannot be found.
  4. All keys must be unique, but can be any length text and can include spaces.
  5. When a new browser style is created, it is preloaded with all GEDCOM tags as keys having values set to a plain text description. These keys are useful in templates to convert a tag to a text description (e.g., a template can use local(MARR) to look up the string for the key MARR which might be "Marriage" for English stings).

INDIEvents and FAMEvents

When users attach an event or attribute to an individual or an event to a family in GEDitCOM II, a sheet pops up on the window listing all possible events. You can use the INDIEvents and FAMEvents properties to customize the list of available events and to define new types of events:

  1. The INDIEvents and FAMEvents properties defines all events available to the user in GEDitCOM II.
  2. The Key is the GEDCOM tag word for the event. (see GEDCOM information in GEDitCOM II for the possible individual events, individual attributes, and family events).
  3. The Value is the text that will be displayed to the user to describe the event. The Value will be used as a Key to look up the description in the English strings (or other language strings). If the Value does not match a string, the Value itself will be used.
  4. When a new browser style is created, it is preloaded with all standard GEDCOM events and attributes. You can add to these lists and change the Values. To disallow certain events in a browser style, remove that event from the list.
  5. To create new types of events or attributes that are not part of the GEDCOM standard: