// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt) // This code is distributed under the GNU LGPL (for details please see \doc\license.txt) using System; using System.Windows.Media; namespace ICSharpCode.AvalonEdit.Rendering { /// /// Background renderers draw in the background of a known layer. /// You can use background renderers to draw non-interactive elements on the TextView /// without introducing new UIElements. /// /// Background renderer will draw only if their associated known /// layer chooses to draw them. For example, background renderers in the caret /// layer will be invisible when the caret is hidden. public interface IBackgroundRenderer { /// /// Gets the layer on which this background renderer should draw. /// KnownLayer Layer { get; } /// /// Causes the background renderer to draw. /// void Draw(TextView textView, DrawingContext drawingContext); } }