func (v *View) Transform(scheme render.ColourScheme, viewport Region) render.Recipe { v.lock.Lock() defer v.lock.Unlock() if v.syntax == nil { return nil } rr := make(render.ViewRegionMap) for k, v := range v.regions { rr[k] = v.Clone() } return render.Transform(scheme, rr, viewport) }
// Transform takes a ColourScheme and a viewport and returns a Recipe suitable // for rendering the contents of this view that is visible in that viewport. func (v *View) Transform(scheme render.ColourScheme, viewport Region) render.Recipe { v.lock.Lock() defer v.lock.Unlock() if v.syntax == nil { return nil } rr := make(render.ViewRegionMap) for k, v := range v.regions { rr[k] = v.Clone() } rs := render.ViewRegions{Flags: render.SELECTION} rs.Regions.AddAll(v.selection.Regions()) rr["lime.selection"] = rs return render.Transform(scheme, rr, viewport) }