Patch title: Release 89 bulk changes
Abstract:
File: /graphic/browser/xml/context.pli
Key:
    Removed line
    Added line
   
module "/pliant/language/unsafe.pli"
module "tree.pli"


module "/pliant/language/unsafe.pli"
module "tree.pli"


if false
method t position_undefined c
  arg_rw XmlTree t ; arg_rw XmlContext c
  each sub t
    sub position c


  method t position_undefined c
    arg_rw XmlTree t ; arg_rw D2Context c
    b x0 := undefined
    b y0 := undefined
    b x1 := undefined
    b y1 := undefined
    var Pointer:(List Link:D2Box) l :> b list
    if exists:l
      each bb l
        bb position c
if false
  
  method b position_container c
    oarg_rw D2Box b ; arg_rw D2Context c
    function position_include b c
      oarg_rw D2Box b ; arg_rw D2Box c
      if b:x0=defined
        c x0 := min c:x0 b:x0
        c y0 := min c:y0 b:y0
        c x1 := max c:x1 b:x1
        c y1 := max c:y1 b:y1
      else
        var Pointer:(List Link:D2Box) l :> b list
        if exists:l
          each bb l
            position_include bb c
    b x0 := float_max
    b y0 := float_max
    b x1 := float_min
    b y1 := float_min
    var Pointer:(List Link:D2Box) l :> b list
    if exists:l
      each bb l
        bb position c
        position_include bb b
    if b:x0=float_max
      b x0 := undefined
      b y0 := undefined
      b x1 := undefined
      b y1 := undefined
  
  method b position_zero c
    oarg_rw D2Box b ; arg_rw D2Context c
    var D2Context c2 := c
    c2 x0 := 0
    c2 y0 := 0
    c2 x1 := c:x1-c:x0
    c2 y1 := float_max/2
    c2 newline
    b position_container c2  
  
  method b position_hidden c
    oarg_rw D2Box b ; arg_rw D2Context c
    b x0 := undefined
    b y0 := undefined
    b x1 := undefined
    b y1 := undefined
    var Pointer:(List Link:D2Box) l :> b list
    if exists:l
      each bb l
        bb position_hidden c
  
  
  method b draw_recurse img c
    oarg_rw D2Box b ; oarg_rw ImagePrototype img ; arg_rw D2
    var Pointer:(List Link:D2Box) l :> b list
    if exists:l
      each bb l
        if bb:x0=undefined
          bb draw img c
        eif bb:x0<=img:x1 and bb:y0<=img:y1 or bb:x1>=img:x0
          bb draw img c
  
  
  method c bind img
    arg_rw D2Context c ; arg ImagePrototype img
    c x0 := img x0
    c y0 := img y0
    c x1 := img x1
    c y1 := img y1
    c areas := var List:D2Area empty_areas_list
    c newline



export XmlContext
export '. mark' '. set' '. query' '. rewind'
export '. newline' '. addtoline' '. newarea'
  
  method b position_container c
    oarg_rw D2Box b ; arg_rw D2Context c
    function position_include b c
      oarg_rw D2Box b ; arg_rw D2Box c
      if b:x0=defined
        c x0 := min c:x0 b:x0
        c y0 := min c:y0 b:y0
        c x1 := max c:x1 b:x1
        c y1 := max c:y1 b:y1
      else
        var Pointer:(List Link:D2Box) l :> b list
        if exists:l
          each bb l
            position_include bb c
    b x0 := float_max
    b y0 := float_max
    b x1 := float_min
    b y1 := float_min
    var Pointer:(List Link:D2Box) l :> b list
    if exists:l
      each bb l
        bb position c
        position_include bb b
    if b:x0=float_max
      b x0 := undefined
      b y0 := undefined
      b x1 := undefined
      b y1 := undefined
  
  method b position_zero c
    oarg_rw D2Box b ; arg_rw D2Context c
    var D2Context c2 := c
    c2 x0 := 0
    c2 y0 := 0
    c2 x1 := c:x1-c:x0
    c2 y1 := float_max/2
    c2 newline
    b position_container c2  
  
  method b position_hidden c
    oarg_rw D2Box b ; arg_rw D2Context c
    b x0 := undefined
    b y0 := undefined
    b x1 := undefined
    b y1 := undefined
    var Pointer:(List Link:D2Box) l :> b list
    if exists:l
      each bb l
        bb position_hidden c
  
  
  method b draw_recurse img c
    oarg_rw D2Box b ; oarg_rw ImagePrototype img ; arg_rw D2
    var Pointer:(List Link:D2Box) l :> b list
    if exists:l
      each bb l
        if bb:x0=undefined
          bb draw img c
        eif bb:x0<=img:x1 and bb:y0<=img:y1 or bb:x1>=img:x0
          bb draw img c
  
  
  method c bind img
    arg_rw D2Context c ; arg ImagePrototype img
    c x0 := img x0
    c y0 := img y0
    c x1 := img x1
    c y1 := img y1
    c areas := var List:D2Area empty_areas_list
    c newline



export XmlContext
export '. mark' '. set' '. query' '. rewind'
export '. newline' '. addtoline' '. newarea'