//
//
//
//
// $Revision: 1959 $
//
using System;
using System.Collections.Generic;
using System.Drawing;
namespace ICSharpCode.TextEditor.Document
{
///
/// This class handles the custom lines for a buffer
///
public interface ICustomLineManager
{
///
/// Contains all custom lines
///
List CustomLines {
get;
}
///
/// Returns the Color if the line lineNr has custom bg color
/// otherwise returns defaultColor
///
Color GetCustomColor(int lineNr, Color defaultColor);
///
/// Returns true if the line lineNr is read only
///
bool IsReadOnly(int lineNr, bool defaultReadOnly);
///
/// Returns true if selection is read only
///
bool IsReadOnly(ISelection selection, bool defaultReadOnly);
///
/// Add Custom Line at the line lineNr
///
void AddCustomLine(int lineNr, Color customColor, bool readOnly);
///
/// Add Custom Lines from the line startLineNr to the line endLineNr
///
void AddCustomLine(int startLineNr, int endLineNr, Color customColor, bool readOnly);
///
/// Remove Custom Line at the line lineNr
///
void RemoveCustomLine(int lineNr);
///
/// Clears all custom color lines
///
void Clear();
///
/// Is fired before the change
///
event EventHandler BeforeChanged;
///
/// Is fired after the change
///
event EventHandler Changed;
}
}