code: func (g *Gui) drawFrameEdges(v *View, fgColor, bgColor Attribute) error {
  	runeH, runeV := '─', '│'
  	if g.ASCII {
  		runeH, runeV = '-', '|'
  	}
  
  	for x := v.x0 + 1; x < v.x1 && x < g.maxX; x++ {
  		if x < 0 {
  			continue
  		}
  		if v.y0 > -1 && v.y0 < g.maxY {
  			if err := g.SetRune(x, v.y0, runeH, fgColor, bgColor); err != nil {
  				return err
  			}
  		}
  		if v.y1 > -1 && v.y1 < g.maxY {
  			if err := g.SetRune(x, v.y1, runeH, fgColor, bgColor); err != nil {
  				return err
  			}
  		}
  	}
  	for y := v.y0 + 1; y < v.y1 && y < g.maxY; y++ {
  		if y < 0 {
  			continue
  		}
  		if v.x0 > -1 && v.x0 < g.maxX {
  			if err := g.SetRune(v.x0, y, runeV, fgColor, bgColor); err != nil {
  				return err
  			}
  		}
  		if v.x1 > -1 && v.x1 < g.maxX {
  			if err := g.SetRune(v.x1, y, runeV, fgColor, bgColor); err != nil {
  				return err
  			}
  		}
  	}
  	return nil
  }
docs: // drawFrameEdges draws the horizontal and vertical edges of a view.