RE: Cursors

System for holding shared informaion on non-content.

tag {
  Position ( first character effected )
  Owner    ( unique within scope of editor )
  Index    ( uniquie within scope of owner )
  Type     ( reference for forign translation )
}

Type(s) should be standardized.. 8 bits is reasonable as long as
  its only used as a type number. Initial types are:

 0   = reserved
 1   = reserved
 2   = Cursor   start
 3   = Cursor    end
 4   = BookMark start
 5   = BookMark  end
 8   = Screen top-left
 9   = Screen bottom-right
 32  = unknown single point
 127 = unknown double point start
 128 = unknown double point end

* not bitmapped
 
 
Non content dynamic positional markers:
cursors
bookmarks
frameMarker

-----

The accumulator is responcable for holding
 all content related information, this means fonts / colours and that
 this 'other' system is for information not part of the result when saved.
 Font / colour inforamtion that is supposed to be saved ( for file types 
 that have that sort of thing) will need a new contentfilter and 
 displayFilter.

 --------------
 
 stages of cursor hilighting "during screen draw":
 - finding out what tags apply to the draw region
 - finding out what the user wants done with the various tags
 - prioratizing the tags
 - building the resulting attribute map

 This is done through several objects from the high level.
  - The displayfilter draws the text and maybe syntax hilights
  - A PropsFilter generates supurflious attributes

 these need to be bound with an object...PropFilter

The propfilter needs to also have information as to what to do with 
what props. This would probably be best done with an attribute map.
The map would hold the following:
  - prop owner
  - prop index
  - prop type
  - background colour
  - foreground colour
  - content override
  
A priority would be effectivly generated by the position in the map 
  that matched the tag. Earlier positions take higher priority.

As the propfilter finds props on the field, it would check this list to
  find out what (if any) modifications it should make to screen attributes.

Multiple prop filters may be used to translate custom prop types.

The propfilter should default to something that ignores unknown types, 
  and sets some default colours to cursors.

 The storage and access objects should be different
 PropAccumulator // > = internal
   - add prop
   - delete prop
   - >sort props
   - get prop
   - modify prop
   - clear props (varoius scopes)
 PropFilter
   - >prop search (position)
   - >sort props (user defined z leveling)
   - >map props (use z leveling to make an attribute map (or as user defined))
   - do props ( position ) ( general wrapper )
   - SetSource ( accumulator )
   
 how to speed up drawing of 'sequential' characters...
 
 draw system should be changed to buffer the screen before its refreshed.
 
 
 
 
