#
# Copyright (C) 2000-2019 The Xastir Group
#
# This dbfawk file is used to map arbitrary dbf data that accompanies
# a shapefile into Xastir canoncical values of:
#   key     - search key
#   lanes   - width of feature (usually a road but applies to rivers, etc. too)
#   color   - color to draw the road
#   name    - name of the road for labels
#   filled  - whether a polygon is drawn filled or not
#   fill_color - color to fill polygon with
#   pattern - line pattern for road, river, etc. (0 - solid; 1 - dash; 2 - double dash)
#   display_level - highest zoom level at which to display the feature
#   label_level - highest zoom level at which to display the label
#   symbol  - 3 char 'TIO': table, ID, overlay
# NOTE: This file format is modeled after awk but is nowhere near awk
#  compatible.
#
# This file is used to map USGS 24k grid shapefiles, which contains bounding
# rectangles for USGS 1:24000 quadrangles. 
# The shapefile itself can be had from 
#   http://data.geocomm.com/quadindex/

# BEGIN is called once per dbf file which contains multiple records.
BEGIN {
# dbfinfo is the "signature" of the dbf file listing the column names in order.
# dbfinfo should match the dbf file that we say this dbfawk file goes with.
dbfinfo="NAME:STATE:LAT:LONG:MRC";
# dbffields is which of the above fields we actually want to look at.
# No point reading dbffields that are not looked at further.
dbffields="NAME:STATE";
}

# BEGIN_RECORD is called once per dbf record which contains multiple fields.
# Use this rule to re-initialize variables between records.
# use color 11 to highlight stuff that isn't properly mapped.
BEGIN_RECORD {key=""; lanes=1; color=8; fill_color=11; name=""; filled=0; pattern=0; display_level=65535; label_level=512; label_color=2; font_size=1; symbol=""}

# per-field rules are applied to the dbffields that are read from each record.
/^NAME=(.*)$/ {name="$1; next}
/^STATE=(.*)$/ {name="$(name),$1; next}
