Difference between revisions of "RichMemo/ru"

From Free Pascal wiki
Jump to navigationJump to search
Line 78: Line 78:
  
 
<syntaxhighlight>function GetTextAttributes(TextStart: Integer; var TextParams: TFontParams): Boolean; virtual;</syntaxhighlight>
 
<syntaxhighlight>function GetTextAttributes(TextStart: Integer; var TextParams: TFontParams): Boolean; virtual;</syntaxhighlight>
* TextStart : Integer - номер символа у которого необходимо получить шрифт
+
* TextStart : Integer - номер символа, у которого необходимо получить шрифт
 
* var TextParams : TFontParams - возвращаемое значение, которое будет содержать параметры шрифта указанного символа
 
* var TextParams : TFontParams - возвращаемое значение, которое будет содержать параметры шрифта указанного символа
  
Функция возвращает параметры шрифта у указанного символа. Если в TextStart передан неверный номер символа, функция возвращает False, значение полей записи TextParams неопределено. Если в передан правильный TextStart номер символа, функция возвращает True, заполняя запись TextParams
+
Функция возвращает параметры шрифта указанного символа. Если в TextStart передан неверный номер символа, функция возвращает False, значение полей записи TextParams неопределено. Если передан правильный TextStart номер символа, функция возвращает True, заполняя запись TextParams
  
 
===== GetStyleRange =====
 
===== GetStyleRange =====

Revision as of 17:15, 29 March 2012

Template:Translate

О компоненте...

TRichMemo компонент, который заменяет популярные в Delphi TRichEdit и/или RxRichEdit. RichMemo спроектирован с прицелом на кросс-платформенность, по-этому возможна реализация под любую из платформ. На сегодняшний день существуют реализации под: Win32 and MacOS X. И вполне возможны реализации для Gtk и Qt.

Основные особенности:

  • Подцветка текста
  • Импорт/Экспорт текста в RichText формате (не реализовано)

Возможно появится в будущем: (любая помощь приветствуется)

  • Добавление изображений.
  • Внедрение LCL Контролов?

Скришоты

RichMemo macosx screenshot. Thanks to Dominique Louis

Ошибки

О любых обнаруженных ошибках, сообщайте в баг тректер, для проекта Lazarus-ccr

Автор

Дмитрий 'скалогрыз' Бояринцев aka 'skalogryz'

Лицензия

LGPL (same as the FPC RTL and the Lazarus LCL).

Скачать

Исходники доступны через SVN, последняя версия всегда доступна здесь: https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/components/richmemo

Журнал изменений

  • Version 1.0.0 22 июня 2009
  • Version 0.8.0 июнь 2009

Требования

  • Lazarus 0.9.27 (SVN версия)

Состояние: 'Beta'

Изветные неисправности: Компонент не тестировался и, возможно, имеет большое количество ошибок.

Установка

  • Скачайте исходники пакета
  • Установите пакет в Lazarus и пересоберите его
  • TRichMemo добавится в закладку 'Common Controls'.

RichMemoPalette.PNG

Документация

TRichMemo методы

SetTextAttributes
procedure SetTextAttributes(TextStart, TextLen: Integer; AFont: TFont);
  • TextStart : Integer - номер первого символа, начиная с которого нужно применить изменение шрифта
  • TextLen : Integer - количество символов, к которым нужно применить изменение шрифта
  • AFont : TFont - шрифт, на который будет изменен стиль выбранных символов


procedure SetTextAttributes(TextStart, TextLen: Integer; SetMask: TTextStyleMask; const TextParams: TFontParams);
  • TextStart : Integer - номер первого символа, начиная с которого нужно применить изменение шрифта
  • TextLen : Integer - количество символов, к которым нужно применить изменение шрифта
  • TextParams : TFontParams - запись, описывающая свойтсва шрифта, которые должны быть изменены

SetTextureAttributes метод изменяет шрифт в указанном тексте. Метод не изменяет текущее выделение.

Чтобы изменить стиль текщуего выделения, необходимо передать SelStart и SelLength, в качестве параметров TextStart, TextLength, например:

RichMemo1.SetTextAttributes(RichMemo1.SelStart, RichMemo1.SelLength, FontDialog1.Font);
GetTextAttributes
function GetTextAttributes(TextStart: Integer; var TextParams: TFontParams): Boolean; virtual;
  • TextStart : Integer - номер символа, у которого необходимо получить шрифт
  • var TextParams : TFontParams - возвращаемое значение, которое будет содержать параметры шрифта указанного символа

Функция возвращает параметры шрифта указанного символа. Если в TextStart передан неверный номер символа, функция возвращает False, значение полей записи TextParams неопределено. Если передан правильный TextStart номер символа, функция возвращает True, заполняя запись TextParams

GetStyleRange
function GetStyleRange(CharPos: Integer; var RangeStart, RangeLen: Integer): Boolean; virtual;

Returns a range of characters that share the same font parameters, i.e. all characters in the range has the same font name, size, color and styles.

  • CharPos : Integer - a character that belongs to the style range. It's not necessary for this position to be at the begging on the style range. It can be in the middle on in the end of the style range. The first character position is returned by RangeStart parameter.
  • var RangeStart : Integer - the first character in the range
  • var RangeLen : Integer - number of characthers in the range

The method returns true if successed. the method returns false, if CharPos is incorrect value or some other error.


SetRangeColor
procedure SetRangeColor(TextStart, TextLength: Integer; FontColor: TColor);

The method sets color of characters in the specified range to the FontColor. Other font parameters (name, size, styles) are left unchanged.

  • TextStart: Integer - the first character in the range
  • TextLength: Integer - number of characters in the range
  • FontColor: TColor - color that should be set
SetRangeParams
procedure SetRangeParams(TextStart, TextLength: Integer;
    ModifyMask: TTextModifyMask; const FontName: String; 
    FontSize: Integer; FontColor: TColor; 
    AddFontStyle, RemoveFontStyle: TFontStyles);

The method changes font parameters in the specified range.

LoadRichText
function LoadRichText(Source: TStream): Boolean; virtual;
  • Source: TStream - a stream to read richtext data from

The method loads RTF enocded data from the specified stream. Returns true if success, and false otherwise. If source is nil, the method returns false

The content of TRichMemo is completely replaced by the content on the source stream. Current text selection is reset.

SaveRichText
function SaveRichText(Dest: TStream): Boolean; virtual;
  • Source: TStream - a stream to read richtext data from

The method saves RTF enocded data to the specified stream. Returns true if success, and false otherwise. If source is nil, the method returns false

Current state of TRichMemo is unchanged after the method returns

TRichMemo свойства

HideSelection
 property HideSelection: Boolean default false

Свойство на чтение и запись. Если значение True, то RichMemo не будет показывать текущее выделение, если контрол находится не в фокусе. Если значение False, то выделение показывается всегда. Значение по-умолчанию False.