Google

Описание класса MEDIT

Многооконный текстовый редактор с менюшками и прибамбасами, построен на базе класса TEXTEDIT.
Атрибуты/свойства
Название атрибута Значение атрибута
className "MEDIT"
nTop координата окна: левый верхний угол - строка
nLeft координата окна: левый верхний угол - колонка
nBottom координата окна: правый нижний угол - строка
nRight координата окна: правый нижний угол - колонка
Методы/функции

Функция medit(par, ntop, nleft, nbot, nright, user_func, tab_size, bline, bpos, wline, wpos) - создает новый объект класса MEDIT
par - string, список имен файлов, которые предназначены для редактирования
ntop - кордината окна редактирования: левый верхний угол - строка
nleft - кордината окна редактирования: левый верхний угол - колонка
nbot - кордината окна редактирования: правый нижний угол - строка
nright - кордината окна редактирования: правый нижний угол - колонка
user_func - пользовательская функция
tab_size - шаг табуляции
bline - строка текста
bpos - позиция в строке
wline - позиция курсора в окне: строка
wpos - позиция курсора в окне: колонка

Возможности редактора
Работа с окнами - открыть
- открыть share-окно
- закрыть
- посмотреть список открытых окон
Работа с блоками - блоки строчные/прямоугольные
- копирование
- перемещение
- копрование в буфер
- вставка блока из буфера
- загрузка из файла
- запись в файл
Работа с текстом - всяческие перемещения и стандартное редактирование текста
- форматирование строки/абзаца
- рисование таблиц (псевдографика)
- откат (настраиваемый размер буфера отката)
- вставка по шаблону - настраивается пользователем (см. класс TEXTEDIT)
- макроподстановки - настраивается пользователем (см. класс TEXTEDIT)
Операции поиска - поиск(поиск с заменой) по шаблону, по регулярному выражению - ищет в тексте, в блоке, во всех окнах
- поиск парных символов (), {}, [], <>
- поиск структур по правилам CLIPPER:
  • DO WHILE - LOOP - EXIT - ENDDO
  • DO CASE - CASE - OTHERWISE - EXIT - ENDCASE
  • FOR - EXIT - LOOP - NEXT
  • IF - ELSE - ELSEIF - ENDIF
  • BEGIN SEQUENCE - BREAK - RECOVER - END SEQUENCE
Настройка "горячих" клавиш по желанию пользователя.

"Пользовательские кнопки" при старте загружаются из файла keymaps.po. Он хранится в домашнем каталоге в директории ./clip и компилируется из файла keymaps.prg

Пример файла keymaps.prg

/* User key_maps */
#include "inkey.ch"

function init_user_key(key_maps)
local k

	/* for debugger */
	k:=key_maps:debug
	/* Код клавиши 	  Команда */
	k[ K_ESC ]	:=HASH_CallMenu
	k[ K_F1 ] 	:=HASH_Help
	     .........

	/* for text editor */
	k:=key_maps:edit

	/* Код клавиши 	  Команда */
	k[ K_ESC ]	:=HASH_CallMenu		// call Menu
//	k[ ]	:=HASH_ExitSave		// exit from editor witch save
//	k[ ]	:=HASH_ExitNoSave	//exit from editor witchout save

	/* file/window function */
	k[ K_F2 ]	:=HASH_SaveFile		// save File
	k[ K_F3 ]	:=HASH_OpenFile		// open file
	k[ K_SH_F3 ]	:=HASH_CreateNewFile	// create new file
	k[ K_CTRL_N ]	:=HASH_NextWindow	// open next window
//	k[  ]  	:=HASH_PrevWindow	// open previous window
//	k[  ]	:=HASH_ReadOnly		// on/off read only options
//	k[  ]	:=HASH_ListFiles	// listing opening files
//	k[  ]	:=HASH_CloseWindow	// close current window
//	k[  ]	:=HASH_Reload		// reload file
		.............
return key_maps

© Ю.Хныкин, uri@itk.ru, 2000
© Е.Корнилова, alena@itk.ru, 2000