diff --git a/enc/enc_rus/meta/structures/farcolor.html b/enc/enc_rus/meta/structures/farcolor.html index 6275b4b9dc..c9e8d4fc06 100644 --- a/enc/enc_rus/meta/structures/farcolor.html +++ b/enc/enc_rus/meta/structures/farcolor.html @@ -20,12 +20,50 @@
+struct rgba
+{
+ unsigned char
+ r,
+ g,
+ b,
+ a;
+};
+
+struct color_index
+{
+ unsigned char
+ i,
+ reserved0,
+ reserved1,
+ a;
+};
+
struct FarColor
{
- FARCOLORFLAGS Flags;
- COLORREF ForegroundColor;
- COLORREF BackgroundColor;
- void *Reserved;
+ FARCOLORFLAGS Flags;
+ union
+ {
+ COLORREF ForegroundColor;
+ struct color_index ForegroundIndex;
+ struct rgba ForegroundRGBA;
+ };
+ union
+ {
+ COLORREF BackgroundColor;
+ struct color_index BackgroundIndex;
+ struct rgba BackgroundRGBA;
+ };
+ union
+ {
+ COLORREF UnderlineColor;
+ struct color_index UnderlineIndex;
+ struct rgba UnderlineRGBA;
+ };
+ DWORD Reserved;
+ // ...
+ UNDERLINE_STYLE GetUnderline() const {/* ... */}
+ FarColor& SetUnderline(UNDERLINE_STYLE UnderlineStyle) {/* ... */}
+ // ... кроме того определён ряд других хелперов, полное определение см. в plugin.hpp
};
@@ -34,37 +72,182 @@ | Флаг | Описание |
|---|---|
| FCF_FG_INDEX | -цвет символа задан индексом в стандартной палитре NT (0 - 15) или VT100 (16 - 255) |
| FCF_BG_INDEX | -цвет фона символа задан индексом в стандартной палитре NT (0 - 15) или VT100 (16 - 255) |
| FCF_FG_BOLD | -расширенные атрибуты, задан стиль: "жирный" символ |
| FCF_FG_ITALIC | -расширенные атрибуты, задан стиль: "наклонный" символ |
| FCF_FG_UNDERLINE | -расширенные атрибуты, задан стиль: "подчеркнутый" символ |
| FCF_NONE | -нулевой флаг |
| Флаг | +Описание | +
| FCF_FG_INDEX | +цвет символа задан индексом | +
| FCF_BG_INDEX | +цвет фона символа задан индексом | +
| FCF_FG_UNDERLINE_INDEX | +цвет подчёркивания задан индексом | +
| FCF_INHERIT_STYLE | ++ "Наследовать" расширенные атрибуты; используется в группах раскраски файлов, в цвете выделения, курсора, + и в раскраске редактора, потенциально - и в других местах + | +
| FCF_NONE | +нулевой флаг | +
| Флаг | +Описание | +
|---|---|
| FCF_FG_BLINK | +"мигающий" | +
| FCF_FG_BOLD | +"жирный" (или "яркий") | +
| FCF_FG_FAINT | +"блёклый" | +
| FCF_INVERSE | +"инверсный" ("негатив") | +
| FCF_FG_INVISIBLE | +"невидимый" ("скрытый") | +
| FCF_FG_ITALIC | +"наклонный" ("курсив") | +
| FCF_FG_OVERLINE | +"надчёркнутый" | +
| FCF_FG_INVISIBLE | +"зачёркнутый" | +
| FCF_FG_U_DATA0, FCF_FG_U_DATA1, + FCF_FG_U_DATA2 | +
+ "подчёркнутый"; стиль подчёркивания определяется комбинацией значений этих трёх битов. + Для работы со стилями подчёркивания предусмотрены хелперы GetUnderline() и + SetUnderline(). + Возможные стили подчёркивания (перечисление UNDERLINE_STYLE): + UNDERLINE_NONE, UNDERLINE_SINGLE, + UNDERLINE_DOUBLE, UNDERLINE_CURLY, + UNDERLINE_DOT, UNDERLINE_DASH. + |
+
0xAABBGGRR или индекс 0xAA000000 - 0xAA0000FF, если установлен флаг FCF_FG_INDEX.0xAABBGGRR или индекс 0xAA000000 - 0xAA0000FF, если установлен флаг FCF_BG_INDEX.| Флаг | +Описание | +
|---|---|
| FCF_INDEXMASK | +FCF_FG_INDEX | FCF_BG_INDEX | FCF_FG_UNDERLINE_INDEX | +
| FCF_FG_UNDERLINE_MASK | +FCF_FG_U_DATA0 | FCF_FG_U_DATA1 | FCF_FG_U_DATA2 | +
| FCF_RAWATTR_MASK | +LVB console attributes | +
| FCF_STYLE_MASK | +объединение всех расширенных атрибутов | +
color_index, rgba
+ или типа COLORREF, в зависимости от флага FCF_FG_INDEX:
+ color_index,
+ где i это индекс в палитре (см. Замечания),
+ a - Alpha-канал, определяющий степень прозрачности,
+ от полностью прозрачного 00 до совсем непрозрачного FF.
+ rgba, где a - Alpha-канал,
+ а r, g, b - красный, зелёный, и синий каналы в цветовом пространстве RGB,
+ со значениями от 00 до FF.
+ COLORREF можно использовать в обоих случаях:
+ 0xAA000000 - 0xAA0000FF,
+ где младший байт представляет собой индекс в палитре, а старший (AA) - Alpha-канал.
+ 0xAABBGGRR, где AA - Alpha-канал,
+ а RR, GG, BB - красный, зелёный, и синий каналы.
+
Внимание!
COLORREF) в 0xFF.
+
Примечание
FCF_FG_INDEX и FCF_BG_INDEX.
-При использовании цветов из палитры обязательно указывайте флаги FCF_FG_INDEX, FCF_BG_INDEX
+ (и FCF_FG_UNDERLINE_INDEX, если используется подчёркивание).
-
0xFF.
+Стандартные цвета консоли Windows представляют собой палитру из 16 цветов, с индексами 0 - 15. + +
Также можно использовать цвета из палитры VT100 (16 - 255). + В этом случае значения (16 - 231) кодируются как 36R+6G+B, где уровень каждого из основных цветов 0-5, + а последние 24 значения (232 - 255) используются для оттенков серого. + +
Внимание!