Ââåäåíèå

Навигация: »Нет вышестоящих разделов«

UnicodeRTFEdit - добро пожаловать!

 Return to chapter overview

UnicodeRTFEdit 1.0 Plugin

Copyright © 2008 dss


Îïèñàíèå ïëàãèíà

Навигация: Введение >

Описание плагина

 Return to chapter overview

Обзор возможностей.

Плагин UnicodeRTFEdit 1.0 - это плагин для Mediachance © Multimedia Builder 4.9.8, написанный в среде Delphi, рассчитанный на пользователя, который достаточно опытен в использовании MMB. Плагин умеет работать как с файлами в формате rtf, так и с файлами в формате UTF и простыми ANSI файлами. Лично мне не известны плагины, которые работают именно с простыми текстовыми файлами в формате Юникод, поэтому UnicodeRTFEdit можно назвать уникальным в этом отношении.

Плагин использует библиотеку RichEdit самой последней версии из доступных в системе. Для Windows XP это версия 4.1.

Определение терминов.

· RichEdit - элемент управления Windows, предназначенный для ввода форматированного текста в формате Rich Text. Применительно к плагину RichEdit - это поле ввода плагина.

· Функция - управляющая команда, посылаемая плагину при помощи PluginRun("","")

· Параметр - применительно к функции - значение, посылаемое плагину при помощи PluginSet("","") Параметр может быть строкового типа (String$='Something...'), целого типа (Integer=1) и логического типа (Boolean=TRUE). Причём логический тип фактически представляет собой целый тип, TRUE соответствует единице, а FALSE - нулю, так что вы можете использовать числа 0 или 1 вместо TRUE или FALSE.

· Результат - применительно к функции - значение, получаемое у плагина при помощи PluginGet("",""). Результат может быть целого или строкового типа.

· UTF-16 - способ представления юникода 16-битными символами.

· UTF-8 - способ представления юникода 8-битными символами, используемый UNIX-образными операционными системами (Linux, BSD, Mac OS X и пр.). Обеспечивает наилучшую совместимость со старыми системами.

· Low Endian - порядок следования байтов, когда старший байт записывается после младшего. Распространена в операционных системах семейства Windows NT.

· Big Endian - порядок следования байтов, когда старший байт записывается перед младшим (так называемый обратный порядок).

· Область форматирования - область, к которой применяется форматирование. Областью форматирования может быть либо весь текст, либо выделенный текст, либо текущее слово.

· Абзац или Параграф - участок текста, обычно расположенный между управляющими символами /par, символами возврата каретки или переноса строки.

· Твип - единица измерения в RichEdit, которая составляет 1/20 пункта (пункт - высота точки на принтере), или 1/1440 дюйма, или приблизительно 1/10 пикселя, в зависимости от разрешения монитора.

Общие замечания.

1. Любые значения цвета передаются плагину и принимаются в виде строки с разделителем вида '000,000,000', где числа означают цвет в формате RGB.

2. Каждая функция, предназначенная для получения какой-либо информации, имеет то же самое имя, что и функция, изменяющая эту информацию. Если функция возвращает какое-либо множество значений, она имеет префикс Get. Если функция возвращает логическое значение (т.е. 1 или 0, TRUE или FALSE), то она имеет префикс Is.

3. Если в описании функции указано, что она модифицирует выделенный текст, имейте в виду, что отсутствие выделения с точки зрения плагина - тоже выделение, длина которого равна нулю. Поэтому вы можете использовать многие такие функции (например, SetContent), даже если ничего не выделено.

4. Плагин не работает с боле ранними версиями MMB, чем 4.9.8. При попытке выполнить функцию Show плагин покажет предупреждение и проигнорирует команду.

5. Multimedia Builder версии 4.9.8 имеет особенность - при попытке передать плагину или получить у него числовую переменную, которая имеет имя, совпадающее с именем одной из функций плагина, Multimedia Builder не только передаст параметр, но и заодно выполнит функцию, с именем которой совпало имя переменной :) Контролировать это поможет специальная компиляция плагина.


Èñòîðèÿ âåðñèé

Навигация: Введение >

История версий

 Return to chapter overview
Show/Hide Hidden Text
Версия 1.0

Добавлено:

Удалено:

Исправлено:

Версия 0.9

Добавлено:

Удалено:

Исправлено:


Ïîëåçíûå ñîâåòû

Навигация: Введение >

Полезные советы

 Return to chapter overview

Список полезных советов.

Совет 1.

496 497 498 PluginSet/Run

Совет 2.

массивы-параметры


Ôóíêöèè

Навигация: »Нет вышестоящих разделов«

Функции

 Return to chapter overview

Автонабор

StartTyping

PauseTyping

ResumeTyping

TerminateTyping

Буфер обмена

Copy

CopyAll

Paste

Cut

CutAll

CopyAsRTF

CopyAllAsRTF

CutAsRTF

CutAllAsRTF

PasteAsRTF

Вид

DisableBox

EnableBox

Hide

Show

ReadOnly

HasBorder

PasswordChar

BGColor

AllowOLE

HideSelection

URLDetect

URLAutoOpen

AutoKeyboard

OnlyForNumbers

AcceptFiles

NotAcceptFiles

ReadOnly

SetTransparent

LoadBGImage

SetBGDrawMode

EnableTab

DisableTab

TextAlign

BeginBoxUpdate

EndBoxUpdate

FormatKeys

SetModify

AutoFontSize

Zoom

SetFocus

LeftToRightReading

RightToLeftReading

WordSelection

SetCursor

LoadCursorFromFile

PageRotate

WordWrapMode

PlainTextMode

SetPunctuation

История

GetLoadHistory

GetSaveHistory

GetLoadHistoryCount

GetSaveHistoryCount

ClearLoadHistory

ClearSaveHistory

Каретка

SetCaretPos

ShiftToBeginning

ShiftToEnding

ShiftToFirstChar

ShiftToLastChar

ShiftToPrevWord

ShiftToNextWord

SaveCaretPos

RestoreCaretPos

Клавиши

PressReturn

PressBackspace

PressInsert

PressDelete

PressHome

PressEnd

PressPageUp

PressPageDown

PressUp

PressDown

PressLeft

PressRight

PressCapsLock

PressNumLock

PressTab

PressChar

Поиск и замена

Search

Replace

Получение информации

GetLineCount

GetTextSize

GetCountOfVisible

GetContent

GetContentUpperCase

GetContentLowerCase

GetSelection

GetPasswordChar

GetLastOpenedFile

GetLineLength

GetSelectionLen

GetCaretPos

GetFontName

GetFontSize

GetFontCharset

GetFontColor

GetFontBackColor

GetFirstVisibleLine

GetLimitText

GetFocus

GetModify

GetLine

GetVersionOfRichDll

GetPluginVersion

GetUndoLimit

GetUndoName

GetRedoName

GetWordSelection

GetPageRotate

IsFontBold

IsFontItalic

IsFontStrikeOut

IsFontUnderLine

IsFontTrueType

IsVisibile

IsHasBorder

IsEnabled

IsAllowOLE

IsHideSelection

IsURLDetect

IsURLAutoOpen

IsAutoKeyboard

IsOnlyForNumbers

IsAcceptFiles

IsReadOnly

IsTransparent

IsClear

IsEastAsianLocale

IsSelectionMultiline

Прокрутка

ScrollUp

ScrollDown

ScrollPageUp

ScrollPageDown

ScrollPageLeft

ScrollPageRight

ScrollTop

ScrollBottom

ScrollLeft

ScrollRight

ScrollCaret

ScrollBarDisable

ScrollBarEnable

ScrollBarButtonDisable

ScrollBars

ScrollBarLeft

ScrollBarRight

Раскладка клавиатуры

LoadKBLayout

LoadNextKBLayout

LoadPrevKBLayout

CurrentKBLayout

ListOfLangID

LangIDToName

SystemDefaultLang

Редактирование

AddText

AppendText

AddLine

AppendLine

SetContent

SelectAll

Clear

Delete

Undo

Redo

CanUndo

UndoLimit

EmptyUndoBuffer

CanPaste

CanRedo

Символы

Code10ToChar

Code16ToChar

Code10ToWChar

Code16ToWChar

CharTaboo

Строки

CopyLine

SelectLine

SelectLineOnClick

DeleteLine

DeleteLines

SwapLines

LimitLinesCount

LimitLinesLen

SetLine

Утилиты

SetSelectionLen

MoveSelection

GetRTFFromString

GetRTFFromSelection

BitmapToRTF

InsertBitmap

InsertHyperlink

MakeHyperlink

DeleteEmptyLines

DuplicateLine

DoBeep

DoSimpleBeep

Файлы

LoadFromFile

SaveToFileUTF16LE

SaveToFileUTF16BE

SaveToFileUTF8

SaveToFileRTF

SaveToFileANSI

GetFileType

Фильтрация ввода

OnlyUpperCase

OnlyLowerCase

UseDefaultCase

OverwriteMode

InsertMode

OverwritePermission

NoReturn

LimitText

Форматирование

EditArea

SetNumbering

NumberingStyle

NumberingStart

NumberingBrackets

NumberingTab

LineSpacing

LeftMargin

RightMargin

ParagraphSpaceBefore

ParagraphSpaceAfter

ParagraphStartIndent

ParagraphRightIndent

ParagraphOffset

ParagraphAlign

Шрифт

FontName

FontSize

FontCharset

FontQuality

FontColor

FontBackColor

Bold

Italic

StrikeOut

UnderLine

Эффекты

ScriptStyle

SetProtected

SetDisabled

SetEmboss

SetImprint

SetOutline

SetShadow

SetAutoBackColor

SetAutoColor

SetRevAuthor


Àâòîíàáîð

Навигация: Функции >

Автонабор

 Return to chapter overview
Команда | StartTyping
Описание | Эта функция запускает автонабор. В качестве параметра принимает имя текстового файла, из которого будет взят текст для набора, а так же число миллисекунд, определяющих длительность паузы между вводимыми символами.
Пример: | QueueFile$=<Embedded>+'at.rtf' Delay=100 PluginSet("PlugIn","QueueFile$") PluginSet("PlugIn","Delay") PluginRun("PlugIn","StartTyping")

Команда | PauseTyping
Описание | Эта функция приостанавливает автонабор.
Пример: | PluginRun("PlugIn","PauseTyping")

Команда | ResumeTyping
Описание | Эта функция возобновляет автонабор.
Пример: | PluginRun("PlugIn","ResumeTyping")

Команда | TerminateTyping
Описание | Эта функция прерывает автонабор.
Пример: | PluginRun("PlugIn","TerminateTyping")


Áóôåð îáìåíà

Буфер обмена

Команда | Copy
Описание | Эта функция копирует выделенный текст в буфер обмена в простом текстовом формате.
Пример: | PluginRun("PlugIn","Copy") Clipboard("GET","s$") Message("","s$")

Команда | CopyAll
Описание | Эта функция копирует всё содержимое RichEdit в буфер обмена (без выделения) в простом текстовом формате.
Пример: | PluginRun("PlugIn","CopyAll") Clipboard("GET","s$") Message("","s$")

Команда | Paste
Описание | Эта функция вклеивает содержимое буфера обмена в RichEdit в простом текстовом формате.
Пример: | PluginRun("PlugIn","Paste")

Команда | Cut
Описание | Эта функция вырезает содержимое RichEdit и помещает его в буфер обмена в простом текстовом формате.
Пример: | PluginRun("PlugIn","Cut") Clipboard("GET","s$") Message("","s$")

Команда | CutAll
Описание | Эта функция вырезает всё содержимое RichEdit и помещает его в буфер обмена в простом текстовом формате.
Пример: | PluginRun("PlugIn","CutAll") Clipboard("GET","s$") Message("","s$")

Команда | CopyAsRTF
Описание | Эта функция копирует выделенный текст в буфер обмена в формате Rich Text.
Пример: | PluginRun("PlugIn","CopyAsRTF")

Команда | CopyAllAsRTF
Описание | Эта функция копирует всё содержимое RichEdit в буфер обмена в формате Rich Text.
Пример: | PluginRun("PlugIn","CopyAllAsRTF")

Команда | CutAsRTF
Описание | Эта функция вырезает содержимое RichEdit и помещает его в буфер обмена в формате Rich Text.
Пример: | PluginRun("PlugIn","CutAsRTF")

Команда | CutAllAsRTF
Описание | Эта функция всё содержимое RichEdit и помещает его в буфер обмена в формате Rich Text.
Пример: | PluginRun("PlugIn","CutAllAsRTF")

Команда | PasteAsRTF
Описание | Эта функция вклеивает содержимое буфера обмена в RichEdit в формате Rich Text.
Пример: | PluginRun("PlugIn","PasteAsRTF")


Âèä

Вид

Команда | DisableBox
Описание | Делает поле ввода неактивным.
Пример: | PluginRun("PlugIn","DisableBox")

Команда | EnableBox
Описание | Активирует поле ввода, деактивированное функцией DisableBox.
Пример: | PluginRun("PlugIn","EnableBox")

Команда | Hide
Описание | Делает плагин невидимым.
Пример: | PluginRun("PlugIn","Hide")

Команда | Show
Описание | Делает плагин, скрытый функцией Hide, вновь видимым. Изначально, при запуске проекта, плагин невидим. Это значит, что вы должны сделать его видимым сначала (например, написав команду Show в сценарии старта страницы).
Пример: | PluginRun("PlugIn","Show")

Команда | ReadOnly
Описание | Устанавливает и отключает режим "только для чтения".
Пример: | PluginRun("PlugIn","ReadOnly")

Команда | HasBorder
Описание | Позволяет настроить отображение рамки вокруг поля RichEdit. Принимает число как параметр (1 или 0).
Пример: | HasBorder=HasBorder<>TRUE PluginSet("PlugIn","HasBorder") PluginRun("PlugIn","HasBorder")

Команда | PasswordChar
Описание | Принуждает плагин использовать определённый вами символ для скрытия вводимого текста. Вы должны передать плагину код символа (ASCII, в пределах от 0 до 255, но более разумно будет использовать только печатные символы). Чтобы отменить данный режим, передайте плагину ноль.
Пример: | PasswordChar=ORD('*') PluginSet("PlugIn","PasswordChar") PluginRun("PlugIn","PasswordChar")

