TCustomRVFontInfo.Protection

<< Нажмите, чтобы показать Содержание >>

TCustomRVFontInfo.Protection

Защищает текст этого стиля от определённых операций в редакторе.

property Protection: TRVProtectOptions;

 

type

  TRVProtectOption = 

    (rvprStyleProtect, rvprStyleSplitProtect,

     rvprModifyProtect,

     rvprDeleteProtect, rvprConcateProtect,

     rvprRVFInsertProtect, rvprDoNotAutoSwitch,

     rvprParaStartProtect, 

     rvprSticking, rvprSticking2, rvprSticking3,

     rvprStickToTop, rvprStickToBottom);

  TRVProtectOptions = set of TRVProtectOption;

Используется в TRichViewEdit. Текст такого стиля имеет особое поведение при редактировании.

Общие опции защиты

Опция

Описание

rvprStyleProtect

Защищает текст от изменения стиля с помощью ApplyTextStyle, ApplyTextStyleTemplate, ApplyStyleTemplate. Эта защита игнорируется методом ApplyStyleConversion, но её можно учитывать вручную в событии OnStyleConversion.

rvprStyleSplitProtect

Защищает от применения текстового стиля к части текстового элемента. Методы ApplyTextStyle и ApplyStyleConversion применяют новый стиль ко всему элементу с этой опцией защиты, даже если он выделен только частично.

rvprModifyProtect

Защищает текстовые элементы этого стиля от изменения, но не защищает от удаления целиком. Удаление зависит от опции rvoFastDeleteProtectedText в TRichViewEdit.EditorOptions.

rvprDeleteProtect

Защищает текстовые элементы этого стиля от удаления целиком, но не защищает от изменения. Обычно эта опция блокирует все операции, удаляющие последний символ защищённого текстового элемента. Но если EmptyWidth > 0, можно удалить все символы, при этом сам элемент не удаляется. См. также свойство элемента документа rvepDeleteProtect .

rvprConcateProtect

Защищает текстовые элементы от объединения с соседним элементом того же стиля.

rvprRVFInsertProtect

Если эта опция включена, элементы этого стиля не вставляются при вставке RVF. Влияет только на методы, добавленные в редакторе (InsertRV***Ed, вставка из буфера обмена).

rvprDoNotAutoSwitch

Если эта опция включена, редактор никогда не переключает текущий текстовый стиль на этот автоматически. Если пользователь сделал этот стиль текущим, присвоив значение свойству CurTextStyleNo, после первой выполненной операции редактор переключается обратно на ранее использовавшийся стиль.

rvprParaStartProtect

Запрещает перемещать текстовый элемент этого стиля на новую строку или с новой строки; блокирует клавишу  Enter , если каретка находится в тексте этого стиля.

Склейка элементов

Опция

Описание

rvprSticking

Запрещает вставку между двумя текстовыми элементами с этой опцией защиты, позволяя «склеить» вместе несколько текстовых элементов с разными текстовыми стилями.

rvprSticking2

То же самое.

rvprSticking3

То же самое.

rvprStickToTop

Запрещает вставку перед текстом этого стиля, если этот текст является первым элементом документа.

rvprStickToBottom

Запрещает вставку после текста этого стиля, если этот текст является последним элементом документа.

Опции rvprSticking, rvprSticking2 и rvprSticking3 позволяют создавать несколько групп «склеенных» элементов. Между элементами с одинаковой опцией защиты вставка невозможна, но между элементами с разными опциями, например rvprSticking и rvprSticking2, вставка разрешена.

В дополнение к этим опциям можно использовать событие OnCheckStickingItems.

Значение по умолчанию:

[]

См. также:

свойство Options стиля абзаца;

EmptyWidth

Демонстрационные проекты:

Demos\*\Assorted\Fields\