Subversion Repositories Kolibri OS

Rev

Rev 1489 | Rev 2102 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. fn_col_option dd def_col_file
  2. fn_syntax_dir db 'info/',0
  3. def_col_file db 'default.syn',0
  4.  
  5. system_dir0 db '/sys/lib/'
  6. lib0_name db 'box_lib.obj',0
  7.  
  8. system_dir1 db '/sys/lib/'
  9. lib1_name db 'msgbox.obj',0
  10.  
  11. system_dir2 db '/sys/lib/'
  12. lib2_name db 'proc_lib.obj',0
  13.  
  14. fn_icon_tl_sys db 'tl_sys_16.bmp',0
  15. fn_icon_tl_nod db 'tl_nod_16.bmp',0
  16.  
  17. ;---------------------------------------------------------------------
  18. align 4
  19. boxlib_import:
  20.         dd alib_init2 ;ЇєэъЎш  чряєёърхЄё  ьръЁюёюь 1 Ёрч яЁш яюфъы■ўхэшш сшсшышюЄхъш, яюЄюьє т яЁюуЁрььх ьхЄър эр эхх эх эєцэр
  21.  
  22.         edit_box_draw  dd aEdit_box_draw
  23.         edit_box_key   dd aEdit_box_key
  24.         edit_box_mouse dd aEdit_box_mouse
  25.         ;version_ed     dd aVersion_ed
  26.  
  27.         ;check_box_draw dd aCheck_box_draw
  28.         ;check_box_mouse dd aCheck_box_mouse
  29.         ;version_ch     dd aVersion_ch
  30.  
  31.         ;option_box_draw  dd aOption_box_draw
  32.         ;option_box_mouse dd aOption_box_mouse
  33.         ;version_op      dd aVersion_op
  34.  
  35.         scrollbar_ver_draw  dd aScrollbar_ver_draw
  36.         scrollbar_ver_mouse dd aScrollbar_ver_mouse
  37.         scrollbar_hor_draw  dd aScrollbar_hor_draw
  38.         scrollbar_hor_mouse dd aScrollbar_hor_mouse
  39.         ;version_scrollbar   dd aVersion_scrollbar
  40.  
  41.         ;dinamic_button_draw  dd aDbutton_draw
  42.         ;dinamic_button_mouse dd aDbutton_mouse
  43.         ;version_dbutton      dd aVersion_dbutton
  44.  
  45.         menu_bar_draw    dd aMenu_bar_draw
  46.         menu_bar_mouse   dd aMenu_bar_mouse
  47.         ;version_menu_bar dd aVersion_menu_bar
  48.  
  49.         tl_data_init dd sz_tl_data_init
  50.         tl_data_clear dd sz_tl_data_clear
  51.         tl_info_clear dd sz_tl_info_clear
  52.         tl_key dd sz_tl_key
  53.         tl_mouse dd sz_tl_mouse
  54.         tl_draw dd sz_tl_draw
  55.         tl_info_undo dd sz_tl_info_undo
  56.         tl_info_redo dd sz_tl_info_redo
  57.         tl_node_add dd sz_tl_node_add
  58.         tl_node_set_data dd sz_tl_node_set_data
  59.         tl_node_get_data dd sz_tl_node_get_data
  60.         tl_node_delete dd sz_tl_node_delete
  61.         tl_cur_beg dd sz_tl_cur_beg
  62.         tl_cur_next dd sz_tl_cur_next
  63.         tl_cur_perv dd sz_tl_cur_perv
  64.         tl_node_close_open dd sz_tl_node_close_open
  65.         tl_node_lev_inc dd sz_tl_node_lev_inc
  66.         tl_node_lev_dec dd sz_tl_node_lev_dec
  67.  
  68.         ted_but_save_file dd sz_ted_but_save_file
  69.         ted_but_sumb_upper dd sz_ted_but_sumb_upper
  70.         ted_but_sumb_lover dd sz_ted_but_sumb_lover
  71.         ted_can_save dd sz_ted_can_save
  72.         ted_clear dd sz_ted_clear
  73.         ted_delete dd sz_ted_delete
  74.         ted_draw dd sz_ted_draw
  75.         ted_init dd sz_ted_init
  76.         ted_init_scroll_bars dd sz_ted_init_scroll_bars
  77.         ted_init_syntax_file dd sz_ted_init_syntax_file
  78.         ted_is_select dd sz_ted_is_select
  79.         ted_key dd sz_ted_key
  80.         ted_mouse dd sz_ted_mouse
  81.         ted_open_file dd sz_ted_open_file
  82.         ted_text_add dd sz_ted_text_add
  83.         ted_but_select_word dd sz_ted_but_select_word
  84.         ted_but_cut dd sz_ted_but_cut
  85.         ted_but_copy dd sz_ted_but_copy
  86.         ted_but_paste dd sz_ted_but_paste
  87.         ted_but_undo dd sz_ted_but_undo
  88.         ted_but_redo dd sz_ted_but_redo
  89.         ted_but_reverse dd sz_ted_but_reverse
  90.         ted_but_find_next dd sz_ted_but_find_next
  91.         ted_text_colored dd sz_ted_text_colored
  92.         ;version_text_edit dd sz_ted_version
  93.  
  94. dd 0,0
  95.         alib_init2 db 'lib_init',0
  96.  
  97.         aEdit_box_draw  db 'edit_box',0
  98.         aEdit_box_key   db 'edit_box_key',0
  99.         aEdit_box_mouse db 'edit_box_mouse',0
  100.         ;aVersion_ed    db 'version_ed',0
  101.  
  102.         ;aCheck_box_draw  db 'check_box_draw',0
  103.         ;aCheck_box_mouse db 'check_box_mouse',0
  104.         ;aVersion_ch     db 'version_ch',0
  105.  
  106.         ;aOption_box_draw  db 'option_box_draw',0
  107.         ;aOption_box_mouse db 'option_box_mouse',0
  108.         ;aVersion_op      db 'version_op',0
  109.  
  110.         aScrollbar_ver_draw  db 'scrollbar_v_draw',0
  111.         aScrollbar_ver_mouse db 'scrollbar_v_mouse',0
  112.         aScrollbar_hor_draw  db 'scrollbar_h_draw',0
  113.         aScrollbar_hor_mouse db 'scrollbar_h_mouse',0
  114.         ;aVersion_scrollbar   db 'version_scrollbar',0
  115.  
  116.         ;aDbutton_draw    db 'dbutton_draw',0
  117.         ;aDbutton_mouse   db 'dbutton_mouse',0
  118.         ;aVersion_dbutton  db 'version_dbutton',0
  119.  
  120.         aMenu_bar_draw    db 'menu_bar_draw',0
  121.         aMenu_bar_mouse   db 'menu_bar_mouse',0
  122.         ;aVersion_menu_bar db 'version_menu_bar',0
  123.  
  124.         sz_tl_data_init db 'tl_data_init',0
  125.         sz_tl_data_clear db 'tl_data_clear',0
  126.         sz_tl_info_clear db 'tl_info_clear',0
  127.         sz_tl_key db 'tl_key',0
  128.         sz_tl_mouse db 'tl_mouse',0
  129.         sz_tl_draw db 'tl_draw',0
  130.         sz_tl_info_undo db 'tl_info_undo',0
  131.         sz_tl_info_redo db 'tl_info_redo',0
  132.         sz_tl_node_add db 'tl_node_add',0
  133.         sz_tl_node_set_data db 'tl_node_set_data',0
  134.         sz_tl_node_get_data db 'tl_node_get_data',0
  135.         sz_tl_node_delete db 'tl_node_delete',0
  136.         sz_tl_cur_beg db 'tl_cur_beg',0
  137.         sz_tl_cur_next db 'tl_cur_next',0
  138.         sz_tl_cur_perv db 'tl_cur_perv',0
  139.         sz_tl_node_close_open db 'tl_node_close_open',0
  140.         sz_tl_node_lev_inc db 'tl_node_lev_inc',0
  141.         sz_tl_node_lev_dec db 'tl_node_lev_dec',0
  142.  
  143.         sz_ted_but_save_file    db 'ted_but_save_file',0
  144.         sz_ted_but_sumb_upper   db 'ted_but_sumb_upper',0
  145.         sz_ted_but_sumb_lover   db 'ted_but_sumb_lover',0
  146.         sz_ted_can_save                 db 'ted_can_save',0
  147.         sz_ted_clear                    db 'ted_clear',0
  148.         sz_ted_delete                   db 'ted_delete',0
  149.         sz_ted_draw                             db 'ted_draw',0
  150.         sz_ted_init                             db 'ted_init',0
  151.         sz_ted_init_scroll_bars db 'ted_init_scroll_bars',0
  152.         sz_ted_init_syntax_file db 'ted_init_syntax_file',0
  153.         sz_ted_is_select                db 'ted_is_select',0
  154.         sz_ted_key                              db 'ted_key',0
  155.         sz_ted_mouse                    db 'ted_mouse',0
  156.         sz_ted_open_file                db 'ted_open_file',0
  157.         sz_ted_text_add                 db 'ted_text_add',0
  158.         sz_ted_but_select_word  db 'ted_but_select_word',0
  159.         sz_ted_but_cut                  db 'ted_but_cut',0
  160.         sz_ted_but_copy                 db 'ted_but_copy',0
  161.         sz_ted_but_paste                db 'ted_but_paste',0
  162.         sz_ted_but_undo                 db 'ted_but_undo',0
  163.         sz_ted_but_redo                 db 'ted_but_redo',0
  164.         sz_ted_but_reverse              db 'ted_but_reverse',0
  165.         sz_ted_but_find_next    db 'ted_but_find_next',0
  166.         sz_ted_text_colored             db 'ted_text_colored',0
  167.         ;sz_ted_version db 'version_text_edit',0
  168.  
  169. align 4
  170. proclib_import:
  171.         OpenDialog_Init dd aOpenDialog_Init
  172.         OpenDialog_Start dd aOpenDialog_Start
  173. dd 0,0
  174.         aOpenDialog_Init db 'OpenDialog_init',0
  175.         aOpenDialog_Start db 'OpenDialog_start',0
  176.  
  177. align 4
  178. msgbox_lib_import:
  179.         mb_create dd amb_create
  180.         mb_reinit dd amb_reinit
  181.         mb_setfunctions dd amb_setfunctions
  182. dd 0,0
  183.         amb_create db 'mb_create',0
  184.         amb_reinit db 'mb_reinit',0
  185.         amb_setfunctions db 'mb_setfunctions',0
  186. ;---------------------------------------------------------------------
  187. align 4
  188. wScr:
  189. .x:
  190. .size_x   dw 16 ;+0
  191. .start_x  dw 50 ;+2
  192. .y:
  193. .size_y   dw 300 ; +4
  194. .start_y  dw  50 ; +6
  195. .btn_high dd  15 ; +8
  196. .type     dd   1 ;+12
  197. .max_area dd 100 ;+16
  198. .cur_area dd  30 ;+20
  199. .position dd   0 ;+24
  200. .bckg_col dd 0xeeeeee ;+28
  201. .frnt_col dd 0xbbddff ;+32
  202. .line_col dd   0 ;+36
  203. .redraw   dd   0 ;+40
  204. .delta    dw   0 ;+44
  205. .delta2   dw   0 ;+46
  206. .run_x:
  207. .r_size_x  dw 0 ;+48
  208. .r_start_x dw 0 ;+50
  209. .run_y:
  210. .r_size_y   dw 0 ;+52
  211. .r_start_y  dw 0 ;+54
  212. .m_pos      dd 0 ;+56
  213. .m_pos_2    dd 0 ;+60
  214. .m_keys     dd 0 ;+64
  215. .run_size   dd 0 ;+68
  216. .position2  dd 0 ;+72
  217. .work_size  dd 0 ;+76
  218. .all_redraw dd 0 ;+80
  219. .ar_offset  dd 1 ;+84
  220. ;---------------------------------------------------------------------
  221. align 4
  222. hScr:
  223. .x:
  224. .size_x     dw 150 ;+0
  225. .start_x    dw 0 ;+2
  226. .y:
  227. .size_y     dw 16 ;+4
  228. .start_y    dw 50 ;+6
  229. .btn_high   dd 15 ;+8
  230. .type       dd 1  ;+12
  231. .max_area   dd 100 ;+16
  232. .cur_area   dd 30  ;+20
  233. .position   dd 0  ;+24
  234. .bckg_col   dd 0xeeeeee ;+28
  235. .frnt_col   dd 0xbbddff ;+32
  236. .line_col   dd 0  ;+36
  237. .redraw     dd 0  ;+40
  238. .delta      dw 0  ;+44
  239. .delta2     dw 0  ;+46
  240. .run_x:
  241. .r_size_x   dw 0  ;+48
  242. .r_start_x  dw 0  ;+50
  243. .run_y:
  244. .r_size_y   dw 0 ;+52
  245. .r_start_y  dw 0 ;+54
  246. .m_pos      dd 0 ;+56
  247. .m_pos_2    dd 0 ;+60
  248. .m_keys     dd 0 ;+64
  249. .run_size   dd 0 ;+68
  250. .position2  dd 0 ;+72
  251. .work_size  dd 0 ;+76
  252. .all_redraw dd 0 ;+80
  253. .ar_offset  dd 1 ;+84
  254. ;---------------------------------------------------------------------  
  255. align 4
  256. ws_dir_lbox: ;дочерний скроллинг для элемента ListBox
  257. .x:
  258. .size_x     dw 16 ;+0
  259. .start_x    dw 0 ;+2
  260. .y:
  261. .size_y     dw 30 ;+4
  262. .start_y    dw 70 ;+6
  263. .btn_high   dd 15 ;+8
  264. .type       dd 1  ;+12
  265. .max_area   dd 100  ;+16
  266. .cur_area   dd 30  ;+20
  267. .position   dd 0  ;+24
  268. .bckg_col   dd 0xeeeeee ;+28
  269. .frnt_col   dd 0xbbddff ;+32
  270. .line_col   dd 0  ;+36
  271. .redraw     dd 0  ;+40
  272. .delta      dw 0  ;+44
  273. .delta2     dw 0  ;+46
  274. .run_x:
  275. .r_size_x   dw 0  ;+48
  276. .r_start_x  dw 0  ;+50
  277. .run_y:
  278. .r_size_y   dw 0 ;+52
  279. .r_start_y  dw 0 ;+54
  280. .m_pos      dd 0 ;+56
  281. .m_pos_2    dd 0 ;+60
  282. .m_keys     dd 0 ;+64
  283. .run_size   dd 0 ;+68
  284. .position2  dd 0 ;+72
  285. .work_size  dd 0 ;+76
  286. .all_redraw dd 0 ;+80
  287. .ar_offset  dd 1 ;+84
  288. ;---------------------------------------------------------------------
  289.  
  290. align 4
  291. menu_data_1:
  292. .type: dd 0   ;+0
  293. .x:
  294. .size_x  dw 35 ;+4
  295. .start_x dw  5 ;+6
  296. .y:
  297. .size_y  dw 15 ;+8
  298. .start_y dw  5 ;+10
  299. .text_pointer: dd menu_text_area   ;+12
  300. .pos_pointer:  dd menu_text_area.1 ;+16
  301. .text_end   dd menu_text_area.end  ;+20
  302. .mouse_pos  dd 0 ;+24
  303. .mouse_keys dd 0 ;+28
  304. .x1:
  305. .size_x1  dw 70  ;+32
  306. .start_x1 dw  5  ;+34
  307. .y1:
  308. .size_y1  dw 15  ;+36
  309. .start_y1 dw 20  ;+38
  310. .bckg_col dd 0xeeeeee ;+40
  311. .frnt_col dd 0xff ;+44
  312. .menu_col dd 0xffffff ;+48
  313. .select   dd 0 ;+52
  314. .out_select dd 0 ;+56
  315. .buf_adress dd 0 ;+60
  316. .procinfo dd procinfo ;0 ;+64
  317. .click   dd 0 ;+68
  318. .cursor  dd 0 ;+72
  319. .cursor_old dd 0 ;+76
  320. .interval   dd 16 ;+80
  321. .cursor_max  dd 0 ;+84
  322. .extended_key dd 0 ;+88
  323. .menu_sel_col dd 0x00cc00 ;+92
  324. .bckg_text_col dd 0 ;+96
  325. .frnt_text_col dd 0xffffff ;+100
  326. .mouse_keys_old dd 0 ;+104
  327. .font_height dd 8 ;+108
  328. .cursor_out  dd 0 ;+112
  329. .get_mouse_flag dd 0 ;+116
  330.  
  331. ;---------------------------------------------------------------------
  332. align 4
  333. OpenDialog_data:
  334. .type                   dd 0
  335. .procinfo               dd procinfo     ;+4
  336. .com_area_name  dd communication_area_name      ;+8
  337. .com_area               dd 0    ;+12
  338. .opendir_path           dd plugin_path ;+16
  339. .dir_default_path       dd default_dir ;+20
  340. .start_path             dd file_name ;+24 путь к диалогу открытия файлов
  341. .draw_window    dd draw_window  ;+28
  342. .status                 dd 0    ;+32
  343. .openfile_path  dd openfile_path        ;+36 путь к открываемому файлу
  344. .filename_area  dd filename_area        ;+40
  345. .filter_area    dd Filter
  346. .x:
  347. .x_size                 dw 420 ;+48 ; Window X size
  348. .x_start                dw 10 ;+50 ; Window X position
  349. .y:
  350. .y_size                 dw 320 ;+52 ; Window y size
  351. .y_start                dw 10 ;+54 ; Window Y position
  352.  
  353. default_dir db '/rd/1',0 ;директория по умолчанию
  354.  
  355. communication_area_name:
  356.         db 'FFFFFFFF_open_dialog',0
  357. open_dialog_name:
  358.         db 'opendial',0
  359. communication_area_default_path:
  360.         db '/rd/1/File managers/',0
  361.  
  362. Filter:
  363. dd Filter.end - Filter.1
  364. .1:
  365. db 'ASM',0
  366. db 'CPP',0
  367. db 'INC',0
  368. db 'INI',0
  369. db 'TXT',0
  370. db 'H',0
  371. db 'HTM',0
  372. db 'HTML',0
  373. .end:
  374. db 0
  375.  
  376. TED_PANEL_NULL  equ 0 ;нет открытой панели
  377. TED_PANEL_FIND  equ 1 ;панель поиска
  378. TED_PANEL_SYNTAX equ 2 ;панель выбора файлов подсветки
  379. TED_PANEL_WIDTH equ 150 ;ширина панели
  380.  
  381. count_of_dir_list_files equ 15 ;максимальное число файлов синтаксиса показываемых в окне элемента tree1
  382.  
  383. ;------------------------------------------------------------------------------
  384. struct TexSelect
  385.   x0 dd ?
  386.   y0 dd ?
  387.   x1 dd ?
  388.   y1 dd ?
  389. ends
  390. ;------------------------------------------------------------------------------
  391. align 4
  392. tedit0: ;структура текстового редактора
  393.         .wnd BOX 0,50,440,150 ;+ 0
  394.         .rec BOX 30,23,7,10   ;+16
  395.         .drag_m db 0 ;+32 выделение от мыши
  396.         .drag_k db 0 ;+33 выделение от клавиатуры
  397.         .sel  TexSelect 0,0,0,0 ;+34 структура выделения
  398.         .seln TexSelect ;+50 дополнительная структура выделения
  399.         .tex      dd 0 ;+66 text memory pointer
  400.         .tex_1    dd 0 ;+70 text first symbol pointer
  401.         .tex_end  dd 0 ;+74 text end memory pointer
  402.         .cur_x    dd 0 ;+78 координата x курсора
  403.         .cur_y    dd 0 ;+82 координата y курсора
  404.         .max_chars dd maxChars ;+86 максимальное число символов в одном документе
  405.         .count_colors_text dd 1 ;+90 колличество цветов текста
  406.         .count_key_words   dd 0 ;+94 колличество ключевых слов
  407.         .color_cursor      dd 0x808080 ;+98 цвет курсора
  408.         .color_wnd_capt    dd     0x80 ;+102 цвет полей вокруг окна
  409.         .color_wnd_work    dd      0x0 ;+106 цвет фона окна
  410.         .color_wnd_bord    dd 0xd0d0d0 ;+110 цвет текста на полях
  411.         .color_select      dd 0x208080 ;+114 цвет выделения
  412.         .color_cur_text    dd 0xff0000 ;+118 цвет символа под курсором
  413.         .color_wnd_text    dd 0xffff00 ;+122 цвет текста в окне
  414.         .syntax_file       dd 0 ;+126 указатель на начало файла синтаксиса
  415.         .syntax_file_size  dd maxSyntaxFileSize ;+130 максимальный размер файла синтаксиса
  416.         .text_colors       dd 0 ;+134 указатель на массив цветов текста
  417.         .help_text_f1      dd 0 ;+138 указатель на текст справки (по нажатии F1)
  418.         .help_id           dd -1 ;+142 идентификатор для справки
  419.         .key_words_data    dd 0 ;+146 указатель на структуры ключевых слов TexColViv
  420.         .tim_ch      dd ? ;+150 количество изменений в файле
  421.         .tim_undo    dd ? ;+154 количество отмененных действий
  422.         .tim_ls      dd ? ;+158 время последнего сохранения
  423.         .tim_co      dd ? ;+162 время последней цветовой разметки
  424.         .el_focus    dd el_focus ;+166 указатель на переменную элемента в фокусе
  425.         .err_save    db 0 ;+170 ошибка сохранения файла
  426.         .panel_id    db 0 ;+171 номер открытой панели
  427.         .key_new     db 0 ;+172 символ, который будет добавлятся с клавиатуры
  428.         .symbol_new_line db 20 ;+173 символ завершения строки
  429.         .scr_w       dd wScr ;+174 вертикальный скроллинг
  430.         .scr_h       dd hScr ;+178 горизонтальный скроллинг
  431.         .arr_key_pos dd 0 ;+182 указатель на массив позиций ключевых слов
  432.         .buffer      dd buf ;+186 указатель на буфер копирования/вставки
  433.         .buffer_find dd buf_find ;+190 указатель на буфер для поиска
  434.         .cur_ins     db 1 ;+194 режим работы курсора (обычный или замена)
  435.         .mode_color  db 1 ;+195 режим выделения слов цветом (0-выкл. 1-вкл.)
  436.         .mode_invis  db 0 ;+196 режим показа непечатаемых символов
  437.         .gp_opt      db 0 ;+197 опции возвращаемые функцией ted_get_pos_by_cursor
  438.         .fun_on_key_ctrl_o dd ted_but_open_file ;+198 указатель на функцию вызываемую при нажатии Ctrl+O (открытие файла)
  439.         .fun_on_key_ctrl_f dd ted_but_find      ;+202 ... Ctrl+F (вызова/скрытия панели поиска)
  440.         .fun_on_key_ctrl_n dd ted_but_new_file  ;+206 ... Ctrl+N (создание нового документа)
  441.         .fun_on_key_ctrl_s dd 0 ;+210 ... Ctrl+S
  442.         .buffer_size       dd BUF_SIZE ;+214 размер буфера копирования/вставки
  443.         .fun_find_err      dd ted_on_find_err ;+218 указатель на функцию вызываемую если поиск закончился неудачно
  444.         .fun_init_synt_err dd ted_on_init_synt_err   ;+222 указатель на функцию вызываемую при ошибочном открытии файла синтаксиса
  445.         .fun_draw_panel_buttons dd draw_but_toolbar  ;+226 указатель на функцию рисования панели с кнопками
  446.         .fun_draw_panel_find    dd draw_panel_find   ;+230 указатель на функцию рисования панели поиска
  447.         .fun_draw_panel_syntax  dd draw_panel_syntax ;+234 указатель на функцию рисования панели синтаксиса
  448.         .fun_save_err           dd ted_save_err_msg  ;+238 указатель на функцию вызываемую если сохранение файла закончилось неудачно
  449.         .increase_size dd 200 ;+242 число символов на которые будет увечиваться память при нехватке
  450.         .ptr_free_symb dd ?   ;+246 используется внутри элемента для ускорения вставки текста
  451. ;------------------------------------------------------------------------------
  452.  
  453. conv_tabl rb 128 ; таблица для конвертирования scan-кода в ascii-код
  454. buf db BUF_SIZE dup(0)
  455.  
  456. el_focus dd 0
  457. mouse_dd dd 0
  458. tree1 tree_list 264,count_of_dir_list_files+2, tl_key_no_edit+tl_draw_par_line+tl_list_box_mode,\
  459.     16,16, 0x8080ff,0x0000ff,0xffffff, 0,70,TED_PANEL_WIDTH-17,120, 0,0,0, el_focus,\
  460.     ws_dir_lbox,0
  461.  
  462. ;dir_list memory
  463. tree_file_struct:
  464.   dd 1
  465.   dd 0,0,count_of_dir_list_files
  466.   dd dir_mem
  467.   db 0
  468.   dd file_name ;sys_path
  469.  
  470. dir_mem rb 32+304*count_of_dir_list_files
  471.  
  472. if lang eq ru
  473.  
  474. menu_text_area:
  475. db 'Файл',0
  476. .1:
  477. db 'Создать',0
  478. db 'Открыть',0
  479. db 'Сохранить',0
  480. db 'Выход',0
  481. .end:
  482. db 0
  483.  
  484. msgbox_1:
  485.   dw 0
  486.   db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
  487.   db 'Файл большой, потому открыт не весь.',13
  488.   db '  1. При его сохранении будут потеряны "не открывшиеся" символы.',13
  489.   db '  2. В документ нельзя добавлять текст, т. к. память занята.',0
  490.   db 'Я понял(а)',0 ;button1
  491.   db 0
  492. msgbox_2:
  493.   db 3,0
  494.   db 'Внимание',0
  495.   db 'Сохранить изменения в файле?',0
  496.   db 'Сохранить',0
  497.   db 'Не сохранять',0
  498.   db 'Отмена',0
  499.   db 0
  500. msgbox_2_funct:
  501.   dd On_SaveAndNewFile
  502.   dd On_NewFile
  503.   dd 0
  504.  
  505. msgbox_3:
  506.   db 1,0
  507.   db 'Внимание',0
  508.   db 'Ошибка при открытии файла с цветовыми настройками!',13,\
  509.      'Потому выделение слов цветом не возможно.',13,\
  510.      '  (код ошибки ='
  511.   .err: db '?'
  512.   db ')',0
  513.   db 'Закрыть',0
  514.   db 0
  515.  
  516. msgbox_4:
  517.   db 1,0
  518.   db 'Внимание',0
  519.   db 'Ошибка при открытии файла!',13,\
  520.      'Возможно имя файла введено не правильно.',13,\
  521.      '  (код ошибки ='
  522.   .err: db '?'
  523.   db ')',0
  524.   db 'Закрыть',0
  525.   db 0
  526.  
  527. msgbox_5:
  528.   db 3,0
  529.   db 'Внимание',0
  530.   db 'Сохранить изменения в файле?',0
  531.   db 'Не сохранять',0
  532.   db 'Отмена',0
  533.   db 0
  534. msgbox_5_funct:
  535.   dd but_no_msg_OpenFile
  536.   dd 0
  537.  
  538. msgbox_6:
  539.   db 1,0
  540.   db 'Внимание',0
  541.   db 'Ошибка при сохранении файла!',13,\
  542.      'Возможно имя файла введено не правильно.',13,\
  543.      '  (код ошибки ='
  544.   .err: db '?'
  545.   db ')',0
  546.   db 'Закрыть',0
  547.   db 0
  548. msgbox_7:
  549.   db 1,0
  550.   db 'Текст не найден',0
  551.   db 'Достигнут конец документа.',13,\
  552.      'Попробуйте перейти в начало документа',13,\
  553.      'или изменить запрос и повторить поиск.',0
  554.   db 'Закрыть',0
  555.   db 0
  556. msgbox_8:
  557.   db 3,0
  558.   db 'Внимание',0
  559.   db 'Для выхода завершите работу с файлом.',13,\
  560.      'Попробуйте сохранить изменения в файле',13,\
  561.      'или начать новый пустой.',0
  562.   db 'Отмена',0
  563.   db 0
  564. msgbox_9:
  565.   db 3,0
  566.   db 'Внимание',0
  567.   db 'Не открылся ',39,'диалог открытия файла',39,'.',13
  568.   .fdp:
  569.   rb 100
  570.   db 0
  571.   db 'Закрыть',0
  572.   db 0
  573.  
  574. txtFile db 'Файл:',0
  575. txtFindCapt db 'Поиск',0
  576. txtFindNext db 'Найти далее',0
  577. txtFormatCapt db 'Формат',0
  578. txtFormatApply db 'Применить',0
  579.  
  580. else
  581.  
  582. menu_text_area:
  583. db 'File',0
  584. .1:
  585. db 'New',0
  586. db 'Open',0
  587. db 'Save',0
  588. db 'Exit',0
  589. .end:
  590. db 0
  591.  
  592. msgbox_1:
  593.   dw 0
  594.   db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
  595.   db 'File is large, because not all open.',13
  596.   db '  1. If you save it will lose "not opened" characters.',13
  597.   db '  2. The document can not add text, because the memory is busy.',0
  598.   db 'Ok',0 ;button1
  599.   db 0
  600. msgbox_2:
  601.   db 3,0
  602.   db 'Warning',0
  603.   db 'Save changes to the file?',0
  604.   db 'Save',0
  605.   db 'Discard',0
  606.   db 'Cancel',0
  607.   db 0
  608. msgbox_2_funct:
  609.   dd On_SaveAndNewFile
  610.   dd On_NewFile
  611.   dd 0
  612.  
  613. msgbox_3:
  614.   db 1,0
  615.   db 'Warning',0
  616.   db 'Error opening the file with the color settings!',13,\
  617.      'Because color selection of words is not possible.',13,\
  618.      '  (error code ='
  619.   .err: db '?'
  620.   db ')',0
  621.   db 'Close',0
  622.   db 0
  623.  
  624. msgbox_4:
  625.   db 1,0
  626.   db 'Warning',0
  627.   db 'Error opening file!',13,\
  628.      'Maybe the file name is not entered correctly.',13,\
  629.      '  (error code ='
  630.   .err: db '?'
  631.   db ')',0
  632.   db 'Close',0
  633.   db 0
  634.  
  635. msgbox_5:
  636.   db 3,0
  637.   db 'Warning',0
  638.   db 'Save changes to the file?',0
  639.   db 'Discard',0
  640.   db 'Cancel',0
  641.   db 0
  642. msgbox_5_funct:
  643.   dd but_no_msg_OpenFile
  644.   dd 0
  645.  
  646. msgbox_6:
  647.   db 1,0
  648.   db 'Warning',0
  649.   db 'Error saving file!',13,\
  650.      'Maybe the file name is not entered correctly.',13,\
  651.      '  (error code ='
  652.   .err: db '?'
  653.   db ')',0
  654.   db 'Close',0
  655.   db 0
  656. msgbox_7:
  657.   db 1,0
  658.   db 'Text not found.',0
  659.   db 'Reached end of the document.',13,\
  660.      'Try to go to the beginning of the document',13,\
  661.      'or change the query and search again.',0
  662.   db 'Close',0
  663.   db 0
  664. msgbox_8:
  665.   db 3,0
  666.   db 'Warning',0
  667.   db 'To quit, quit the file.',13,\
  668.      'Try to keep changes to a file',13,\
  669.      'or start a new blank file.',0
  670.   db 'Cancel',0
  671.   db 0
  672. msgbox_9:
  673.   db 3,0
  674.   db 'Warning',0
  675.   db 'Error run ',39,'open file dialog',39,'.',13
  676.   .fdp:
  677.   rb 100
  678.   db 0
  679.   db 'Close',0
  680.   db 0
  681.  
  682. txtFile db 'File:',0
  683. txtFindCapt db 'Search',0
  684. txtFindNext db 'Find next',0
  685. txtFormatCapt db 'Format',0
  686. txtFormatApply db 'Apply',0
  687.  
  688. end if
  689.  
  690. KM_SHIFT equ 0x00010000
  691. KM_CTRL equ 0x00020000
  692. KM_ALT equ 0x00040000
  693. KM_NUMLOCK equ 0x00080000
  694.  
  695. ; KEY CODES
  696. KEY_F1 equ 0x0000003B
  697. KEY_F2 equ 0x0000003C
  698. KEY_F3 equ 0x0000003D
  699.  
  700.