Команда | BGColor
Описание | Управляет цветом фона плагина. Цвет следует передавать в формате RGB, с разделителями в виде запятой.
Пример: | a=RND(255) b=RND(255) c=RND(255) BGColor$=CHAR(a)+','+CHAR(b)+','+CHAR(c) PluginSet("PlugIn","BGColor$") PluginRun("PlugIn","BGColor")

Команда | AllowOLE
Описание | Служит для разрешения использования объектов. Если функция включена, можно перетаскивать в поле ввода файлы, текст из других RTF - редакторов и т.д.
Пример: | AllowOLE=AllowOLE<>TRUE PluginSet("PlugIn","AllowOLE") PluginRun("PlugIn","AllowOLE")

Команда | HideSelection
Описание | Определяет, будет ли плагин скрывать выделение, когда потеряет фокус ввода. По умолчанию плагин не прячет выделение.
Пример: | HideSelection=HideSelection<>TRUE PluginSet("PlugIn","HideSelection") PluginRun("PlugIn","HideSelection")

Команда | URLDetect
Описание | Если этот режим включен, плагин будет автоматически подсвечивать ссылки. Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | URLDetect=URLDetect<>TRUE PluginSet("PlugIn","URLDetect") PluginRun("PlugIn","SetURLDetect")

Команда | URLAutoOpen
Описание | Если этот режим включен, плагин будет автоматически открывать интернет-адрес при щелчке на гиперссылке. При этом ссылка должна быть в общепринятом формате (наподобие www.mmbuilder.ru, иначе она не будет открыта)
Пример: | URLAutoOpen=URLAutoOpen<>TRUE PluginSet("PlugIn","URLAutoOpen") PluginRun("PlugIn","SetURLAutoOpen"

Команда | AutoKeyboard
Описание | Позволяет включить или отключить режим плагина, в котором он будет автоматически изменять раскладку клавиатуры на ту, что используется в области форматирования, когда курсор в неё попадёт. Для системной библиотеки RichEdit старых версий этот режим включен, новых версий - отключен по умолчанию.
Пример: | AutoKeyboard=AutoKeyboard<>TRUE PluginSet("PlugIn","AutoKeyboard") PluginRun("PlugIn","SetAutoKeyboard")

Команда | OnlyForNumbers
Описание | Режим ввода, в котором игнорируются все символы, кроме символов 0..9.
Пример: | ForNumbers=ForNumbers<>TRUE PluginSet("PlugIn","ForNumbers") PluginRun("PlugIn","OnlyForNumbers")

Команда | AcceptFiles
Описание | Разрешает перетаскивать текстовые файлы в программу с последующим открытием. Функция имеет два режима, которые включаются путём передачи плагину строки 'Self' (принимать файлы будет само поле ввода) или 'MMBForm' (файлы будет принимать форма программы, что удобно для использования с режимом AllowOLE).
Пример: | If (Locality$<>'MMBForm') Then Locality$='MMBForm' Else Locality$='Self' End PluginSet("PlugIn","Locality$") PluginRun("PlugIn","AcceptFiles")

Команда | NotAcceptFiles
Описание | Отключает режим перетаскивания файлов, включенный функцией AcceptFiles.
Пример: | PluginRun("PlugIn","NotAcceptFiles")

Команда | ReadOnly
Описание | Включает и отключает режим "только для чтения".
Пример: | ReadOnly=ReadOnly<>TRUE PluginSet("PlugIn","ReadOnly") PluginRun("PlugIn","ReadOnly")

Команда | SetTransparent
Описание | Весьма интересная функция. Она позволяет вам установить режим работы плагина, при котором фон поля редактирования стирается. Очень рекомендуется использовать совместно с LoadBGImage. Но имеется также одна большая проблема - поле RichEdit очень сильно мерцает во время ввода текста и немного во время прокрутки. И эта проблема непреодолима, потому что RichEdit - единственный контрол, который почему-то не желает отрисовываться по сообщению WM_PAINT так, как это делают прочие поля редактирования. Так что единственное решение проблемы - не использовать функции ввода (установив режим только для чтения, см. ReadOnly - так мерцание будет существенно снижено) и просто статично отображать RichEdit. Хоть такой подход и не всегда возможен, зато это очень красиво. Возможно, в будущих версия плагина, проблема всё-таки будет решена.
Пример: | Transparent=Transparent<>TRUE PluginSet("PlugIn","Transparent") PluginRun("PlugIn","SetTransparent")

Команда | LoadBGImage
Описание | Эта функция загружает растровую картинку из файла. После включения режима прозрачности RichEdit эта картинка будет использована в качестве фона. Эту функцию можно использовать заблаговременно (на старте приложения, например), не дожидаясь наступления необходимости загрузки картинки. Загружаемая картинка должна быть в формате bmp, т.е. быть несжатым растровым файлом.
Пример: | OpenFile("BMP Files (*.bmp)|*.bmp|All Files|*.*||","") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","LoadBGImage") End

Команда | SetBGDrawMode
Описание | Функция - переключатель режима рисования фоновой картинки, загруженной при помощи LoadBGImage. Имеется два способа риссования - 'NoStretch' и 'Stretch'. В первом случае фоновая картинка будет отрисована без изменений. Во втором случае изображение растянется и будет соответствовать размерам поля RichEdit.
Пример: | DrawMode$='Stretch' PluginSet("PlugIn","DrawMode$") PluginRun("PlugIn","SetBGDrawMode")

Команда | EnableTab
Описание | Эта функция разрешает плагину реагировать на нажатие клавиши табуляции (см. функцию DisableTab). По умолчанию плагин реагирует на клавишу Tab.
Пример: | PluginRun("PlugIn","EnableTab")

Команда | DisableTab
Описание | Эта функция запрещает плагину реагировать на нажатие клавиши табуляции (см. функцию EnableTab). После вызова этой функции нажатие на клавишу табуляции не будет иметь никакого эффекта.
Пример: | PluginRun("PlugIn","DisableTab")

Команда | TextAlign
Описание | Эта функция изменяет выравнивание для всего текста. Принимаемые значения - 'Left', 'Center' и 'Right'.
Пример: | TextAlign$='alCenter' PluginSet("PlugIn","TextAlign$") PluginRun("PlugIn","TextAlign")

Команда | BeginBoxUpdate
Описание | Эта функция запрещает обновлять окно RichEdit, что бывает необходимо делать перед началом длительных операций, сопровождающихся активным изменением содержимого RichEdit (что, в свою очередь, вызывает частую перерисовку окна плагина). Обратный эффект имеет функция EndBoxUpdate
Пример: | PluginRun("PlugIn","BeginBoxUpdate")

Команда | EndBoxUpdate
Описание | Эта функция разрешает обновление окна RichEdit. Её следует использовать после вызова BeginBoxUpdate
Пример: | PluginRun("PlugIn","EndBoxUpdate")

Команда | FormatKeys
Описание | Эта функция разрешает и запрещает использование стандартных клавиш для форматирования текста. Доступные сочетания тут. Данный режим включен по умолчанию.
Пример: | PluginSet("PlugIn","TRUE") PluginRun("PlugIn","FormatKeys")

Команда | SetModify
Описание | Эта функция изменяет флаг модификации RichEdit (см. функцию GetModify). Допустимые значения параметра - 0 или 1 (TRUE или FALSE).
Пример: | PluginSet("PlugIn","FALSE") PluginRun("PlugIn","SetModify")

Команда | AutoFontSize
Описание | Эта функция управляет поведением RichEdit в случае ввода пользователем текста на разных языках. Шрифты разных языков имеют разную высоту, и это заметно при вводе. Вы можете отключить такое поведение RichEdit, передав плагину в качестве параметра FALSE. По умолчанию этот режим включен.
Пример: | AutoFontSize=AutoFontSize<>TRUE PluginSet("PlugIn","FALSE") PluginRun("PlugIn","AutoFontSize")

Команда | Zoom
Описание | Эта функция позволяет увеличивать и уменьшать масштаб увеличения текста. В качестве параметра принимает строку вида 'числитель,знаменатель'. Для возврата к оригинальному масштабу сделайте равными числитель и знаменатель. Функция требует наличия библиотеки Rich Edit 3.0
Пример: | Zoom$='150,100' PluginSet("PlugIn","Zoom$") PluginRun("PlugIn","Zoom")

Команда | SetFocus
Описание | Эта функция устанавливает фокус ввода в поле RichEdit.
Пример: | PluginRun("PlugIn","SetFocus")

Команда | LeftToRightReading
Описание | Устанавливает направление чтения "слева-направо". Не рекомендуется менять направление чтения когда плагин содержит большой текст
Пример: | PluginRun("PlugIn","LeftToRightReading")

Команда | RightToLeftReading
Описание | Устанавливает направление чтения "справа-налево"
Пример: | PluginRun("PlugIn","RightToLeftReading")

Команда | WordSelection
Описание | Устанавливает или запрещает режим выделения, в котором будут выделяться целые слова.
Пример: | WordSelection=WordSelection<>TRUE PluginSet("PlugIn","WordSelection") PluginRun("PlugIn","WordSelection")

Команда | SetCursor
Описание | Функция для смены вида курсора мыши, когда она находится над полем плагина. Параметр - строка, которая определяет вид курсора: 'ARROW' - стрелка 'IBEAM' - ?.. 'WAIT' - курсор с песочными часами 'CROSS' - перекрестие 'UPARROW' - стрелка вверх 'SIZE'- ?.. 'ICON' - ?.. 'SIZENWSE' - знак изменения размера 'SIZENESW' - знак изменения размера 'SIZEWE' - знак изменения размера 'SIZENS' - знак изменения размера 'SIZEALL' - знак изменения размера 'NO' - запрещающий знак 'HAND' - рука 'APPSTARTING' - песочные часы 'HELP' - вопросительный значок
Пример: | Cursor$='WAIT' PluginSet("PlugIn","Cursor$") PluginRun("PlugIn","SetCursor")

Команда | LoadCursorFromFile
Описание | Функция для загрузки курсора мыши из файла. Параметр - строка, которая содержит путь к файлу с расширением *.ico или *.ani.
Пример: | OpenFile$='' OpenFile("Cursor Files (*.cur, *.ani)|*.cur;*.ani|All Files|*.*||","") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","LoadCursorFromFile") End

Команда | PageRotate
Описание | Функция для поворота холста RichEdit на 90, 180 и 270 градусов. Вложенные объекты не поворачиваются. Функция требует наличия RichEdit 4.1 (возможно не будет поддерживаться в будущих версиях RichEdit) и не рекомендуется к использованию. Параметр - набор чисел 90, 180, 270 и 0 (поворот отсутствует).
Пример: | PageRotate=90 PluginSet("PlugIn","PageRotate") PluginRun("PlugIn","PageRotate")

Команда | WordWrapMode
Описание | Функция для изменения стиля переноса слов. Параметр - строка: 'WORDWRAP' - перенос строки в азиатском стиле (например, Kinsoku в японском) 'WORDBREAK' - перенос строки в английском стиле (для азиатских языков) 'LEVEL1' - для использования таблицы пунктуации уровня 1 по умолчанию (???) 'LEVEL2' - для использования таблицы пунктуации уровня 2 по умолчанию (???) Функция работает только в операционных системах Windows с азиатской локализацией.
Пример: | WordWrapMode$='WORDBREAK' PluginSet("PlugIn","WordWrapMode$") PluginRun("PlugIn","WordWrapMode")

Команда | PlainTextMode
Описание | Функция для превращения RichEdit в простое поле редактирования ("режим простого текста"). Параметр - число: 1 (включить режим), 0 (отключить режим). Смена режима должна выполняться тогда, когда плагин не содержит текста. Если текст имеется, сперва выполните очистку содержимого плагина командой Clear. Функция требует наличия библиотеки Rich Edit 2.0
Пример: | PluginSet("PlugIn","TRUE") PluginRun("PlugIn","PlainTextMode")

Команда | SetPunctuation
Описание | Функция изменения стиля пунктуации. Работает только для азиатских языков. Параметр - строка: 'LEADING' 'FOLLOWING' 'DELIMITER' К сожалению, я не имею понятия, что это за виды пунктуации :(
Пример: | Punctuation$='DELIMITER' PluginSet("PlugIn","Punctuation$") PluginRun("PlugIn","SetPunctuation")


Èñòîðèÿ

История

Команда | GetLoadHistory
Описание | Возвращает элемент списка открытых файлов. Принимает в качестве параметра число, начиная с -1 (вернуть весь список). Последний элемент списка - последний загруженный файл.
Пример: | HistoryItem=-1 PluginSet("PlugIn","HistoryItem") PluginRun("PlugIn","GetLoadHistory") PluginGet("PlugIn","HistoryItem$") Message("","HistoryItem$")

Команда | GetSaveHistory
Описание | Возвращает элемент списка сохранённых файлов. Принимает в качестве параметра число, начиная с -1 (вернуть весь список). Последний элемент списка - последний сохранённый файл.
Пример: | HistoryItem=-1 PluginSet("PlugIn","HistoryItem") PluginRun("PlugIn","GetSaveHistory") PluginGet("PlugIn","HistoryItem$") Message("","HistoryItem$")

Команда | GetLoadHistoryCount
Описание | Возвращает число элементов списка открытых файлов.
Пример: | PluginRun("PlugIn","GetLoadHistoryCount") PluginGet("PlugIn","Count") Message("","Count")

Команда | GetSaveHistoryCount
Описание | Возвращает число элементов списка сохранённых файлов.
Пример: | PluginRun("PlugIn","GetSaveHistoryCount") PluginGet("PlugIn","Count") Message("","Count")

Команда | ClearLoadHistory
Описание | Очищает список истории открытых файлов.
Пример: | PluginRun("PlugIn","ClearLoadHistory")

Команда | ClearSaveHistory
Описание | Очищает список истории сохранённых файлов.
Пример: | PluginRun("PlugIn","ClearSaveHistory")


Êàðåòêà

Каретка

Команда | SetCaretPos
Описание | Устанавливает каретку на абсолютную позицию в тексте, определённую числом символов по горизонтали и вертикали. Одновременно позволяет выделить определённое количество символов.
Пример: | **'Line,Char,SelLength' CaretPos$='0,0,3' PluginSet("PlugIn","CaretPos$") PluginRun("PlugIn","SetCaretPos")

Команда | ShiftToBeginning
Описание | Перемещает каретку на первый символ документа.
Пример: | PluginRun("PlugIn","ShiftToBeginning")

Команда | ShiftToEnding
Описание | Перемещает каретку на последний символ документа.
Пример: | PluginRun("PlugIn","ShiftToEnding")

Команда | ShiftToFirstChar
Описание | Перемещает каретку на первый символ текущей строки (т.е. строки, на которую помещена каретка). Эффект применения данной функции аналогичен эффекту функции PressHome.
Пример: | Line=1 PluginSet("PlugIn","Line") PluginRun("PlugIn","ShiftToFirstChar")

Команда | ShiftToLastChar
Описание | Перемещает каретку на последний символ текущей строки (т.е. строки, на которую помещена каретка). Эффект применения данной функции аналогичен эффекту функции PressEnd.
Пример: | Line=1 PluginSet("PlugIn","Line") PluginRun("PlugIn","ShiftToLastChar")

Команда | ShiftToPrevWord
Описание | Перемещает каретку на начало предыдущего слова.
Пример: | PluginRun("PlugIn","ShiftToPrevWord")

Команда | ShiftToNextWord
Описание | Перемещает каретку на начало следующего слова.
Пример: | PluginRun("PlugIn","ShiftToNextWord")

Команда | SaveCaretPos
Описание | Сохраняет позицию каретки во внутреннюю переменную плагина. Затем можно восстановить каретку функцией RestoreCaretPos.
Пример: | PluginRun("PlugIn","SaveCaretPos")

Команда | RestoreCaretPos
Описание | Восстанавливает позицию каретки, сохранённую функцией SaveCaretPos.
Пример: | PluginRun("PlugIn","RestoreCaretPos")


Êëàâèøè

Клавиши

Команда | PressReturn
Описание | Эта функция эмулирует нажатие клавиши Enter.
Пример: | PluginRun("PlugIn","PressReturn")

Команда | PressBackspace
Описание | Эта функция эмулирует нажатие клавиши Backspace.
Пример: | PluginRun("PlugIn","PressBackspace")

Команда | PressInsert
Описание | Эта функция эмулирует нажатие клавиши Insert.
Пример: | PluginRun("PlugIn","PressInsert")

Команда | PressDelete
Описание | Эта функция эмулирует нажатие клавиши Delete.
Пример: | PluginRun("PlugIn","PressDelete")

Команда | PressHome
Описание | Эта функция эмулирует нажатие клавиши Home.
Пример: | PluginRun("PlugIn","PressHome")

Команда | PressEnd
Описание | Эта функция эмулирует нажатие клавиши End.
Пример: | PluginRun("PlugIn","PressEnd")

Команда | PressPageUp
Описание | Эта функция эмулирует нажатие клавиши PageUp.
Пример: | PluginRun("PlugIn","PressPageUp")

Команда | PressPageDown
Описание | Эта функция эмулирует нажатие клавиши PageDown.
Пример: | PluginRun("PlugIn","PressPageDown")

Команда | PressUp
Описание | Эта функция эмулирует нажатие клавиши Up.
Пример: | PluginRun("PlugIn","PressUp")

Команда | PressDown
Описание | Эта функция эмулирует нажатие клавиши Down.
Пример: | PluginRun("PlugIn","PressDown")

Команда | PressLeft
Описание | Эта функция эмулирует нажатие клавиши Left.
Пример: | PluginRun("PlugIn","PressLeft")

Команда | PressRight
Описание | Эта функция эмулирует нажатие клавиши Right.
Пример: | PluginRun("PlugIn","PressRight")

Команда | PressCapsLock
Описание | Эта функция эмулирует нажатие клавиши CapsLock.
Пример: | PluginRun("PlugIn","PressCapsLock")

Команда | PressNumLock
Описание | Эта функция эмулирует нажатие клавиши NumLock.
Пример: | PluginRun("PlugIn","PressNumLock")

Команда | PressTab
Описание | Эта функция эмулирует нажатие клавиши Tab.
Пример: | PluginRun("PlugIn","PressTab")

Команда | PressChar
Описание | Эта функция эмулирует нажатие любой клавиши. В качестве параметра функция принимает строку символов с разделителем. Вид строки должен быть наподобие 'q,w,e'. Все упомянутые в строке символы будут введены в поле RichEdit немедленно после вызова функции PressChar. Функция схожа с функцией Code10ToChar, разница в том, что Code10ToChar принимает в качестве параметра код только одного симола в виде целого числа, а PressChar принимает набор из нескольких символов в виде строки. Таким образом, PressChar более удобна для работы с самими символами, в то время как Code10ToChar удобна для работы с кодами символов. См. также Code16ToChar, Code10ToWChar и Code16ToWChar.
Пример: | Keys$='q,w,e' PluginSet("PlugIn","Keys$") PluginRun("PlugIn","PressChar")


Ïîèñê è çàìåíà

Поиск и замена

Команда | Search
Описание | Эта функция ищет первое вхождение определённой строки, начиная с определённой позиции. Когда функция находит первое совпадение, она выделяет совпавший фрагмент текста. В качестве параметров принимает несколько параметров. Первый из них - логическое число, которое означает, нужно ли учитывать регистр (TRUE). Второй - также логическое число, которое означает, нужно ли искать только целые слова (TRUE). Третий - логическое число, которое означает, нужно ли искать вперёд (TRUE), или же осущесвить поиск в обратном направлении (FALSE). Четвёртый параметр - строка, которую необходимо найти. Функция Search возвращает текущую позицию поиска.
Пример: | **Начать поиск с этой позиции: PluginSet("PlugIn","StartPos") **Учитывать регистр? PluginSet("PlugIn","FALSE") **Искать только целые слова? PluginSet("PlugIn","TRUE") **Искать вперёд? PluginSet("PlugIn","TRUE") **Передаём искомую строку SearchStr$='rtf' PluginSet("PlugIn","SearchStr$") **Начинаем поиск PluginRun("PlugIn","Search") **Забираем у плагина номер символа, на котором остановились PluginGet("PlugIn","StartPos")

Команда | Replace
Описание | Эта функция похожа на функцию Search, только вместе с искомой строкой нужно передавать ещё и строку, на которую нужно заменить то, что будет найдено.
Пример: | **Начать поиск с этой позиции: PluginSet("PlugIn","StartPos") **Учитывать регистр? PluginSet("PlugIn","FALSE") **Искать только целые слова? PluginSet("PlugIn","TRUE") **Искать вперёд? PluginSet("PlugIn","TRUE") **Указывает, что нужно искать и на что заменять SearchStr$=' rtf |.:replaced:.' PluginSet("PlugIn","SearchStr$") **Начинаем поиск PluginRun("PlugIn","Replace") **Забираем у плагина номер символа, на котором остановились PluginGet("PlugIn","StartPos")


Ïîëó÷åíèå èíôîðìàöèè

Получение информации

Команда | GetLineCount
Описание | Эта функция предназначена для определения общего числа строк в поле RichEdit.
Пример: | PluginRun("PlugIn","GetLineCount") PluginGet("PlugIn","count") Message("","count")

Команда | GetTextSize
Описание | Эта функция предназначена для размера текста в байтах. Во время подсчёта учитываются символы возврата каретки. Возврат каретки по умолчанию - это два символа с кодами 13 и 10, т.е. 2 байта. Каждый объект OLE считается одним символом.
Пример: | PluginRun("PlugIn","GetTextSize") PluginGet("PlugIn","TextSize") Message("","TextSize")

Команда | GetCountOfVisible
Описание | Эта функция предназначена для определения числа видимых строк в поле RichEdit. Частично видимые строки не учитываются.
Пример: | PluginRun("PlugIn","GetCountOfVisible") PluginGet("PlugIn","Count") Message("","Count")

Команда | GetContent
Описание | Эта функция предназначена для получения текста из RichEdit. Функция принимает в качестве параметра следующие значения: 'Text', 'RTF', 'PlainRTF', 'RTFNoObj', 'Textized', 'PlainRTFNoObj'. Значение 'Text' соответствует простому тексту без объектов OLE, 'RTF' соответствует RT-форматированному тексту с объектами OLE, 'PlainRTF' - то же, что и 'RTF', но без некоторых специфических тэгов, 'RTFNoObj' - то же, что и 'RTF', но без объектов OLE, 'Textized' то же, что и 'Text', но с объектами OLE в текстовом представлении, 'PlainRTFNoObj' - то же, что и 'PlainRTF', но но без объектов OLE. Все эти возможности не пригодятся в большинстве случаев. Обычно вполне достаточно двух параметров - 'Text' и 'RTF'.
Пример: | Mode$='RTF' PluginSet("PlugIn","Mode$") PluginRun("PlugIn","GetContent") PluginGet("PlugIn","Content$") Message("","Content$")

Команда | GetContentUpperCase
Описание | Эта функция предназначена для получения текста из RichEdit в верхнем регистре. Сама функция и её параметры полностью аналогичны функции GetContent.
Пример: | Mode$='RTF' PluginSet("PlugIn","Mode$") PluginRun("PlugIn","GetContentUpperCase") PluginGet("PlugIn","Content$") Message("","Content$")

Команда | GetContentLowerCase
Описание | Эта функция предназначена для получения текста из RichEdit в нижнем регистре. Сама функция и её параметры полностью аналогичны функции GetContent.
Пример: | Mode$='RTF' PluginSet("PlugIn","Mode$") PluginRun("PlugIn","GetContentLowerCase") PluginGet("PlugIn","Content$") Message("","Content$")

Команда | GetSelection
Описание | Эта функция предназначена для получения выделенного текста из RichEdit. Сама функция и её параметры полностью аналогичны функции GetContent.
Пример: | Mode$='RTF' PluginSet("PlugIn","Mode$") PluginRun("PlugIn","GetSelection") PluginGet("PlugIn","Selection$") Message("","Selection$")

Команда | GetPasswordChar
Описание | Эта функция возвращает символ, установленный функцией PasswordChar. Если результат этой функции равен нулю, символ пароля не используется.
Пример: | PluginRun("PlugIn","GetPasswordChar") PluginGet("PlugIn","PasswordChar") s$=CHR(PasswordChar) Message("","s$")

Команда | GetBGColor
Описание | Эта функция возвращает цвет фона RichEdit. Принимаемое значение - строка вида 'RED,GREEN,BLUE'.
Пример: | PluginRun("PlugIn","GetBGColor") PluginGet("PlugIn","BGColor$") Message("","BGColor$")

Команда | GetLastOpenedFile
Описание | Эта функция возвращает путь к файлу, который был открыт последним командой LoadFromFile).
Пример: | PluginRun("PlugIn","GetLastOpenedFile") PluginGet("PlugIn","LastOpenedFile$") Message("","LastOpenedFile$")

Команда | GetLineLength
Описание | Эта функция определяет длину любой строки в RichEdit. Функция принимает в качестве параметра номер строки.
Пример: | Line=0 PluginSet("PlugIn","Line") PluginRun("PlugIn","GetLineLength") PluginGet("PlugIn","Length") Message("","Length")

Команда | GetSelectionLen
Описание | Эта функция определяет длину выделенного текста.
Пример: | PluginRun("PlugIn","GetSelectionLen") PluginGet("PlugIn","Length") Message("","Length")

Команда | GetCaretPos
Описание | Эта функция определяет позицию каретки и длину выделенного текста в RichEdit. Возвращает строку вида 'X,Y,Length'. При наличии выделения, X означает начало выделения.
Пример: | PluginRun("PlugIn","GetCaretPos") PluginGet("PlugIn","pos$") Message("","pos$")

Команда | GetFontName
Описание | Эта функция возвращает имя шрифта в области форматирования.
Пример: | PluginRun("PlugIn","GetFontName") PluginGet("PlugIn","FontName$") Message("","FontName$")

Команда | GetFontSize
Описание | Эта функция возвращает размер шрифта в области форматирования.
Пример: | PluginRun("PlugIn","GetFontSize") PluginGet("PlugIn","FontSize") Message("","FontSize")

Команда | GetFontCharset
Описание | Эта функция возвращает набор символов шрифта для первого символа в области форматирования.
Пример: | PluginRun("PlugIn","GetFontCharset") PluginGet("PlugIn","FontCharset") Message("","FontCharset")

Команда | GetFontColor
Описание | Эта функция возвращает цвет шрифта в области форматирования.
Пример: | PluginRun("PlugIn","GetFontColor") PluginGet("PlugIn","FontColor$") Message("","FontColor$")

Команда | GetFontBackColor
Описание | Эта функция возвращает цвет фона для шрифта в области форматирования.
Пример: | PluginRun("PlugIn","GetFontBackColor") PluginGet("PlugIn","FontBackColor$") Message("","FontBackColor$")

Команда | GetFirstVisibleLine
Описание | Эта функция возвращает номер первой видимой строки в RichEdit. Строки, показанные частично, не учитываются.
Пример: | PluginRun("PlugIn","GetFirstVisibleLine") PluginGet("PlugIn","Count") Message("","Count")

Команда | GetLastVisibleLine
Описание | Эта функция возвращает номер последней видимой строки в RichEdit. Строки, показанные частично, не учитываются.
Пример: | PluginRun("PlugIn","GetLastVisibleLine") PluginGet("PlugIn","Count") Message("","Count")

Команда | GetLimitText
Описание | Эта функция возвращает ограничение количества символов, установленное при помощи LimitText.
Пример: | PluginRun("PlugIn","GetLimitText") PluginGet("PlugIn","GetLimitText") Message("","GetLimitText")

Команда | GetFocus
Описание | Эта функция возвращает 1, если RichEdit в фокусе, и 0 - если это не так.
Пример: | PluginRun("PlugIn","GetFocus") PluginGet("PlugIn","GetFocus") Message("","GetFocus")

Команда | GetModify
Описание | Эта функция возвращает 0, если RichEdit не был изменён. В противном случае функция возвращает код последней нажатой клавиши (см. Коды нажатых клавиш).
Пример: | PluginRun("PlugIn","GetModify") PluginGet("PlugIn","Modify") PluginGet("PlugIn","Modify$") If (Modify) Then Message("Has been pressed:","Modify$") Else Message("Has not been changed","") End

Команда | GetLine
Описание | Эта функция возвращает определённую строку в указанном формате. Формат указывается аналогично функции GetContent.
Пример: | Mode$='Text' PluginSet("PlugIn","Mode$") Line=0 PluginSet("PlugIn","Line") PluginRun("PlugIn","GetLine") PluginGet("PlugIn","GetLine$") Message("","GetLine$")

Команда | GetVersionOfRichDll
Описание | Показывает версию используемой библиотеки RichEdit (условно). Возвращает число - 1, 2, 3 или 4. 1 соответствует библиотеке версии 1.0, 2 - библиотеке версии 2.0, 3 - библиотеке версии 3.0, а 4 - библиотеке версии 4.1
Пример: | PluginRun("PlugIn","GetVersionOfRichDll") PluginSet("PlugIn","Ver") Message("","Ver")

Команда | GetPluginVersion
Описание | Возвращает версию плагина. Возвращает версию плагина в виде строки.
Пример: | PluginRun("PlugIn","GetPluginVersion") PluginSet("PlugIn","Ver$") Message("","Ver$")

Команда | GetUndoLimit
Описание | Возвращает ограничение количества отмен Undo, установленное функцией UndoLimit. Результат функции - число, -1 означает отсутствие ограничения Undo. По умолчанию ограничение установлено в 100. Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | PluginRun("PlugIn","GetUndoLimit") PluginSet("PlugIn","UndoLimit") Message("Now Undo Limit is:","UndoLimit")

Команда | GetUndoName
Описание | Возвращает тип ближайшей операции, которая может быть отменена при помощи Undo. Функция возвращает тип операции в виде строки: 'Unknown' - тип операции неизвестен 'Typing' - отмена ввода 'Delete' - отмена удаления 'DragDrop' - отмена перетаскивания 'Cut' - отмена вырезания 'Paste' - отмена вставки Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | PluginRun("PlugIn","GetUndoName") PluginSet("PlugIn","UndoName$") Message("Next Undo name is:","UndoName$")

Команда | GetRedoName
Описание | Возвращает тип ближайшей операции, которая может быть повторена при помощи Redo. Функция возвращает тип операции в виде строки: 'Unknown' - тип операции неизвестен 'Typing' - повтор ввода 'Delete' - повтор удаления 'DragDrop' - повтор перетаскивания 'Cut' - повтор вырезания 'Paste' - повтор вставки Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | PluginRun("PlugIn","GetRedoName") PluginSet("PlugIn","RedoName$") Message("Next Redo name is:","RedoName$")

Команда | GetWordSelection
Описание | Возвращает 1, если был активирован режим выделения целых слов (см. WordSelection), и 0 в противном случае.
Пример: | PluginRun("PlugIn","GetWordSelection") PluginSet("PlugIn","WordSelection") Message("","WordSelection")

Команда | GetPageRotate
Описание | Возвращает угол поворота холста RichEdit в градусах (см. PageRotate).
Пример: | PluginRun("PlugIn","GetWordSelection") PluginSet("PlugIn","WordSelection") Message("","WordSelection")

Команда | GetZoom
Описание | Эта функция возвращает степень увеличения. Функция требует наличия библиотеки Richedit версии 3.0+
Пример: | PluginRun("PlugIn","GetZoom") PluginGet("PlugIn","Zoom$") Message("","Zoom$")

Команда | GetFileType
Описание | Пытается определить тип текстового файла. Возвращаемое значение - строка: ANSI, RTF, UTF16LE, UTF16BE, UTF8, UNKNOWN. Последнее значение возвращается для всех остальных файлов.
Пример: | OpenFile("TXT Files (*.txt)|*.txt|RTF Files (*.rtf)|*.rtf|All Files|*.*||","") (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","GetFileType") PluginGet("PlugIn","type$") Message("","type$") End

Команда | IsFontBold
Описание | Эта функция возвращает 1, если в области форматирования используется стиль шрифта Bold, и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsFontBold") PluginGet("PlugIn","IsFontBold") Message("","IsFontBold")

Команда | IsFontItalic
Описание | Эта функция возвращает 1, если в области форматирования используется стиль шрифта Italic, и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsFontItalic") PluginGet("PlugIn","IsFontItalic") Message("","IsFontItalic")

Команда | IsFontStrikeOut
Описание | Эта функция возвращает 1, если в области форматирования используется стиль шрифта StrikeOut, и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsFontStrikeOut") PluginGet("PlugIn","IsFontStrikeOut") Message("","IsFontStrikeOut")

Команда | IsFontUnderLine
Описание | Эта функция возвращает 1, если в области форматирования используется стиль шрифта UnderLine, и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsFontUnderLine") PluginGet("PlugIn","IsFontUnderLine") Message("","IsFontUnderLine")

Команда | IsFontTrueType
Описание | Эта функция возвращает 1, если в области форматирования используется шрифт TrueType (т.е. масштабируемый), и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsFontTrueType") PluginGet("PlugIn","IsFontTrueType") Message("","IsFontTrueType")

Команда | IsVisibile
Описание | Эта функция возвращает 1, если плагин видим и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsVisibile") PluginGet("PlugIn","Visible") Message("","Visibile")

Команда | IsHasBorder
Описание | Эта функция возвращает 1, если плагин имеет бордюр и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsHasBorder") PluginGet("PlugIn","IsHasBorder") Message("","IsHasBorder")

Команда | IsEnabled
Описание | Эта функция возвращает 1, если плагин не отключен и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsEnabled") PluginGet("PlugIn","IsEnabled") Message("","IsEnabled")

Команда | IsAllowOLE
Описание | Эта функция возвращает 1, если плагин поддерживает объекты OLE и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsAllowOLE") PluginGet("PlugIn","IsAllowOLE") Message("","IsAllowOLE")

Команда | IsHideSelection
Описание | Эта функция возвращает 1, если плагину разрешено скрывать выделение и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsHideSelection") PluginGet("PlugIn","IsHideSelection") Message("","IsHideSelection")

Команда | IsURLDetect
Описание | Эта функция возвращает 1, если плагину разрешено определять гиперссылки и 0 - если это не так. Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | PluginRun("PlugIn","IsURLDetect") PluginGet("PlugIn","IsURLDetect") Message("","IsURLDetect")

Команда | IsURLAutoOpen
Описание | Эта функция возвращает 1, если плагину разрешено автоматически открывать гиперссылки и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsURLAutoOpen") PluginGet("PlugIn","IsURLAutoOpen") Message("","IsURLAutoOpen")

Команда | IsAutoKeyboard
Описание | Эта функция возвращает 1, если плагину разрешено автоматически менять раскладку клавиатуры и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsAutoKeyboard") PluginGet("PlugIn","IsAutoKeyboard") Message("","IsAutoKeyboard")

Команда | IsOnlyForNumbers
Описание | Эта функция возвращает 1, если плагину разрешено принимать только цифры и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsOnlyForNumbers") PluginGet("PlugIn","IsOnlyForNumbers") Message("","IsOnlyForNumbers")

Команда | IsAcceptFiles
Описание | Эта функция возвращает 1, если плагину разрешено принимать файлы и 0 - если это не так. Также функция возвращает локальность функции AcceptFiles в виде строки со значениями 'None', 'Selft', 'MMBForm' или пустую строку (если результат функции - ноль).
Пример: | PluginRun("PlugIn","IsAcceptFiles") PluginGet("PlugIn","IsAcceptFiles") PluginGet("PlugIn","IsAcceptFiles$") Message("","IsAcceptFiles$") Message("","IsAcceptFiles")

Команда | IsReadOnly
Описание | Эта функция возвращает 1, если плагин находится в режиме "только для чтения" и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsReadOnly") PluginGet("PlugIn","IsReadOnly") Message("","IsReadOnly")

Команда | IsTransparent
Описание | Эта функция возвращает 1, если плагин находится в режиме прозрачности и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsTransparent") PluginGet("PlugIn","IsTransparent") Message("","IsTransparent")

Команда | IsClear
Описание | Эта функция возвращает 1, если плагин не содержит какого-либо текста и 0 - если это не так. Символы переноса строки и возврата каретки считаются текстом и учитываются при подсчёте.
Пример: | PluginRun("PlugIn","IsClear") PluginGet("PlugIn","IsClear") Message("","IsClear")

Команда | IsEastAsianLocale
Описание | Эта функция возвращает 1, если текущий язык ввода - азиатский, и 0 - если это не так. Функция требует наличия библиотеки Richedit версии 3.0+
Пример: | PluginRun("PlugIn","IsEastAsianLocale") PluginGet("PlugIn","IsEastAsianLocale") If (IsEastAsianLocale) Then Message("current input locale is an East Asian locale","") Else Message("current input locale is not an East Asian locale","") End

Команда | IsSelectionMultiline
Описание | Эта функция возвращает 1, если область выделения расположена на нескольких строках, и 0 - если это не так.
Пример: | PluginRun("PlugIn","IsEastAsianLocale") PluginGet("PlugIn","IsEastAsianLocale") If (IsEastAsianLocale) Then Message("current input locale is an East Asian locale","") Else Message("current input locale is not an East Asian locale","") End


Ïðîêðóòêà

Прокрутка

Команда | ScrollUp
Описание | Прокручивает поле вверх на одну строку. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollUp")

Команда | ScrollDown
Описание | Прокручивает поле вниз на одну строку. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollDown")

Команда | ScrollPageUp
Описание | Прокручивает поле вверх на одну страницу. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollPageUp")

Команда | ScrollPageDown
Описание | Прокручивает поле вниз на одну страницу. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollPageDown")

Команда | ScrollPageLeft
Описание | Прокручивает поле влево на одну страницу. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollPageLeft")

Команда | ScrollPageRight
Описание | Прокручивает поле вправо на одну страницу. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollPageRight")

Команда | ScrollTop
Описание | Прокручивает поле в начало. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollTop")

Команда | ScrollBottom
Описание | Прокручивает поле в конец. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollBottom")

Команда | ScrollLeft
Описание | Прокручивает поле в крайнюю левую позицию. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollLeft")

Команда | ScrollRight
Описание | Прокручивает поле в крайнюю правую позицию. Эта функция вызывает событие OnScroll.
Пример: | PluginRun("PlugIn","ScrollRight")

Команда | ScrollCaret
Описание | Прокручивает поле так, чтобы каретка оказалась в поле видимости.
Пример: | PluginRun("PlugIn","ScrollCaret")

Команда | ScrollBarDisable
Описание | Деактивирует полосы прокрутки. Принимает в качестве параметра строку, содержащую 'Both', 'Vert' или 'Horz'.
Пример: | ScrollBars$='Both' PluginSet("PlugIn","ScrollBars$") PluginRun("PlugIn","ScrollBarDisable")

Команда | ScrollBarEnable
Описание | Активирует полосы прокрутки. Принимает в качестве параметра строку, содержащую 'Both', 'Vert' или 'Horz'.
Пример: | ScrollBars$='Both' PluginSet("PlugIn","ScrollBars$") PluginRun("PlugIn","ScrollBarEnable")

Команда | ScrollBarButtonDisable
Описание | Позволяет выборочно отключить кнопки полос прокрутки. Параметр - строка, содержащую 'Left', 'Right', 'Top' или 'Bottom'.
Пример: | ScrollButton$='Right' PluginSet("PlugIn","ScrollButton$") PluginRun("PlugIn","ScrollBarButtonDisable")

Команда | ScrollBars
Описание | Позволяет выбрать полосы прокрутки, которые будут отображены в случае, когда общий размер текста превысит размер его видимой части. В качестве параметра принимает строку, содержащую 'None', 'Vert', 'Horz' или 'Both'. Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | ScrollBars$='Vert' PluginSet("PlugIn","ScrollBars$") PluginRun("PlugIn","ScrollBars")

Команда | ScrollBarLeft
Описание | Заставляет RichEdit отображать горизонтальную полосу прокрутки слева.
Пример: | PluginRun("PlugIn","ScrollBarLeft")

Команда | ScrollBarRight
Описание | Заставляет RichEdit отображать горизонтальную полосу прокрутки справа.
Пример: | PluginRun("PlugIn","ScrollBarRight")


Ðàñêëàäêà êëàâèàòóðû

Раскладка клавиатуры

Команда | LoadKBLayout
Описание | Заменяет прежнюю раскладку клавиатуры на новую. Принимает в качестве параметра идентификатор (см. таблица доступных раскладок) раскладки. Возвращает 0 (в системе нет такой раскладки или произошла ошибка) или 1 (раскладка изменена). Следует иметь в виду, что раскладка будет переключена только для активного окна (окна, которое имеет фокус ввода). Поэтому, иногда может потребоваться вызов функции SetFocus.
Пример: | KBLayout=1033 PluginSet("PlugIn","KBLayout") PluginRun("PlugIn","LoadKBLayout") PluginGet("PlugIn","Success") If (Success=FALSE) Then Message("This layout is not present in the system","") End

Команда | LoadNextKBLayout
Описание | Меняет раскладку на следующую в системном списке. Возвращает число (идентификатор новой раскладки) и строку (имя новой раскладки в системе). Функция действует только для активного окна, имеющего фокус ввода.
Пример: | PluginRun("PlugIn","LoadNextKBLayout") PluginGet("PlugIn","KBLID") PluginGet("PlugIn","KBLName$") Message("","KBLID") Message("","KBLName$")

Команда | LoadPrevKBLayout
Описание | Меняет раскладку на предыдущую в системном списке. Возвращает число (идентификатор новой раскладки) и строку (имя новой раскладки в системе). Функция действует только для активного окна, имеющего фокус ввода.
Пример: | PluginRun("PlugIn","LoadPrevKBLayout") PluginGet("PlugIn","KBLID") PluginGet("PlugIn","KBLName$") Message("","KBLID") Message("","KBLName$")

Команда | CurrentKBLayout
Описание | Определяет текущую раскладку. Возвращает число (идентификатор текущей раскладки) и строку (имя текущей раскладки в системе).
Пример: | PluginRun("PlugIn","CurrentKBLayout") PluginGet("PlugIn","KBLID") PluginGet("PlugIn","KBLName$") Message("","KBLID") Message("","KBLName$")

Команда | ListOfLangID
Описание | Перечисляет все раскладки, доступные в системе и заносит из в массив. Массив представляет собой строку с разделителем '#', состоящий из числовых идентификаторов раскладок. Возвращает число (количество элементов массива) и строку (массив идентификаторов).
Пример: | PluginRun("PlugIn","ListOfLangID") PluginGet("PlugIn","KBLs$") PluginGet("PlugIn","KBLCount") s$='' For i=1 To KBLCount s$=s$+CHR(13)+CHR(10)+GetArrayItem(KBLs$, #, i) Next i Message("","s$")

Команда | LangIDToName
Описание | Преобразует идентификатор раскладки в системное имя этой раскладки. Принимает число (идентификатор раскладки), возвращает строку (имя раскладки в системе). В случае возникновения ошибки, функция вернёт пустую строку. Неизвестные идентификаторы раскладки не вызывают ошибки.
Пример: | KBLID=1033 PluginSet("PlugIn","KBLID") PluginRun("PlugIn","LangIDToName") PluginGet("PlugIn","KBLName$") s$='1033=>'+KBLName$ Message("","s$")

Команда | SystemDefaultLang
Описание | Определяет язык системы по умолчанию. Возвращает число (идентификатор языка) и строку (имя языка в системе).
Пример: | PluginRun("PlugIn","SystemDefaultLang") PluginGet("PlugIn","KBLID") PluginGet("PlugIn","KBLName$") Message("","KBLID") Message("","KBLName$")


Ðåäàêòèðîâàíèå

Редактирование

Команда | AddText
Описание | Эта функция добавляет текст в текущую позицию курсора.
Пример: | Text$='http://www.mmbuilder.ru' PluginSet("PlugIn","Text$") PluginRun("PlugIn","AddText")

Команда | AppendText
Описание | Эта функция добавляет текст к содержимому RichEdit, помещая его в самый конец.
Пример: | Text$='http://www.mmbuilder.ru' PluginSet("PlugIn","Text$") PluginRun("PlugIn","AppendText")

Команда | AddLine
Описание | Эта функция добавляет текст в текущую позицию курсора, располагая его на новой строке.
Пример: | Text$='Text...' PluginSet("PlugIn","Text$") PluginRun("PlugIn","AddLine")

Команда | AppendLine
Описание | Эта функция добавляет текст к содержимому RichEdit, располагая его на новой строке.
Пример: | Text$='Text...' PluginSet("PlugIn","Text$") PluginRun("PlugIn","AppendLine")

Команда | SetContent
Описание | Эта функция заменяет выделенный фрагмент указанным текстом. При этом нужно указать формат вставки: 'Text', 'RTF', 'PlainRTF', 'RTFNoObj', 'Textized', 'PlainRTFNoObj'.
Пример: | Mode$='RTF' PluginSet("PlugIn","Mode$") Content$='...content...' PluginSet("PlugIn","Content$") PluginRun("PlugIn","SetContent")

Команда | SelectAll
Описание | Эта функция выделяет весь текст RichEdit.
Пример: | PluginRun("PlugIn","SelectAll")

Команда | Clear
Описание | Эта функция очищает RichEdit от текста.
Пример: | PluginRun("PlugIn","Clear")

Команда | Delete
Описание | Эта функция удаляет выделенный текст.
Пример: | PluginRun("PlugIn","Delete")

Команда | Undo
Описание | Эта функция выполняет откат последнего изменения RichEdit.
Пример: | PluginRun("PlugIn","Undo")

Команда | Redo
Описание | Эта функция выполняет повтор последнего изменения RichEdit, отменённого при помощи Undo.
Пример: | PluginRun("PlugIn","Redo")

Команда | CanUndo
Описание | Эта функция определяет, возможен ли откат последнего изменения. Функция работает с Richedit 2.0+.
Пример: | PluginRun("PlugIn","CanUndo") PluginGet("PlugIn","CanUndo") If (CanUndo) Then Message("I can","") Else Message("My undo buffer is empty","") End

Команда | UndoLimit
Описание | Эта функция ограничивает количество отмен последних изменений. Параметр - число. Для снятия ограничения передайте плагину -1. Функция работает с Richedit 2.0+
Пример: | UndoLimit=9 PluginSet("PlugIn","UndoLimit") PluginRun("PlugIn","UndoLimit") Message("Now Undo Limit is:","UndoLimit")

Команда | EmptyUndoBuffer
Описание | Эта функция очищает буфер отмен плагина.
Пример: | PluginRun("PlugIn","EmptyUndoBuffer")

Команда | CanPaste
Описание | Функция возвращает 1 если содержимое буфера обмена может быть вставлено в поле редактирования, и 0 в противном случае.
Пример: | PluginRun("PlugIn","CanPaste") PluginGet("PlugIn","CanPaste") Message("","CanPaste")

Команда | CanRedo
Описание | Функция возвращает 1 если плагин может повторить последнее отменённое действие, и 0 в противном случае. Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | PluginRun("PlugIn","CanRedo") PluginGet("PlugIn","CanRedo") Message("","CanRedo")


Ñèìâîëû

Символы

Команда | Code10ToChar
Описание | Функция позволяет вводить в RichEdit символы без использования клавиатуры. В качестве параметра принимает код символа в диапазоне от 0 до 255. Функция действует аналогично функции PressChar.
Пример: | Code=33 PluginSet("PlugIn","Code") PluginRun("PlugIn","Code10ToChar")

Команда | Code16ToChar
Описание | Эта функция полностью аналогична функции Code10ToChar, но, в отличие от неё, в качестве параметра принимает шестнадцатеричное число вместо десятичного.
Пример: | Code$='FF' PluginSet("PlugIn","Code$") PluginRun("PlugIn","Code16ToChar")

Команда | Code10ToWChar
Описание | Эта функция похожа на функцию Code10ToChar, только принимает в качестве параметра код символа в диапазоне, соответствующем текущей UTF - кодировке. Теоретически верхний предел у форм записи UTF-8 и UTF-16 ограничен конецформыначалоформы231 (2 147 483 648), однако стандарт предполагает использование только 220+216 (1 114 112). Это продиктовано стремлением обеспечить совместимость с форматом UTF-16. В текущей версии Юникода (5.0) используется около 99 000 кодовых позиций.
Пример: | Code=RND(1423) PluginSet("PlugIn","Code") PluginRun("PlugIn","Code10ToWChar")

Команда | Code16ToWChar
Описание | Эта функция полностью аналогична функции Code10ToWChar, только в качестве параметра принимает шестнадцатеричное число вместо десятичного.
Пример: | Code$='18F' PluginSet("PlugIn","Code$") PluginRun("PlugIn","Code16ToWChar")

Команда | CharTaboo
Описание | Эта функция позволяет запретить ввод любого символа. В качестве параметра принимает строку символов с разделителем. Вид строки должен быть наподобие 'q,w,e'. Все упомянутые в строке символы будут игнорироваться полем RichEdit, при попытке ввести один из этих символов ничего не произойдёт. Чтобы отменить "табу" вызовите функцию CharTaboo снова, передав в качестве параметра пустую строку.
Пример: | Chars$='q,w,e' PluginSet("PlugIn","Chars$") PluginRun("PlugIn","CharTaboo")


Ñòðîêè

Строки

Команда | CopyLine
Описание | Эта функция копирует указанную строку в буфер обмена.
Пример: | Line=1 PluginSet("PlugIn","Line") PluginRun("PlugIn","CopyLine")

Команда | SelectLine
Описание | Эта функция выделяет указанную строку.
Пример: | Line=1 PluginSet("PlugIn","Line") PluginRun("PlugIn","SelectLine")

Команда | SelectLineOnClick
Описание | Эта функция включает и отключает режим, в котором плагин выделяет строку при щелчке на ней мышью.
Пример: | SelOnClick=SelOnClick<>TRUE PluginSet("PlugIn","SelOnClick") PluginRun("PlugIn","SelectLineOnClick")

Команда | DeleteLine
Описание | Эта функция удаляет указанную строку.
Пример: | Line=0 PluginSet("PlugIn","Line") PluginRun("PlugIn","DeleteLine")

Команда | DeleteLines
Описание | Эта функция удаляет строки в указанном диапазоне.
Пример: | FromLine=0 PluginSet("PlugIn","FromLine") ToLine=1 PluginSet("PlugIn","ToLine") PluginRun("PlugIn","DeleteLines")

Команда | SwapLines
Описание | Эта функция меняет местами две строки.
Пример: | Lines$='0,1' PluginSet("PlugIn","Lines$") PluginRun("PlugIn","SwapLines")

Команда | LimitLinesCount
Описание | Эта функция устанавливает ограничение на максимальное количество строк. Чтобы отключить ограничение, передайте плагину в качестве параметра ноль.
Пример: | LimitLinesCount=3 PluginSet("PlugIn","LimitLinesCount") PluginRun("PlugIn","LimitLinesCount")

Команда | LimitLinesLen
Описание | Эта функция устанавливает ограничение на максимальное количество символов в строке (хорошо использовать с моноширинными шрифтами). Чтобы отключить ограничение, передайте плагину в качестве параметра ноль.
Пример: | LimitLinesLen=3 PluginSet("PlugIn","LimitLinesLen") PluginRun("PlugIn","LimitLinesLen")

Команда | SetLine
Описание | Эта функция меняет содержимое строки на указанное вами. В качестве параметра принимает строку, определяющую формат передаваемого текста (см. функцию SetContent).
Пример: | Mode$='RTF' PluginSet("PlugIn","Mode$") SetLine$='{\rtf1\ansi\ansicpg1251\deff0\deflang1049{\fonttbl{\f0\fswiss\fcharset0 Arial;}}\uc1\pard\lang1033\ulwave\b\f0\fs17 SetLine function...}' PluginSet("PlugIn","SetLine$") Line=0 PluginSet("PlugIn","Line") PluginRun("PlugIn","SetLine")


Óòèëèòû

Утилиты

Команда | SetSelectionLen
Описание | Эта функция устанавливает длину выделения. Функция принимает в качестве параметра длину выделения в символах. При этом любой OLE-объект считается одним символом.
Пример: | Length=5 PluginSet("PlugIn","Length") PluginRun("PlugIn","SetSelectionLen")

Команда | MoveSelection
Описание | Эта функция перемещает выделение вправо или влево на указанное количество символов. Функция принимает в качестве параметра целое число.
Пример: | MoveTo=RND(5)-3 PluginSet("PlugIn","MoveTo") PluginRun("PlugIn","MoveSelection")

Команда | GetRTFFromString
Описание | Эта функция создаёт RTF-форматированную строку из обычной ANSI-строки. В качестве параметра функция принимает строку, из которой необходимо.
Пример: | string$='RTF is cool format!' PluginSet("PlugIn","string$") PluginRun("PlugIn","GetRTFFromString") PluginGet("PlugIn","string$") Message("","string$")

Команда | GetRTFFromSelection
Описание | Эта функция создаёт RTF-форматированную строку из выделенного в RichEdit текста.
Пример: | PluginRun("PlugIn","GetRTFFromSelection") PluginGet("PlugIn","string$") Message("","string$")

Команда | BitmapToRTF
Описание | Эта функция создаёт RTF-представление bmp-картинки. В качестве параметра функция принимает строку, содержащую путь к файлу картинки. Функция возвращает RTF-отформатированную строку, содержащую картинку, а так же длину этой строки.
Пример: | Message("Do not choose the big files!""") OpenFile$='' OpenFile("BMP Files (*.bmp)|*.bmp|All Files|*.*||","") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","BitmapToRTF") PluginGet("PlugIn","BMP$") PluginGet("PlugIn","BMPLen") If (BMPLen>500) Then Message("Image is Too big To display in message box.","") Else Message("","BMP$") End End

Команда | InsertBitmap
Описание | Эта функция кладёт указанную bmp-картинку в текущее положение каретки. В качестве параметра функция принимает строку, содержащую путь к файлу картинки.
Пример: | OpenFile$='' OpenFile("BMP Files (*.bmp)|*.bmp|All Files|*.*||","") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","InsertBitmap") End

Команда | InsertHyperlink
Описание | Эта функция вставляет гиперссылку в текущее положение каретки. В качестве параметра функция принимает строки, содержащие текст гиперссылки, адрес гиперссылки и её цвет. В качестве ссылки можно написать путь к любому локальному файлу. В этом случае в пути нужно использовать двойной слеш вместо одиночного, например 'C:\\localfile'.
Пример: | **Текст гиперссылки Caption$='Please visit my site' PluginSet("PlugIn","Caption$") **Адрес гиперссылки Link$='www.mmbuilder.ru' PluginSet("PlugIn","Link$") **Цвет гиперссылки, если требуется, **или "Standard" для использования стандартного цвета **или пустая строка, чтобы использовать цвет текущего форматирования Color$='Standard' PluginSet("PlugIn","Color$") PluginRun("PlugIn","InsertHyperlink")

Команда | MakeHyperlink
Описание | Эта функция создаёт гиперссылку из выделенного текста. Параметры этой функции полностью аналогичны параметрам функции InsertHyperlink, за исключением параметра текста гиперссылки - он не нужен. В качестве ссылки можно написать путь к любому локальному файлу. В этом случае в пути нужно использовать двойной слеш вместо одиночного, например 'C:\\localfile'.
Пример: | **Линк гиперссылки Link$='www.mmbuilder.ru' PluginSet("PlugIn","Link$") **Цвет гиперссылки, если требуется задать особый, **или "Standard" для обычного цветового оформления **или пустая строка, чтобы использовать цвет текущего форматирования Color$='Standard' PluginSet("PlugIn","Color$") PluginRun("PlugIn","MakeHyperlink")

Команда | DeleteEmptyLines
Описание | Функция для удаления строк, не содержащих текста (пустых).
Пример: | PluginRun("PlugIn","DeleteEmptyLines")

Команда | DuplicateLine
Описание | Функция для дублирования строки с указанным номером.
Пример: | Line=0 PluginSet("PlugIn","Line") PluginRun("PlugIn","DuplicateLine")

Команда | DoBeep
Описание | Функция для воспроизведения системного звукового сообщения. Параметр - строка (в скобках даны названия каждого сообщения): MB_ICONASTERISK (SystemAsterisk) MB_ICONEXCLAMATION (SystemExclamation) MB_ICONHAND (SystemHand) MB_ICONQUESTION (SystemQuestion) MB_OK (SystemDefault)
Пример: | Beep$='MB_ICONASTERISK' PluginSet("PlugIn","Beep$") PluginRun("PlugIn","DoBeep")

Команда | DoSimpleBeep
Описание | Функция для воспроизведения системного звукового сообщения, которое соответствует параметру MB_OK функции DoBeep
Пример: | PluginRun("PlugIn","DoSimpleBeep")


Ôàéëû

Файлы

Команда | LoadFromFile
Описание | Загружает текстовый файл в объект RichEdit, вставляя текст в текущую позицию курсора. Файл может иметь один из следующих форматов: UTF-16 Low Endian, UTF-16 Big Endian, UTF-8, ANSI, RTF. Формат файла определяется автоматически. Если файл не имеет надлежащей сигнатуры, он будет прочитан как файл ANSI. Одно замечание: данная процедура не заменяет содержимое RichEdit текстом из файла, а добавляет к текст к нему. Таким образом, если необходимо заменить содержимое RichEdit текстом из файла, нужно сперва очистить RichEdit функцией Clear, а затем вызывать функцию LoadFromFile. Функция LoadFromFile модифицирует внутреннюю переменную, содержащую путь к последнему открытому файлу. Таким образом, вы всегда можете узнать, что за файл перед вами (см. функцию GetLastOpenedFile).
Пример: | OpenFile$='' OpenFile("TXT Files (*.txt)|*.txt|RTF Files (*.rtf)|*.rtf|All Files|*.*||","") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","LoadFromFile") End

Команда | SaveToFileUTF16LE
Описание | Сохраняет содержимое RichEdit в файл с использованием представления UTF-16 Low Endian.
Пример: | SaveFile("Text Files|*.txt||","*.txt") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","SaveToFileUTF16LE") End

Команда | SaveToFileUTF16BE
Описание | Сохраняет содержимое RichEdit в файл с использованием представления UTF-16 Big Endian.
Пример: | SaveFile("Text Files|*.txt||","*.txt") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","SaveToFileUTF16BE") End

Команда | SaveToFileUTF8
Описание | Сохраняет содержимое RichEdit в файл с использованием представления UTF-8.
Пример: | SaveFile("Text Files|*.txt||","*.txt") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","SaveToFileUTF8") End

Команда | SaveToFileRTF
Описание | Сохраняет содержимое RichEdit в файл в формате Rich Text.
Пример: | SaveFile("Text Files|*.txt||","*.txt") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","SaveToFileRTF") End

Команда | SaveToFileANSI
Описание | Сохраняет содержимое RichEdit в файл в формате ANSI (обычный текст).
Пример: | SaveFile("Text Files|*.txt||","*.txt") If (OpenFile$<>'') Then PluginSet("PlugIn","OpenFile$") PluginRun("PlugIn","SaveToFileANSI") End


Ôèëüòðàöèÿ ââîäà

Фильтрация ввода

Команда | OnlyUpperCase
Описание | Эта функция принуждает плагин менять регистр всех вводимых символов на верхний. Функция требует наличия библиотеки Richedit версии 3.0+ См. также функцию OnlyLowerCase.
Пример: | PluginRun("PlugIn","OnlyUpperCase")

Команда | OnlyLowerCase
Описание | Эта функция принуждает плагин менять регистр всех вводимых символов на нижний. Функция требует наличия библиотеки Richedit версии 3.0+ См. также функцию OnlyUpperCase.
Пример: | PluginRun("PlugIn","OnlyLowerCase")

Команда | UseDefaultCase
Описание | Эта функция отключает функции OnlyUpperCase и OnlyLowerCase.
Пример: | PluginRun("PlugIn","UseDefaultCase")

Команда | OverwriteMode
Описание | Эта функция активирует режим перезаписи при вводе, аналогично нажатию на клавижу Insert.
Пример: | PluginRun("PlugIn","OverwriteMode")

Команда | InsertMode
Описание | Эта функция деактивирует режим перезаписи при вводе, аналогично нажатию на клавижу Insert.
Пример: | PluginRun("PlugIn","InsertMode")

Команда | OverwritePermission
Описание | Эта функция разрешает и запрещает смену режима вставки-замены. Если эта функция активирована, то нажатие на клавишу Insert не приведёт к смене режима ввода.
Пример: | PluginSet("PlugIn","TRUE") PluginRun("PlugIn","OverwritePermission")

Команда | NoReturn
Описание | Эта функция разрешает и запрещает переводить строку по нажатию на клавишу Enter.
Пример: | PluginSet("PlugIn","TRUE") PluginRun("PlugIn","NoReturn")

Команда | LimitText
Описание | Эта функция ограничивает максимальный размер текста, который может быть введён. Теоретически размер текста в контроле RichEdit ограничен четырьмя гигабайтами. Фактически пределом является размер немного меньший, чем размер свободной виртуальной памяти компьютера. По умолчанию плагин может вместить до 2147483647 байт текста. Это - максимальное значение, которое вы можете послать плагину из ММВ, поскольку ММВ использует переменные в 4-байтовом представлении. Чтобы использовать системное ограничение (65535 байт для Windows XP) пошлите плагину нулевое значение. Заметьте, что любые нетекстовые объекты (OLE, или, согласно MSDN, COM-объекты) считаются одним символом. Заметьте также, что уже введённый текст не будет усечён, а при использовании юникода каждый символ занимает не один, а два байта. Также ограничение не затрагивает загружаемые простые текстовые файлы - такие файлы будут загружены. Оно распространяется только на загружаемые файлы в формате RTF.
Пример: | LimitText=300 PluginSet("PlugIn","LimitText") PluginRun("PlugIn","LimitText")


Ôîðìàòèðîâàíèå

Форматирование

Команда | EditArea
Описание | Эта функция определяет область форматирования. Все изменения стиля текста, начертания и прочее, выполняется только для области форматирования. В качестве параметра следует передать функции одно из значений: 'Selection' (выделеление) , 'Word' (слово, на которое установлена каретка) или 'All' (весь текст) . По умолчанию областью форматирования является область 'Selection'.
Пример: | EditArea$='All' PluginSet("PlugIn","EditArea$") PluginRun("PlugIn","EditArea")

Команда | SetNumbering
Описание | Эта функция позволяет быстро включить или отключить маркировку текста в области форматирования. Поддерживается только маркировка в виде кружка. Также возможны другие виды маркировки (см. функцию NumberingStyle).
Пример: | Numbering=Numbering<>TRUE PluginSet("PlugIn","Numbering") PluginRun("PlugIn","SetNumbering")

Команда | NumberingStyle
Описание | Эта функция позволяет включить или отключить маркировку текста в области форматирования.Эта функция похожа на функцию SetNumbering, но отличие состоит в том, что функция NumberingStyle позволяет задать более широкий круг стилей маркировки. Принимаемые значения: 'Bullets', 'Arabic', 'LetterBig', 'LetterSmall', 'RomanBig', 'RomanSmall', 'None'.
Пример: | Style$='RomanBig' PluginSet("PlugIn","Style$") PluginRun("PlugIn","NumberingStyle")

Команда | NumberingStart
Описание | Эта функция устанавливает начальное значение маркировки, которое по умолчанию имеет нулевое значение. Передаваемое значение - любое положительное число, которое будет использовано как начальное значение маркировки. В случае использования стиля маркировки 'RomanBig' или 'RomanSmall' начальное значение не может быть нулём, а в случае использования 'LetterBig' или 'LetterSmall' начальному значению 1 соответствует буква A. Имеет смысл использовать эту функцию только со стилем маркировки, отличным от 'Bullets'.
Пример: | NumberingShift=300 PluginSet("PlugIn","NumberingShift") PluginRun("PlugIn","NumberingShift")

Команда | NumberingBrackets
Описание | Эта функция позволяет изменить расположение и количество скобок около маркеров. Принимаемые значения: 'Right', 'Both', 'Period', 'Space', 'None'. Имеет смысл использовать только со стилем маркировки, отличным от 'Bullets'.
Пример: | Brackets$='Both' PluginSet("PlugIn","Brackets$") PluginRun("PlugIn","NumberingBrackets")

Команда | NumberingTab
Описание | Эта функция регулирует размер пробела между меткой маркировки и началом текста. Как и в случае с размером шрифта, функция принимает значение в твипах.
Пример: | NumberingTab=300 PluginSet("PlugIn","NumberingTab") PluginRun("PlugIn","NumberingShift")

Команда | LineSpacing
Описание | Эта функция регулирует расстояние между строк. Параметр - расстояние в процентах, начиная со 100 (обычное расстояние). Следует указывать значения с шагом 5, т.е. 100, 105, 110 и т.д.
Пример: | Spacing=115 PluginSet("PlugIn","Spacing") PluginRun("PlugIn","LineSpacing")

Команда | LeftMargin
Описание | Эта функция изменяет величину левого отступа. Принимает число - величина отступа в пикселях. Эта функция нейтрализует действие функции ParagraphStartIndent
Пример: | LeftMargin=RND(50) PluginSet("PlugIn","LeftMargin") PluginRun("PlugIn","LeftMargin")

Команда | RightMargin
Описание | Эта функция изменяет величину правого отступа. Принимает число - величина отступа в пикселях. Эта функция нейтрализует действие функции ParagraphStartIndent
Пример: | RightMargin=RND(50) PluginSet("PlugIn","RightMargin") PluginRun("PlugIn","RightMargin")

Команда | ParagraphSpaceBefore
Описание | Эта функция изменяет величину верхнего отступа для текста в области форматирования.
Пример: | SpaceBefore=RND(500) PluginSet("PlugIn","SpaceBefore") PluginRun("PlugIn","ParagraphSpaceBefore")

Команда | ParagraphSpaceAfter
Описание | Эта функция изменяет величину нижнего отступа для текста в области форматирования.
Пример: | ParagraphSpaceAfter=RND(500) PluginSet("PlugIn","SpaceAfter") PluginRun("PlugIn","ParagraphSpaceAfter")

Команда | ParagraphStartIndent
Описание | Эта функция изменяет величину левого отступа для абзаца, на который установлена каретка. Отступ сохраняется также для абзацев, расположенных ниже. Функцию очень удобно использовать, чтобы создать левое поле, на котором щелчок мышью приводит к выделению целой строки.
Пример: | StartIndent=RND(500) PluginSet("PlugIn","StartIndent") PluginRun("PlugIn","ParagraphStartIndent")

Команда | ParagraphRightIndent
Описание | Эта функция изменяет величину правого отступа для абзаца, на который установлена каретка. Отступ сохраняется также для абзацев, расположенных ниже.
Пример: | RightIndent=RND(500) PluginSet("PlugIn","RightIndent") PluginRun("PlugIn","ParagraphRightIndent")

Команда | ParagraphOffset
Описание | Эта функция изменяет величину левого отступа для тела абзаца, исключая верхнюю линию. Отступ сохраняется для всех последующих абзацев.
Пример: | Offset=RND(500) PluginSet("PlugIn","Offset") PluginRun("PlugIn","ParagraphOffset")

Команда | ParagraphAlign
Описание | Эта функция изменяет выравнивание абзаца. Функция принимает в качестве параметра строку: 'Left', 'Center' или 'Right'.
Пример: | ParagraphAlign$='Center' PluginSet("PlugIn","ParagraphAlign$") PluginRun("PlugIn","ParagraphAlign")


Øðèôò

Шрифт

Команда | FontName
Описание | Функция служит для смены шрифта по имени. Строка, переданная плагину должна в точности соответствовать имени шрифта, который вы хотите установить. Смена шрифта происходит только в пределах области форматирования.
Пример: | FontName$='Verdana' PluginSet("PlugIn","FontName$") PluginRun("PlugIn","FontName")

Команда | FontSize
Описание | Функция служит для смены размера шрифта. В качестве единицы измерения используются твипы, а не кегель, как это принято. Один твип составляет 1/1440 дюйма, 1/20 точки принтера или приблизительно 1/10 пикселя. Для сравнения - шрифт размером 160 твипов равняется приблизительно шрифту размером в 8 кеглей. Функция распространяется только на область форматирования.
Пример: | FontSize=20 PluginSet("PlugIn","FontSize") PluginRun("PlugIn","FontSize")

Команда

FontCharset

Описание

Функция для смены набора символов шрифта. Принимаемое значение - число от 0 до 255. Функция распространяется только на область форматирования. Принимает строку - одно из значений:

ANSI_CHARSET

ARABIC_CHARSET

BALTIC_CHARSET

DEFAULT_CHARSET

EASTEUROPE_CHARSET

GB2312_CHARSET

GREEK_CHARSET

HANGEUL_CHARSET

HEBREW_CHARSET

CHINESEBIG5_CHARSET

JOHAB_CHARSET

MAC_CHARSET

OEM_CHARSET

RUSSIAN_CHARSET

SHIFTJIS_CHARSET

SYMBOL_CHARSET

THAI_CHARSET

TURKISH_CHARSET

VIETNAMESE_CHARSET

OEM_CHARSET - будет использован шрифт вашей операционной системы. DEFAULT_CHARSET - в Windows NT\2000\XP будет использован текущий системный набор символов (например, для английского будет использован ANSI_CHARSET), в Windows 95\98\Me может дать неожиданный результат. Используйте эту функцию осторожно - при смене шрифта убедитесь, что набор символов соответствует языку выбранного шрифта.

Пример:

FontCharset$='THAI_CHARSET'

PluginSet("PlugIn","FontCharset$")

PluginRun("PlugIn","FontCharset")

Команда

FontQuality

Описание

Функция для установки качества отрисовки шрифта. Эта функция указывает системе GDI, насколько точно отображаемый шрифт должен соответствовать своему логическому представлению. Принимает строку - одно из значений (приведено с описаниями):

Default - качество по умолчанию.

Draft - для растровых шрифтов будет доступно масштабирование. Это означает, что будет доступен больший диапазон размеров шрифта, но качество может быть более низким.

Proof - для растровых шрифтов масштабирование не будет доступно, будет использоваться шрифт, ближайший по размеру. Хотя выбранный размер не будет точно отображён, качество шрифта будет высоким и без искажений.

NonAntialiased - Windows 95/98/Me, Windows NT 4.0 и выше: не использовать сглаживание.

Antialiased - Windows NT 4.0 и выше: всегда сглаживать шрифт, если он поддерживает сглаживание и размер шрифта - не слишком маленький и неслишком большой.

ClearType - Windows XP: по возможности сглаживать шрифт, используя метод сглаживания ClearType. Эта установка будет работать только для шрифтов TrueType и может не работать для некоторых шрифтов восточной азии.

Функция распространяется только на область форматирования (см. EditArea). Обычно менять качество рисования шрифта нет необходимости.

Пример:

FontQuality$='ClearType'

PluginSet("PlugIn","FontQuality$")

PluginRun("PlugIn","FontQuality")

Команда | FontColor
Описание | Функция для смены цвета шрифта. Принимаемое значение - строка вида 'RED,GREEN,BLUE'. Функция распространяется только на область форматирования.
Пример: | FontColor$='0,0,255' PluginSet("PlugIn","FontColor$") PluginRun("PlugIn","FontColor")

Команда | FontBackColor
Описание | Функция для смены фонового цвета шрифта. Принимаемое значение - строка вида 'RED,GREEN,BLUE'. Функция распространяется только на область форматирования.
Пример: | FontColor$='0,0,255' PluginSet("PlugIn","FontColor$") PluginRun("PlugIn","FontBackColor")

Команда | Bold
Описание | Функция для изменения стиля шрифта на полужирный и обратно. Функция распространяется только на область форматирования.
Пример: | PluginSet("PlugIn","TRUE") PluginRun("PlugIn","Bold")

Команда | Italic
Описание | Функция для изменения стиля шрифта на наклонный и обратно. Функция распространяется только на область форматирования.
Пример: | PluginSet("PlugIn","TRUE") PluginRun("PlugIn","Italic")

Команда | StrikeOut
Описание | Функция для изменения стиля шрифта на зачёркнутый и обратно. Функция распространяется только на область форматирования.
Пример: | PluginSet("PlugIn","TRUE") PluginRun("PlugIn","StrikeOut")

Команда | UnderLine
Описание | Функция для изменения стиля шрифта на подчёркнутый и обратно. Функция распространяется только на область форматирования. Принимаемые значения: 'None', 'Dash', 'DashDot', 'DashDotDot', 'Dotted', 'Double', 'Hairline', 'Single', 'Thick', 'Wave', 'Word'. Заметьте: стили подчёркивания 'Dash', 'DashDot', 'DashDotDot', 'Wave', 'Thick', 'Hairline' не могут быть отображены при использовании библиотеки RichEdit версии 3.0 и ниже. Стили 'Dotted', 'Double', 'Word', 'Single' отображаются всегда.
Пример: | UnderLine$='Wave' PluginSet("PlugIn","UnderLine$") PluginRun("PlugIn","UnderLine")


Ýôôåêòû

Эффекты

Команда | ScriptStyle
Описание | Эта функция создаёт верхний и нижний индекс для текста (пример: ТекстИндекс). Действие этой функции распространяется только на область форматирования. Функция принимает в качестве параметра число, положительным значениям которого соответствует верхний индекс, отрицательным - нижний, нулю - отсутствие индекса.
Пример: | ScriptStyle=60 PluginSet("PlugIn","ScriptStyle") PluginRun("PlugIn","ScriptStyle")

Команда | SetProtected
Описание | Эта функция усланавливает флаг защиты для символов в области форматирования. Это значит, что при изменении области текста, которая помечена как защищённая, будет генерироваться событие OnProtectedChange. Параметр - число 0 (снять флаг защиты) или 1 (установить флаг защиты).
Пример: | Protected=Protected<>TRUE PluginSet("PlugIn","Protected") PluginRun("PlugIn","SetProtected")

Команда | SetDisabled
Описание | Эта функция создаёт эффект тени для текста. Данный эффект несовместим с нестандартным цветом шрифта или фона шрифта. Не рекомендуется к использованию. Параметр - число 0 (удалить эффект) или 1 (создать эффект). Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | Disabled=Disabled<>TRUE PluginSet("PlugIn","Disabled") PluginRun("PlugIn","SetDisabled")

Команда | SetEmboss
Описание | Эта функция создаёт эффект рельефа для текста. Данный эффект не отображается плагином, но виден в Microsoft Word. Параметр - число 0 (удалить эффект) или 1 (создать эффект). Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | Emboss=Emboss<>TRUE PluginSet("PlugIn","Emboss") PluginRun("PlugIn","SetEmboss")

Команда | SetImprint
Описание | Эта функция создаёт эффект вдавленного текста. Данный эффект не отображается плагином, но виден в Microsoft Word. Параметр - число 0 (удалить эффект) или 1 (создать эффект). Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | Imprint=Imprint<>TRUE PluginSet("PlugIn","Imprint") PluginRun("PlugIn","SetImprint")

Команда | SetOutline
Описание | Эта функция создаёт эффект обведённого текста. Данный эффект не отображается плагином, но виден в Microsoft Word. Параметр - число 0 (удалить эффект) или 1 (создать эффект). Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | Outline=Outline<>TRUE PluginSet("PlugIn","Outline") PluginRun("PlugIn","SetOutline")

Команда | SetShadow
Описание | Эта функция создаёт эффект тени. Данный эффект не отображается плагином, но виден в Microsoft Word. Параметр - число 0 (удалить эффект) или 1 (создать эффект). Функция требует наличия библиотеки Richedit версии 2.0+
Пример: | Shadow=Shadow<>TRUE PluginSet("PlugIn","Shadow") PluginRun("PlugIn","SetShadow")

Команда | SetAutoBackColor
Описание | Эта функция устанавливает стандартный цвет фона шрифта (системный цвет COLOR_WINDOW).
Пример: | PluginRun("PlugIn","SetAutoBackColor")

Команда | SetAutoColor
Описание | Эта функция устанавливает стандартный цвет шрифта (системный цвет COLOR_WINDOWTEXT).
Пример: | PluginRun("PlugIn","SetAutoColor")

Команда | SetRevAuthor
Описание | Эта функция устанавливает выделенному тексту индекс автора-корректора. Текст каждого автора выделяется своим цветом, при этом текущее форматирование и реальные цвета не изменяются. Индекс автора не сохраняется в файле и действует только во время одного сеанса редактирования. Параметр - число в диапазоне от 0 до 255.
Пример: | RevAuthor=RND(255) PluginSet("PlugIn","RevAuthor") PluginRun("PlugIn","SetRevAuthor")


Âàðèàíòû ïëàãèíà

Навигация: Прочее >

Варианты плагина

 Return to chapter overview

Плагин существует в нескольких вариантах, называемых компиляциями. Каждая компиляция предназначена для определённых целей.

UnicodeRTFEdit Runtime.

Эту компиляцию следует использовать для конечной сборки проекта. Он имеет меньший размер, не имеет кода, ненужного во времени выполнения. Также эта версия не имеет панели свойств (которая полезна только для разработки) и более стабильна в работе.

UnicodeRTFEdit Designtime.

Эта компиляция адаптирована для времени разработки. Она включает в себя панель свойств и содержит встроенное средство отладки. Первоначально, средства отладки были созданы для выявления скрытых ошибок в функциях плагина, но впоследствии они были переделаны для использования во время создания проекта. Данную компиляцию следует использовать только для отладки проекта, перед финальной сборкой программы.

Во время своей работы плагин выводит информацию в журнал событий и в файл. Журнал событий - это специальное окно с текстовым полем, в котором можно просмотреть все события, занесённые туда плагином. Файл предназначен для дублирования журнала и располагается в корне диска "C:\" с именем "UnicodeRTFEdit log file.txt". Дублирование журнала будет полезно, чтобы выяснить причину аварийного завершения работы программы (когда нет возможности просмотреть журнал). Также плагин выводит некоторые предупреждения. Предупреждения - это события журнала, которые требуют внимания. Они маркируются словом "WARNING!" и выделяются тёмно-оранжевым цветом.

Предупреждение | Значение
Wrong parameter! | Функции был передан неверный параметр. Следует проверить правильность параметров: диапазон допустимых значений (в случае с числовыми параметрами) и регистр параметров (в случае со строковыми параметрами). Также данное предупреждение может быть следствием отсутствия передачи плагину параметра - поскольку плагин использует последний переданный параметр, то, в случае отсутствия передачи параметра, он может быть неправильным.
File doesn't exist! | В функциях, принимающих путь к файлу как параметр: указанный файл не был найден.
The function was not successful! | Функции были переданы правильные параметры (если не указано иное), но по каким-то причинам функция не смогла отработать и потерпела неудачу. Возможно, произошла системная ошибка.
Probably, plural call! | Функция с одним и тем же именем была вызвана больше одного раза подряд, менее чем за 100 миллисекунд. При возникновении этого предупреждения сперва следует проверить, что имя передаваемого или получаемого у плагина числового параметра не совпадает с именем вызванной ранее функции.

Если возникает какое-либо предупреждение, окно журнала немедленно всплывает на передний план. В заголовке окна при этом отображается количество выданных предупреждений.

Каждое событие в журнале маркируется уникальным словом (маркером), которое отображает назначение события.

Маркер | Цвет | Значение
Call: |  | Была вызвана функция с указанным именем.
Done: | Ярко-зелёный | Указанная функция отработала (успешно или нет).
iPar: |  | Функция использовала числовой параметр, имеющий указанное значение.
sPar: |  | Функция использовала строковой параметр, имеющий указанное значение.
iRet: |  | Функция вернула числовой результат, имеющий указанное значение.
sRet: |  | Функция вернула строковой результат, имеющий указанное значение.
WARNING: | Тёмно-оранжевый | Произошло потенциально опасное событие (чаще всего во время работы функции).
Info: |  | Различная информация.

По умолчанию окно журнала не отображается на экране, но вы можете вызвать его командой плагина OpenLog.

UnicodeRTFEdit Wrapper.

Этот вариант предназначен для случаев, когда необходимо использовать несколько плагинов в одном проекте (два и более). Поскольку спецификация плагинов типа 2 (к которым относится и UnicodeRTFEdit) предполагает использование по одному файлу dll на каждый объект плагина, то при наличии в проекте нескольких плагинов размер проекта вырастет пропорционально количеству плагинов. Вариант Wrapper поможет избежать дублирования плагина и съэкономит размер проекта.


Òàáëèöà äîñòóïíûõ ðàñêëàäîê

Навигация: Прочее >

Таблица доступных раскладок

 Return to chapter overview

Все функции для работы с раскладками основаны на использовании идентификаторов. Например, для того чтобы сменить раскладку с русской на английскую, вы должны указать плагину идентификатор английской раскладки. Для того чтобы узнать идентификатор нужной раскладки, используйте таблицу внизу.

Язык

ID

Language Neutral

Process Default Language

Arabic (Saudi Arabia)

Arabic (Iraq)

Arabic (Egypt)

Arabic (Libya)

Arabic (Algeria)

Arabic (Morocco)

Arabic (Tunisia)

Arabic (Oman)

Arabic (Yemen)

Arabic (Syria)

Arabic (Jordan)

Arabic (Lebanon)

Arabic (Kuwait)

Arabic (U.A.E.)

Arabic (Bahrain)

Arabic (Qatar)

Bulgarian

Catalan

Chinese (Taiwan)

Chinese (PRC)

Chinese (Hong Kong)

Chinese (Singapore)

Czech

Danish

German (Standard)

German (Swiss)

German (Austrian)

German (Luxembourg)

German (Liechtenstein)

Greek

English (United States)

English (United Kingdom)

English (Australian)

English (Canadian)

English (New Zealand)

English (Ireland)

English (South Africa)

English (Jamaica)

English (Caribbean)

English (Belize)

English (Trinidad)

Spanish (Traditional Sort)

Spanish (Mexican)

Spanish (Modern Sort)

Spanish (Guatemala)

Spanish (Costa Rica)

Spanish (Panama)

Spanish (Dominican Republic)

Spanish (Venezuela)

Spanish (Colombia)

Spanish (Peru)

Spanish (Argentina)

Spanish (Ecuador)

Spanish (Chile)

Spanish (Uruguay)

Spanish (Paraguay)

Spanish (Bolivia)

Spanish (El Salvador)

Spanish (Honduras)

Spanish (Nicaragua)

Spanish (Puerto Rico)

Finnish

French (Standard)

French (Belgian)

French (Canadian)

French (Swiss)

French (Luxembourg)

Hebrew

Hungarian

Icelandic

Italian (Standard)

Italian (Swiss)

Japanese

Korean

Korean (JoHab)

Dutch (Standard)

Dutch (Belgian)

Norwegian (Bokmal)

Norwegian (Nynorsk)

Polish

Portuguese (Brazilian)

Portuguese (Standard)

Romanian

Russian

Croatian

Serbian

Slovak

Albanian

Swedish

Swedish (Finland)

Thai

Turkish

Indonesian

Ukrainian

Belarusian

Slovenian

Estonian

Latvian

Lithuanian

Serbian

Farsi

Basque

Afrikaans

Faeroese

0

1024

1025

2049

3073

4097

5121

6145

7169

8193

9217

10241

11265

12289

13313

14337

15361

16385

1026

1027

1028

2052

3076

4100

1029

1030

1031

2055

3079

4103

5127

1032

1033

2057

3081

4105

5129

6153

7177

8201

9225

10249

11273

1034

2058

3082

4106

5130

6154

7178

8202

9226

10250

11274

12298

13322

14346

15370

16394

17418

18442

19466

20490

1035

1036

2060

3084

4108

5132

1037

1038

1039

1040

2064

1041

1042

2066

1043

2067

1044

2068

1045

1046

2070

1048

1049

1050

3098

1051

1052

1053

2077

1054

1055

1057

1058

1059

1060

1061

1062

1063

2074

1065

1069

1078

1080


Ñîáûòèÿ

Навигация: Прочее >

События

 Return to chapter overview

Плагин может уведомлять вас, когда его состояние изменяется. Этой цели служат события. Событие возникает в ответ на какое-либо действие пользователя, приводящее к изменению состояния плагина (ввод символа, прокрутка текста, манипуляции мышью и т.д.). Каждое событие запускает свой сценарий. Список событий, поддерживаемых плагином приведён ниже. Чтобы плагин мог уведомлять приложение о происходящем событии, вы должны создать соответствующий сценарий с именем, определённым заранее для данного события (по умолчанию имя сценария совпадает с именем события). Переопределить имена можно при помощи панели свойств.

Чтобы начать использовать события, выполните следующие действия:

1. Выберите то событие, которое вам нужно.
2. Создайте сценарий с именем, равным имени события, или присвойте этому событию новое имя через панель свойств плагина.
3. Запишите в этом сценарии действия, которые должны быть выполнены при наступлении события.
4. Когда пользователь инициирует событие, плагин вызовет сценарий, соответствующий этому событию.

Внимание! Механизм вызова событий работает только в MMB версии 4.9.8! Для более ранних версий этот механизм был удалён по некоторым техническим причинам (в частности, не удалось справиться с нестабильной работой механизма).

OnURLClick - это событие срабатывает, когда пользователь нажимает на гиперссылку. Событие возвращает строку - адрес гиперссылки, причём строка может быть какой угодно, вплоть до ссылки на локальный файл. Таким образом, эту особенность можно использовать в целях более гибкой интеграции текстов rtf в проект ММВ.

OnChar - это событие срабатывает при вводе символов в поле RichEdit. Событие возвращает число - код символа, а так же строку - сам символ (имеет смысл использовать только для симолов ANSI, поскольку переменные ММВ Юникод не держат).

OnKeyDown - это событие срабатывает при опускании клавиши. Событие возвращает число - код символа, а так же строку - сам символ.

OnKeyUp - это событие срабатывает при поднятии клавиши. Событие возвращает число - код символа, а так же строку - сам символ.

OnMouseDblClick - это событие срабатывает при двойном щелчке. В зависимости от того, какой клавишей мыши был выполнен щелчок, возвращает число 1 (левая клавиша), 2 (средняя клавиша), 3 (правая клавиша) и строку, которая содержит координаты мыши через запятую вида "X,Y".

OnMouseDown - это событие срабатывает при опускании клавиши мыши. В зависимости от того, какой клавишей мыши был выполнен щелчок, возвращает число 1 (левая клавиша), 2 (средняя клавиша), 3 (правая клавиша) и строку, которая содержит координаты мыши через запятую вида "X,Y".

OnMouseUp - это событие срабатывает при поднятии клавиши мыши. В зависимости от того, какой клавишей мыши был выполнен щелчок, возвращает число 1 (левая клавиша), 2 (средняя клавиша), 3 (правая клавиша) и строку, которая содержит координаты мыши через запятую вида "X,Y".

OnMouseMove - это событие срабатывает при перемещении мыши над полем RichEdit.

OnScroll - это событие срабатывает при прокрутке поля RichEdit за полосы прокрутки. Событие возвращает число - 1, если была прокручена вертикальная полоса и 0, если была прокручена горизонтальная полоса. Так же событие возвращает строку, которая может иметь значения:

SB_TOP - прокрутка к левому верхнему углу

SB_BOTTOM - прокрутка к правому нижнему углу

SB_LINELEFT - прокрутка на линию вверх или влево

SB_LINERIGHT - прокрутка на линию вниз или вправо

SB_PAGELEFT - прокрутка на страницу вверх или влево

SB_PAGERIGHT - прокрутка на страницу вниз или вправо

SB_THUMBTRACK - пользователь тянет полосу прокрутки

SB_ENDSCROLL - прокрутка окончилась

OnLangChange - это событие срабатывает при изменении раскладки клавиатуры пользователем.

OnProtectedChange - это событие срабатывает при попытке изменения пользователем области, которая помечена как защищённая. При возникновении события будет запущен ассоциированный с ним сценарий. Внутри этого сценария можно запретить изменение защищённого участка, передав плагину число 1, или TRUE. Также можно проигнорирвать изменения.


Êîäû íàæàòûõ êëàâèø

Навигация: Прочее >

Коды нажатых клавиш

 Return to chapter overview
Код | Клавиша
8 | Backspace
9 | Tab
13 | Return
20 | CapsLock
30..39 | are the same as ASCII '0'..'9'
45 | Insert
46 | Delete
48..57 | Digits 0..9
106 | Multiply
107 | Add
109 | Minus (NumPad)
110 | . (NumPad)
111 | / (NumPad)
65..90 | are the same as ASCII 'A' thru 'Z'
96..105 | are NumPad0..NumPad9
144 | NumLock button
145 | ScrollLock button
186 | ;
188 | ,
189 | -
190 | .
191 | /
192 | `
219 | [
220 | \
221 | ]
222 | '


Ïàíåëü ñâîéñòâ

Навигация: Прочее >

Панель свойств

 Return to chapter overview

Плагин имеет специальную панель для настройки некоторых свойств. Вид панели представлен ниже:

В данной версии плагина панель свойств служит для переопределения имён сценариев, вызываемых событиями, установленных по умолчанию. Просто впишите новые имена в соответствующие поля и нажмите кнопку "Save". Панель свойств будет закрыта, а новые имена событий будут записаны в теле проекта MMB. При запуске проекта плагин сменит имена событий, установленные по умолчанию, на те, которые вы определили.


Richedit dll

Навигация: Прочее >

Richedit dll

 Return to chapter overview
· 1.0 (riched32.dll), Win95 и выше, WinNT 4.0 и выше;
· 2.0 (riched20.dll), Win98 и выше; Win2k и выше;
· 3.0 (riched20.dll), Win2k и выше;
· 4.1 (msftedit.dll), WinXP SP1 и выше;

Основные отличия библиотек различных версий приведены ниже.

Особенность | Версия 1.0 | Версия 2.0 | Версия 3.0 | Версия 4.1
Отмена/Повтор | Одноуровневый | Многоуровневый | Многоуровневый | Многоуровневый
Редактирование Юникода | нет | есть | есть | есть
Поддержка двунаправленного письма | нет | есть (начиная с 2.1) | есть | есть
Поиск по тексту | Вперед | Вперед/назад | Вперед/назад | Вперед/назад
Прокрутка текста мышью | нет | есть | есть | есть
Прозрачность | нет | есть | есть | есть
Распознавание URL | нет | есть | есть | есть
Горячие клавиши | нет | есть | есть | есть
Ввод пароля | нет | есть | есть | есть
Расширенное форматирование | нет | есть | есть | есть
Увеличение\уменьшение | нет | нет | есть | есть
Нумерация параграфов | нет | нет | есть | есть
Простые таблицы | нет | нет | есть | есть
Расширенные стили подчёркивания | нет | нет | есть | есть
Подчёркивание несколькими цветами | нет | нет | есть | есть
Скрытый текст | нет | нет | есть | есть
Конвертирование Hex в Unicode и обратно | нет | нет | есть | есть
"Умные" кавычки | нет | нет | есть | есть
UTF-8 RTF | нет | нет | есть | есть
Автоперенос | нет | нет | нет | есть
Разворот страницы | нет | нет | нет | есть
Нормальный и заголовочный стили | нет | нет | есть | есть
Связывание шрифта | нет | нет | есть | есть
Конец строки | CRLF | только CR | только CR(может подражать версии 1.0) | только CR(может подражать версии 1.0)

Версия Rich Edit 2.0 имеет поддержку Юникода и языков азиатской группы. Версия Rich Edit 3.0 включает также поддержку Индийского и Тайского языков.

Windows XP SP1 содержит Rich Edit 4.1, Rich Edit 3.0, и эмулятор Rich Edit 1.0.

Windows XP содержит Rich Edit 3.0 и эмулятор Rich Edit 1.0.

Windows Me содержит Rich Edit 1.0 и 3.0.

Windows 2000 содержит Rich Edit 3.0 и эмулятор Rich Edit 1.0.

Windows NT 4.0 содержит Rich Edit 1.0 и 2.0.

Windows 98 содержит Rich Edit 1.0 и 2.0.

Windows 95 содержит только Rich Edit 1.0. Тем не менее, Riched20.dll совместим с Windows 95 и может быть установлен вместо старой библиотеки.

Более подробную информацию смотрите в Microsoft MSDN.


Êîìáèíàöèè êëàâèø

Навигация: Прочее >

Комбинации клавиш

 Return to chapter overview

Rich Edit поддерживает следующие комбинации клавиш (см. команду плагина FormatKeys)

Клавиши | Операции | Комментарии
Shift+Backspace | Меняет направление записи | BiDi-специфичное свойство
Ctrl+Tab | Tab |
Ctrl+Clear | Выделить всё |
Ctrl+Number Pad 5 | Выделить всё |
Ctrl+A | Выделить всё |
Ctrl+B | Жирный шрифт |
Ctrl+E | Выравнивание по центру |
Ctrl+J | Выравнивание по ширине |
Ctrl+R | Выравнивание по правому краю |
Ctrl+L | Выравнивание по левому краю |
Ctrl+C | Копирование |
Ctrl+I | Наклонный шрифт |
Ctrl+N | Стиль нумерации |
Ctrl+O | Зачёркивание |
Ctrl+V | Вставка |
Ctrl+X | Вырезание |
Ctrl+Z | Отмена |
Ctrl+Shift+Z | Повтор |
Ctrl+U | Подчеркивание |
Ctrl+Y | Повтор |
Ctrl+'+' | Верхний индекс |
Ctrl+'-' | Нижний индекс |
Ctrl+Shift+'+' | Верхний индекс |
Ctrl+Shift+'-' | Нижний индекс |
Ctrl+1 | Межстрочный интервал - 1 строка |
Ctrl+2 | Межстрочный интервал - 2 строки |
Ctrl+5 | Межстрочный интервал - 1,5 строки |
Ctrl+' (апостроф) | Острый акцент ( a ) | После нажатия этой комбинации, введите нужный символ (например, a, e, или u). Это будет работать только с английской, французской, немецкой, итальянской и испанской раскладкой клавиатуры
Ctrl+` (grave) | Знак ударения ( a ) | См. комментарий Ctrl+'
Ctrl+~ (тильда) | Верхняяя тильда ( a ) | См. комментарий Ctrl+'
Ctrl+; (точка с запятой) | Умляут ( a ) | См. комментарий Ctrl+'
Ctrl+Shift+6 | Верхний символ ^ ( a ) | См. комментарий Ctrl+'
Ctrl+, (запятая) | Седиль ( c ) | См. комментарий Ctrl+'
Ctrl+Shift+' (апостроф) | Другой вид кавычек ("умные") | Меняет внешний вид кавычек, которые автоматически становятся открывающими или закрывающими
Backspace | Если текст защищён, будет подан сигнал, в противном случае будет удалён выделенный текст или символ слева от каретки |
Ctrl+Backspace | Удаление предыдущего слова. Генерируется код VK_F16 |
F16 | То же, что и Backspace. |
Ctrl+Insert | Копирование |
Shift+Insert | Вставка |
Insert | Режим перезаписи | DBCS (Double-byte character set) не перезаписывается
Ctrl+Left Arrow | Переместить курсор на слово влево. | На bidi клавиатуре определяет направление написания
Ctrl+Right Arrow | Переместить курсор на слово вправо | См. комментарий Ctrl+Left Arrow
Ctrl+Left Shift | Левое выравнивание | В BiDi документах задаёт порядок чтения слева-направо
Ctrl+Right Shift | Правое выравнивание | В BiDi документах задаёт порядок чтения справа-налево
Ctrl+Up Arrow | Переместиться на строку выше |
Ctrl+Down Arrow | Переместиться на строку ниже |
Ctrl+Home | К началу документа |
Ctrl+End | В конец документа |
Ctrl+Page Up | На страницу вверх | В режиме SystemEditMode и Single Line control не имеет действия
Ctrl+Page Down | На страницу вниз | См. комментарий Ctrl+Page Up
Ctrl+Delete | Удалить следующее слово или выделен |
Shift+Delete | Вырезать выделенное |
Esc | Остановить перетаскивание текста | Действует, пока выполняется перетаскивание текста
Alt+Esc | Сменить активное приложение |
Alt+X | Преобразовывает шестнадцатеричное значение в Юникод |
Alt+Shift+X | Преобразовывает символ Юникода в шестнадцатеричное значение |
Alt+0xxx (Number Pad) | Вставляет символ в Юникоде, если xxx больше чем 255. Когда xxx меньше чем 256, вставляется ASCII символ, в зависимости от выбранной раскладки | Нужно вводить десятичные значения
Alt+Shift+Ctrl+F12 | Конвертация Hex-числа в Юникод |
Alt+Shift+Ctrl+F11 | Выделенный текст будет выведен в окно отладчика и сохранён в %temp%\DumpFontInfo.txt | Только для отладки (требует установки Flag=8 в Win.ini)
Ctrl+Shift+A | Перевод выделенного текста в верхний регистр |
Ctrl+Shift+L | Установка маркеров |
Ctrl+Shift+Right Arrow | Увеличить размер шрифта | Шрифт изменяется на 1 пункт в диапазоне 4-11; на 2 пункта в диапазоне 12-28; затем 28 -> 36 -> 48 -> 72 -> 80; а для диапазона 80 - 1630 на 10 пунктов; максимальное значение - 1638
Ctrl+Shift+Left Arrow | Уменьшить размер шрифта | См. комментарий Ctrl+Shift+Right Arrow
Alt+'+' | Увеличение размера шрифта |
Alt+'-' | Уменьшение размера шрифта |
Ctrl+Shift+'+' | Subscript |
Ctrl+Shift+'-' | Superscript |