EditorColor
Структура
EditorColor
используется в функции EditorControl для того, чтобы
установить или получить информацию о цветовых областях строк во внутреннем редакторе.
struct EditorColor { size_t StructSize; intptr_t StringNumber; intptr_t ColorItem; intptr_t StartPos; intptr_t EndPos; uintptr_t Priority; EDITORCOLORFLAGS Flags; struct FarColor Color; GUID Owner; };
Элементы
StructSize
Это поле должно содержать размер структуры
EditorColor
. Перед использованием структуры плагин должен заполнить поле.StringNumber
Номер строки для обработки или
-1
для текущей строки.ColorItem
Номер цветовой области, о которой вы хотите получить информацию. Строка может содержать несколько цветовых областей. Установите
Это поле не используется в ECTL_ADDCOLOR. Новый цвет всегда применяется ко всей области от
ColorItem = 0
для получения информации о первой цветовой области, 1
- о второй и т.д.Это поле не используется в ECTL_ADDCOLOR. Новый цвет всегда применяется ко всей области от
StartPos
до EndPos
, независимо от существовавших там ранее различных цветовых областей.StartPos, EndPos
Область строки для установки цвета.
Входной параметр для ECTL_ADDCOLOR и выходной для ECTL_GETCOLOR.
Входной параметр для ECTL_ADDCOLOR и выходной для ECTL_GETCOLOR.
Priority
Приоритет наложения цветовых областей.
Параметр указывает Far Manager'у, в какой последовательности накладывать цвета от разных плагинов. Например, для плагина Colorer значение должно быть установлено в
Параметр указывает Far Manager'у, в какой последовательности накладывать цвета от разных плагинов. Например, для плагина Colorer значение должно быть установлено в
0
,
т.к. он обеспечивает "базовую" раскраску. Для ANSI-плагинов значение установлено в EDITOR_COLOR_NORMAL_PRIORITY
.Flags
Флаги (тип EDITORCOLORFLAGS):
Флаг | Описание |
---|---|
ECF_TABMARKFIRST | если в диапазоне цветовой области встречается символ табуляции, то раскрасить его как один символ |
ECF_TABMARKCURRENT | если в диапазоне цветовой области встречается символ табуляции, то раскрасить не первый символ табуляции, а тот, который совпадает с текущей горизонтальной позицией курсора |
ECF_AUTODELETE | Far Manager автоматически удалит данную цветовую область непосредственно перед очередной посылкой плагинам события EE_REDRAW |
Color
Установленный или устанавливаемый цвет, структура типа FarColor.
Входной параметр для ECTL_ADDCOLOR и выходной для ECTL_GETCOLOR.
Входной параметр для ECTL_ADDCOLOR и выходной для ECTL_GETCOLOR.
Far Manager раскрашивает символ табуляции на всю длину, на которую расширяется табуляция. Если необходимо, чтобы символ табуляции для
цветовой области занимал одно знакоместо, то в дополнении к цвету, необходимо выставить флаг ECF_TABMARKFIRST
или ECF_TABMARKCURRENT
.
Owner
GUID плагина-владельца цветовой области.
Замечания
Через параметр Color
вы можете задать и цвет фона. Более того, вне зависимости от длины строки вы можете установить область начиная с
первой видимой позиции и кончая самой правой - при этом вы как бы замените цвет фона в редакторе. Хотя этот метод не сработает на файлах, у которых
число строк меньше размера экрана :(
Смотрите также: