Words in uppercase are user enterable, lowercase must stay the way it is.
Things in [brackets] are optional. If a datafile is viewed in excel, then an optional item can have an empty cell. But it does NOT mean that any subsequently used options (in the same row) move to the left, should you choose to omit an option. For example, in a block column, the popup is the 5th column, no matter if you specified a linestyle or not.

In the datafile, a blank line (or many blank lines) signals the end of one data column and the program will look for a new column then.

NOTE: all strings will automatically have any quote-pairs at the endpoints removed, and all "" will be replaced with ". This is to make it easier to directly export a tab-delimited text file from Excel.

**********************************************
HEADER:
**********************************************
Every data file must begin with the following lines:
format version:	(version)
date:	(date)
[age units:	( age units)]

(version) - the version of the file format. As features are added to the format this number indicates to the program if it should be able to read the file or not.
This file says what features were added with what format version. Initial version was 1 (or 1.0)
(date) - the date of the file in mm/dd/yyyy format.
(age units) - The units to be used for the ages in the file. Optional, as it defaults to Ma (millions of years). This has no effect on the drawing operations, but it makes the UI consistant. This was added in TSCreator version 1.8, or file format version 1.1.

**********************************************
DESCRIPTIONS OF COLUMNS:
**********************************************

Descriptions of options common to all columns:
WIDTH: unit width of the column. Overrides the default.
COLOR: possible colors:
	- USGS
	- USGS-Named
	- UNESCO
	- UNESCO-Named
	- nocolor (a default will be used)
	- r/g/b (specify a custom, using red, green, blue components, where r, g, and b are integers between 0 and 255.
notitle: don't display the title of this column in the header of the diagram.
off/on:
	- off (make the column unselected by default, i.e. it won't appear in the diagram)
	- on (make the column selected by default)
	- blank (on for all columns except event)

*************************************************
** META COLUMNS:

META-COLUMN-NAME	:	SUBCOL1	SUBCOL2	SUBCOL3	[_METACOLUMN_OFF/_METACOLUMN_ON]		[popup]

if _METACOLUMN_OFF is included, then this metacolumn will be unselected by default.
_METACOLUMN_ON has the opposite effect, and is used if neither is specified.
These options cannot appear first, i.e. you must specify them after specifying the SUBCOLs.

---------
popup was added in TSCreator version 1.8, file format version 1.1. Note that there are TWO
	tabs (or an extra cell) between the column declarations and the popup.
---------
Example:
Standard Chronostratigraphy	:	Era	Period	Series	Stage	Substage


*************************************************
** ZONE/BLOCK COLUMNS:

COLUMNNAME	block	[WIDTH]	[COLOR]	[notitle]	[off/on]	[popup]
	LABEL	AGE	[LINESTYLE]	[POPUP]			<==== Actual data

---------
popup was added in TSCreator version 1.8, file format version 1.1
linestyle choices: solid, dashed, dotted
---------
Examples:

Period	block		USGS-Named		off
	TOP	145.5				
	Jurassic	199.6	2			

Series	block	120	USGS-Named	notitle
	TOP	145.5
	Late	199.6	2	Lower Jurassic is my popup


*************************************************
** CHRON COLUMNS:

COLUMNNAME	chron	[WIDTH]	[COLOR]	[notitle]	[off/on]	[popup]
SERIESNAME	[SECTIONNAME]	[COLUMNWIDTH]	[on/off]	[POPUP]		<=== you can have as many of these as you want
	POLARITY	[LABEL]	AGE	[POPUP]			<==== Actual data

Polarity can be:
-TOP
-N
-R
-No Data

SectionName is something like Primary or Secondary. If it is omitted, the last one specified for this column is used, or "Default" if none was specified.

---------
Examples:

Geomagnetic Polarity	chron				
Austria series	Primary	Hettangian magnetic polarity intervals are not correlated to ammonite zones.  Pattern is schematic only.
	TOP		202
	N		202.47		
	R		204.18		
	R		204.56		
	No Data		205.7		
Newark Basin series	Secondary	Series Popup text
	TOP		206
	N	l+	206.66		
	N	j+	213.5		
	R	i-	215.852		
	N	h+	218.348		
	R	g-	219.668		Data popup text
	N	f+	220.82		
	R	e-	221.445		
	N	d+	222.229		

*************************************************
** FACIES COLUMNS:
exactly the same as CHRON COLUMNS, except the column type is "facies" and Polarity can be:
-TOP
-A facies type. This has to match a pattern id from the faciesPatterns.xml file.
 
*************************************************
** EVENT COLUMNS (LAD/FAD):

COLUMNNAME	event	[WIDTH]	[COLOR]	[notitle]	[off/on]	[popup]
[TYPE]								<== can have two of these, one for each type
	LABEL	AGE	[LINESTYLE]	[POPUP]			<== Actual data


where TYPE is "LAD" or "FAD".

linestyle choices: solid, dashed, dotted
linestyle was added in TSCreator version 1.8, file format version 1.1. No format version 1.0 data files used the popup, so bumping it back a cell didn't pose a problem.
NOTE: Event columns are OFF BY DEFAULT. If you want it to be on by default, specifically use the "on" option.

---------
Example:
FAD/LAD	event	200	nocolor
LAD					
	Limbosporites lundbladii	205.7
	A. laevigatus	205.7
	R. tuberculatus	205.7	some popup text
	G. rudis	206.97
FAD		
	V. ignacii (common)	210.98
	U. imperialis	249.9		

*************************************************
** SEQUENCE COLUMNS:

COLUMNNAME	sequence	[WIDTH]	[COLOR]	[notitle]	[off/on]	[popup]
	[LABEL]	DIRECTION	AGE	SEVERITY	[POPUP]


---------
Example:
SomeSequence	sequence			
	name	SB	201.5	Major
	name2	MFS	202.5	Medium	Popup text goes here.
	name3	SB	203.5	Minor	

*************************************************
** TREND COLUMNS:

COLUMNNAME	trend	[WIDTH]	[COLOR]	[notitle]	[off/on]	[popup]
	[LABEL]	DIRECTION	AGE	SEVERITY	[POPUP]


---------
Example:
SomeTrend	trend			
	name	SB	201.5	Major	popup
	name2	MFS	202.5	Medium	popup
	name3	SB	203.5	Minor	popup

*************************************************
** GRAPH COLUMNS:

COLUMNNAME	point	[WIDTH]	[COLOR]	[notitle]	[off/on]	[popup]
[pointType	[line]	[fillColor]	[rangelow	rangehigh]	[smoothed]]	<== display options
	AGE	VALUE	[LABEL]	[POPUP]					<== Actual data


The display options match up to the options in the program. This line is entirely optional, but if you want
to use it, you must at least specify a point type.
pointType:
	- nopoints
	- rect
	- circle
	- tick
line:
	-line
	-noline
fillColor:
	- nofill
	- r/g/b (red/green/blue, each between 0 and 255)
rangelow, rangehigh: a manually specified range. It is optional, but both endpoints must be given, if specified.

smoothed: Creates a cubic Bezier curve between points instead of lines. Added in file format version 1.1, TSCreator version 1.8

Note that currently the label and popup options are being ignored. They're there for future expansion.

---------
Example: with options
SomeGraph	point
nopoints	line	nofill	0	6
	205	0	mylabel	Popup text
	206	5		Popuptext

---------
Example: without options
SomeGraph	point
	205	0	mylabel	Popup text
	206	5		Popuptext

*************************************************
** FREEHAND COLUMNS:

COLUMNNAME	*see below*	[WIDTH]	[COLOR]	[notitle]	[off/on]	[popup]
(primitives)

Available since TSCreator version 2.0.2 and file format 1.2.

Freehand columns let you draw arbitrary things. Currently that only includes polygons. You can draw either on a blank column or use another column as a backdrop.
Use the column type to specify this behavior:
freehand : a column dedicated to the drawing
freehand-overlay : everything in this column will be drawn ON TOP of the last column.
freehand-underlay : everything in this column will be drawn BEHIND the last column.

the last column, or "host column" is the previous column specified in the datafile. If that means a facies or chron column, then only the leftmost Facies/Chron column of the set will be drawn on (the block columns on the right will be left alone).
a "last column" can have several over and underlays.
a metacolumn (grouping column) cannot be used for this.
NOTE: While allowed, avoid using a block, event, or ageage column as a host because their contents get shuffled around depending on the user's settings. As such they are unpredictable and can result in misalignments with the freehand overlay.

Following the declaration is a list of the primitives to draw. Currently only the polygon is supported:
polygon	[closed]	[smoothed]	[PATTERN]	[STYLE]	[POPUP]
	XVAL	AGEVAL	[smoothed/sharp]		<==== data
	
closed: will automatically draw a line from the last point to the first
smoothed: if specified then all points will be smoothed unless "sharp" is specified for a point
          if not specified, then all points will be sharp unless "smoothed" is specified for a point
PATTERN: one of the patterns supported by the facies column.
STYLE: an SVG style. Must be specified in the SVG format. the default is like this example: "stroke-width: 0.5; stroke: black; fill: none;"
       Note that if PATTERN is specified then it will override any fill specified in the STYLE.
POPUP: a popup like all others.

The actual points are specified like this:
XVAL: the point's X value. This number should go from 0 to the column width.
AGEVAL: the points Y value, specified as an age.
smoothed/sharp: This overrides the entire polygon's smoothing option and can be used independently of it. Use this to smooth the polygon point by point.

NOTE: all points should be specified in COUNTER CLOCKWISE ORDER. Otherwise the smoothing might be backwards for the first point.

---------
Example:

Some Freehand	freehand				
polygon	closed	smoothed	No Data		popup text goes here
	10	200			
	10	202			
	30	205			
	40	206			
	50	205			
polygon	closed			fill: red;	
	60	200	smooth		
	60	202	
	60	205	
	90	206	smooth
	70	205	
