Subversion Repositories Kolibri OS

Rev

Rev 7488 | Rev 7571 | 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. exit_code dd 0 ;переменная используемая для выхода из программы
  6. panel_but rb 20 ;настройки отображения кнопок на панели
  7.  
  8. ;значения задаваемые по умолчанию, без ini файла
  9. ini_def_window_t equ 20
  10. ini_def_window_l equ 200
  11. ini_def_window_w equ 570
  12. ini_def_window_h equ 470
  13. ini_def_symbol_w equ 7
  14. ini_def_symbol_h equ 10
  15. ini_def_font_s equ 0
  16. ini_def_scroll_type equ 0
  17. ;описание параматров для ini файла
  18. ini_name db 't_edit.ini',0
  19. ini_sec_window db 'Window',0
  20. key_window_t db 't',0
  21. key_window_l db 'l',0
  22. key_window_w db 'w',0
  23. key_window_h db 'h',0
  24. key_symbol_w db 'symbol_w',0
  25. key_symbol_h db 'symbol_h',0
  26. key_font_s db 'font_s',0
  27. key_scroll_type db 'scroll_type',0
  28. key_but_new db 'but_new',0
  29. key_but_open db 'but_open',0
  30. key_but_save db 'but_save',0
  31. key_but_select db 'but_select',0
  32. key_but_cut db 'but_cut',0
  33. key_but_copy db 'but_copy',0
  34. key_but_paste db 'but_paste',0
  35. key_but_find db 'but_find',0
  36. key_but_replace db 'but_replace',0
  37. key_but_key_words db 'but_key_words',0
  38. key_but_upper db 'but_upper',0
  39. key_but_lower db 'but_lower',0
  40. key_but_reverse db 'but_reverse',0
  41. key_but_undo db 'but_undo',0
  42. key_but_redo db 'but_redo',0
  43. key_but_invisible db 'but_invisible',0
  44. key_but_syntax_list db 'but_syntax_list',0
  45. key_but_syntax_mode db 'but_syntax_mode',0
  46. key_but_convert_1251_866 db 'but_convert_1251_866',0
  47. key_but_convert_866_1251 db 'but_convert_866_1251',0
  48. ini_sec_options db 'Options',0
  49. key_synt_file:
  50.         db 'syntax_'
  51.         .numb: db '0',0
  52. key_synt_ext:
  53.         db 'ext_'
  54.         .numb: db '0',0
  55. ini_def_synt_f db 0
  56.  
  57. align 4
  58. max_synt_auto_open equ 10
  59. synt_auto_open:
  60.         rb 64*max_synt_auto_open
  61.         db 0
  62.  
  63. system_dir_0 db '/sys/lib/'
  64. lib_name_0 db 'box_lib.obj',0
  65.  
  66. system_dir_1 db '/sys/lib/'
  67. lib_name_1 db 'msgbox.obj',0
  68.  
  69. system_dir_2 db '/sys/lib/'
  70. lib_name_2 db 'proc_lib.obj',0
  71.  
  72. system_dir_3 db '/sys/lib/'
  73. lib_name_3 db 'libimg.obj',0
  74.  
  75. system_dir_4 db '/sys/lib/'
  76. lib_name_4 db 'libini.obj',0
  77.  
  78. system_dir_5 db '/sys/lib/'
  79. lib_name_5 db 'kmenu.obj',0
  80.  
  81.  
  82. ;---------------------------------------------------------------------
  83. align 4
  84. import_box_lib:
  85.         dd alib_init0 ;функция запускается макросом 1 раз при подключении бибилиотеки, потому в программе метка на нее не нужна
  86.  
  87.         edit_box_draw  dd aEdit_box_draw
  88.         edit_box_key   dd aEdit_box_key
  89.         edit_box_mouse dd aEdit_box_mouse
  90.         ;edit_box_set_text dd aEdit_box_set_text
  91.         ;version_ed     dd aVersion_ed
  92.  
  93.         scrollbar_ver_draw  dd aScrollbar_ver_draw
  94.         scrollbar_ver_mouse dd aScrollbar_ver_mouse
  95.         scrollbar_hor_draw  dd aScrollbar_hor_draw
  96.         scrollbar_hor_mouse dd aScrollbar_hor_mouse
  97.         ;version_scrollbar   dd aVersion_scrollbar
  98.  
  99.         tl_data_init dd sz_tl_data_init
  100.         tl_data_clear dd sz_tl_data_clear
  101.         tl_info_clear dd sz_tl_info_clear
  102.         tl_key dd sz_tl_key
  103.         tl_mouse dd sz_tl_mouse
  104.         tl_draw dd sz_tl_draw
  105.         tl_info_undo dd sz_tl_info_undo
  106.         tl_info_redo dd sz_tl_info_redo
  107.         tl_node_add dd sz_tl_node_add
  108.         tl_node_set_data dd sz_tl_node_set_data
  109.         tl_node_get_data dd sz_tl_node_get_data
  110.         tl_node_delete dd sz_tl_node_delete
  111.         tl_cur_beg dd sz_tl_cur_beg
  112.         tl_cur_next dd sz_tl_cur_next
  113.         tl_cur_perv dd sz_tl_cur_perv
  114.         ;tl_node_close_open dd sz_tl_node_close_open
  115.         tl_node_lev_inc dd sz_tl_node_lev_inc
  116.         tl_node_lev_dec dd sz_tl_node_lev_dec
  117.  
  118.         ted_but_sumb_upper dd sz_ted_but_sumb_upper
  119.         ted_but_sumb_lover dd sz_ted_but_sumb_lover
  120.         ted_but_convert_by_table dd sz_ted_but_convert_by_table
  121.         ted_can_save dd sz_ted_can_save
  122.         ted_clear dd sz_ted_clear
  123.         ted_delete dd sz_ted_delete
  124.         ted_draw dd sz_ted_draw
  125.         ted_init dd sz_ted_init
  126.         ted_init_scroll_bars dd sz_ted_init_scroll_bars
  127.         ted_init_syntax_file dd sz_ted_init_syntax_file
  128.         ted_is_select dd sz_ted_is_select
  129.         ted_key dd sz_ted_key
  130.         ted_mouse dd sz_ted_mouse
  131.         ted_open_file dd sz_ted_open_file
  132.         ted_save_file dd sz_ted_save_file
  133.         ted_text_add dd sz_ted_text_add
  134.         ted_but_select_word dd sz_ted_but_select_word
  135.         ted_but_cut dd sz_ted_but_cut
  136.         ted_but_copy dd sz_ted_but_copy
  137.         ted_but_paste dd sz_ted_but_paste
  138.         ted_but_undo dd sz_ted_but_undo
  139.         ted_but_redo dd sz_ted_but_redo
  140.         ted_but_reverse dd sz_ted_but_reverse
  141.         ted_but_find_next dd sz_ted_but_find_next
  142.         ted_text_colored dd sz_ted_text_colored
  143.         version_text_edit dd sz_ted_version
  144.  
  145. dd 0,0
  146.         alib_init0 db 'lib_init',0
  147.  
  148.         aEdit_box_draw  db 'edit_box',0
  149.         aEdit_box_key   db 'edit_box_key',0
  150.         aEdit_box_mouse db 'edit_box_mouse',0
  151.         ;aEdit_box_set_text db 'edit_box_set_text',0
  152.         ;aVersion_ed    db 'version_ed',0
  153.  
  154.         aScrollbar_ver_draw  db 'scrollbar_v_draw',0
  155.         aScrollbar_ver_mouse db 'scrollbar_v_mouse',0
  156.         aScrollbar_hor_draw  db 'scrollbar_h_draw',0
  157.         aScrollbar_hor_mouse db 'scrollbar_h_mouse',0
  158.         ;aVersion_scrollbar   db 'version_scrollbar',0
  159.  
  160.         sz_tl_data_init db 'tl_data_init',0
  161.         sz_tl_data_clear db 'tl_data_clear',0
  162.         sz_tl_info_clear db 'tl_info_clear',0
  163.         sz_tl_key db 'tl_key',0
  164.         sz_tl_mouse db 'tl_mouse',0
  165.         sz_tl_draw db 'tl_draw',0
  166.         sz_tl_info_undo db 'tl_info_undo',0
  167.         sz_tl_info_redo db 'tl_info_redo',0
  168.         sz_tl_node_add db 'tl_node_add',0
  169.         sz_tl_node_set_data db 'tl_node_set_data',0
  170.         sz_tl_node_get_data db 'tl_node_get_data',0
  171.         sz_tl_node_delete db 'tl_node_delete',0
  172.         sz_tl_cur_beg db 'tl_cur_beg',0
  173.         sz_tl_cur_next db 'tl_cur_next',0
  174.         sz_tl_cur_perv db 'tl_cur_perv',0
  175.         ;sz_tl_node_close_open db 'tl_node_close_open',0
  176.         sz_tl_node_lev_inc db 'tl_node_lev_inc',0
  177.         sz_tl_node_lev_dec db 'tl_node_lev_dec',0
  178.  
  179.         sz_ted_but_sumb_upper   db 'ted_but_sumb_upper',0
  180.         sz_ted_but_sumb_lover   db 'ted_but_sumb_lover',0
  181.         sz_ted_but_convert_by_table db 'ted_but_convert_by_table',0
  182.         sz_ted_can_save                 db 'ted_can_save',0
  183.         sz_ted_clear                    db 'ted_clear',0
  184.         sz_ted_delete                   db 'ted_delete',0
  185.         sz_ted_draw                             db 'ted_draw',0
  186.         sz_ted_init                             db 'ted_init',0
  187.         sz_ted_init_scroll_bars db 'ted_init_scroll_bars',0
  188.         sz_ted_init_syntax_file db 'ted_init_syntax_file',0
  189.         sz_ted_is_select                db 'ted_is_select',0
  190.         sz_ted_key                              db 'ted_key',0
  191.         sz_ted_mouse                    db 'ted_mouse',0
  192.         sz_ted_open_file                db 'ted_open_file',0
  193.         sz_ted_save_file                db 'ted_save_file',0
  194.         sz_ted_text_add                 db 'ted_text_add',0
  195.         sz_ted_but_select_word  db 'ted_but_select_word',0
  196.         sz_ted_but_cut                  db 'ted_but_cut',0
  197.         sz_ted_but_copy                 db 'ted_but_copy',0
  198.         sz_ted_but_paste                db 'ted_but_paste',0
  199.         sz_ted_but_undo                 db 'ted_but_undo',0
  200.         sz_ted_but_redo                 db 'ted_but_redo',0
  201.         sz_ted_but_reverse              db 'ted_but_reverse',0
  202.         sz_ted_but_find_next    db 'ted_but_find_next',0
  203.         sz_ted_text_colored             db 'ted_text_colored',0
  204.         sz_ted_version db 'version_text_edit',0
  205.  
  206. align 4
  207. import_proclib:
  208.         OpenDialog_Init dd aOpenDialog_Init
  209.         OpenDialog_Start dd aOpenDialog_Start
  210. dd 0,0
  211.         aOpenDialog_Init db 'OpenDialog_init',0
  212.         aOpenDialog_Start db 'OpenDialog_start',0
  213.  
  214. align 4
  215. import_msgbox_lib:
  216.         mb_create dd amb_create
  217.         mb_reinit dd amb_reinit
  218.         mb_setfunctions dd amb_setfunctions
  219. dd 0,0
  220.         amb_create db 'mb_create',0
  221.         amb_reinit db 'mb_reinit',0
  222.         amb_setfunctions db 'mb_setfunctions',0
  223.  
  224. align 4
  225. import_libimg:
  226.         dd alib_init1
  227.         img_to_rgb2 dd aimg_to_rgb2
  228.         img_decode  dd aimg_decode
  229.         img_destroy dd aimg_destroy
  230. dd 0,0
  231.         alib_init1   db 'lib_init',0
  232.         aimg_to_rgb2 db 'img_to_rgb2',0
  233.         aimg_decode  db 'img_decode',0 ;автоматически определяет формат графических данных
  234.         aimg_destroy db 'img_destroy',0
  235.  
  236. align 4
  237. import_libini:
  238.         dd alib_init2
  239.         ini_get_str   dd aini_get_str
  240.         ini_get_int   dd aini_get_int
  241.         ini_get_color dd aini_get_color
  242. dd 0,0
  243.         alib_init2     db 'lib_init',0
  244.         aini_get_str   db 'ini_get_str',0
  245.         aini_get_int   db 'ini_get_int',0
  246.         aini_get_color db 'ini_get_color',0
  247.  
  248. align 4
  249. import_libkmenu:
  250.         kmenu_init                     dd akmenu_init
  251.         kmainmenu_draw                 dd akmainmenu_draw
  252.         kmainmenu_dispatch_cursorevent dd akmainmenu_dispatch_cursorevent
  253.         ksubmenu_new                   dd aksubmenu_new
  254.         ksubmenu_delete                dd aksubmenu_delete
  255.         ksubmenu_draw                  dd aksubmenu_draw
  256.         ksubmenu_add                   dd aksubmenu_add
  257.         kmenuitem_new                  dd akmenuitem_new
  258.         kmenuitem_delete               dd akmenuitem_delete
  259.         kmenuitem_draw                 dd akmenuitem_draw
  260. dd 0,0
  261.         akmenu_init                     db 'kmenu_init',0
  262.         akmainmenu_draw                 db 'kmainmenu_draw',0
  263.         akmainmenu_dispatch_cursorevent db 'kmainmenu_dispatch_cursorevent',0
  264.         aksubmenu_new                   db 'ksubmenu_new',0
  265.         aksubmenu_delete                db 'ksubmenu_delete',0
  266.         aksubmenu_draw                  db 'ksubmenu_draw',0
  267.         aksubmenu_add                   db 'ksubmenu_add',0
  268.         akmenuitem_new                  db 'kmenuitem_new',0
  269.         akmenuitem_delete               db 'kmenuitem_delete',0
  270.         akmenuitem_draw                 db 'kmenuitem_draw',0
  271.  
  272. ;---------------------------------------------------------------------
  273. align 4
  274. wScr scrollbar 16,50, 300,50, 15, 100,30,0, 0,0,0, 1
  275.  
  276. align 4
  277. hScr scrollbar 150,0,  16,50, 15, 100,30,0, 0,0,0, 1
  278.  
  279. ;дочерний скроллинг для элемента ListBox
  280. align 4
  281. ws_dir_lbox scrollbar 16,0, 30,70, 15, 100,30,0, 0,0,0, 1
  282.  
  283. ;---------------------------------------------------------------------
  284. align 4
  285. OpenDialog_data:
  286. .type                   dd 0
  287. .procinfo               dd procinfo     ;+4
  288. .com_area_name  dd communication_area_name      ;+8
  289. .com_area               dd 0    ;+12
  290. .opendir_path           dd plugin_path ;+16
  291. .dir_default_path       dd default_dir ;+20
  292. .start_path             dd file_name ;+24 путь к диалогу открытия файлов
  293. .draw_window    dd draw_window  ;+28
  294. .status                 dd 0    ;+32
  295. .openfile_path  dd openfile_path        ;+36 путь к открываемому файлу
  296. .filename_area  dd filename_area        ;+40 имя открываемого файла
  297. .filter_area    dd Filter
  298. .x:
  299. .x_size                 dw 420 ;+48 ; Window X size
  300. .x_start                dw 10 ;+50 ; Window X position
  301. .y:
  302. .y_size                 dw 320 ;+52 ; Window y size
  303. .y_start                dw 10 ;+54 ; Window Y position
  304.  
  305. default_dir db '/rd/1',0 ;директория по умолчанию
  306.  
  307. communication_area_name:
  308.         db 'FFFFFFFF_open_dialog',0
  309. open_dialog_name:
  310.         db 'opendial',0
  311. communication_area_default_path:
  312.         db '/rd/1/File managers/',0
  313.  
  314. Filter:
  315. dd Filter.end - Filter.1
  316. .1:
  317. db 'ASM',0
  318. db 'CPP',0
  319. db 'INC',0
  320. db 'MAC',0
  321. db 'INI',0
  322. db 'TXT',0
  323. db 'H',0
  324. db 'C',0
  325. db 'HTM',0
  326. db 'HTML',0
  327. db 'PY',0
  328. db 'SH',0
  329. db 'BAT',0
  330. db 'LUA',0
  331. db 'INF',0
  332. db 'LOG',0
  333. db 'DBG',0
  334. db 'DAT',0
  335. .end:
  336. db 0
  337.  
  338. TED_PANEL_NULL  equ 0 ;нет открытой панели
  339. TED_PANEL_FIND  equ 1 ;панель поиска
  340. TED_PANEL_SYNTAX equ 2 ;панель выбора файлов подсветки
  341. TED_PANEL_WIDTH equ 150 ;ширина панели
  342.  
  343. count_of_dir_list_files equ 15 ;максимальное число файлов синтаксиса показываемых в окне элемента tree1
  344.  
  345. ;------------------------------------------------------------------------------
  346. struct TexSelect
  347.   x0 dd ?
  348.   y0 dd ?
  349.   x1 dd ?
  350.   y1 dd ?
  351. ends
  352. ;------------------------------------------------------------------------------
  353. align 4
  354. tedit0: ;структура текстового редактора
  355.         .wnd BOX 0,50,440,150 ;+ 0
  356.         .rec BOX 30,25,ini_def_symbol_w,ini_def_symbol_h ;+16
  357.         .drag_m db 0 ;+32 выделение от мыши
  358.         .drag_k db 0 ;+33 выделение от клавиатуры
  359.         .sel  TexSelect 0,0,0,0 ;+34 структура выделения
  360.         .seln TexSelect ;+50 дополнительная структура выделения
  361.         .tex      dd 0 ;+66 text memory pointer
  362.         .tex_1    dd 0 ;+70 text first symbol pointer
  363.         .tex_end  dd 0 ;+74 text end memory pointer
  364.         .cur_x    dd 0 ;+78 координата x курсора
  365.         .cur_y    dd 0 ;+82 координата y курсора
  366.         .max_chars dd maxChars ;+86 максимальное число символов в одном документе
  367.         .count_colors_text dd 1 ;+90 колличество цветов текста
  368.         .count_key_words   dd 0 ;+94 колличество ключевых слов
  369.         .color_cursor      dd 0x808080 ;+98 цвет курсора
  370.         .color_wnd_capt    dd     0x80 ;+102 цвет полей вокруг окна
  371.         .color_wnd_work    dd      0x0 ;+106 цвет фона окна
  372.         .color_wnd_bord    dd 0xd0d0d0 ;+110 цвет текста на полях
  373.         .color_select      dd 0x208080 ;+114 цвет выделения
  374.         .color_cur_text    dd 0xff0000 ;+118 цвет символа под курсором
  375.         .color_wnd_text    dd 0xffff00 ;+122 цвет текста в окне
  376.         .syntax_file       dd 0 ;+126 указатель на начало файла синтаксиса
  377.         .syntax_file_size  dd maxSyntaxFileSize ;+130 максимальный размер файла синтаксиса
  378.         .text_colors       dd 0 ;+134 указатель на массив цветов текста
  379.         .help_text_f1      dd 0 ;+138 указатель на текст справки (по нажатии F1)
  380.         .help_id           dd -1 ;+142 идентификатор для справки
  381.         .key_words_data    dd 0 ;+146 указатель на структуры ключевых слов TexColViv
  382.         .tim_ch      dd ? ;+150 количество изменений в файле
  383.         .tim_undo    dd ? ;+154 количество отмененных действий
  384.         .tim_ls      dd ? ;+158 время последнего сохранения
  385.         .tim_co      dd ? ;+162 время последней цветовой разметки
  386.         .el_focus    dd el_focus ;+166 указатель на переменную элемента в фокусе
  387.         .err_save    db 0 ;+170 ошибка сохранения файла
  388.         .panel_id    db 0 ;+171 номер открытой панели
  389.         .key_new     db 0 ;+172 символ, который будет добавлятся с клавиатуры
  390.         .symbol_new_line db 20 ;+173 символ завершения строки
  391.         .scr_w       dd wScr ;+174 вертикальный скроллинг
  392.         .scr_h       dd hScr ;+178 горизонтальный скроллинг
  393.         .arr_key_pos dd 0 ;+182 указатель на массив позиций ключевых слов
  394.         .buffer      dd buf ;+186 указатель на буфер копирования/вставки
  395.         .buffer_find dd buf_find ;+190 указатель на буфер для поиска
  396.         .cur_ins     db 1 ;+194 режим работы курсора (обычный или замена)
  397.         .mode_color  db 1 ;+195 режим выделения слов цветом (0-выкл. 1-вкл.)
  398.         .mode_invis  db 0 ;+196 режим показа непечатаемых символов
  399.         .gp_opt      db 0 ;+197 опции возвращаемые функцией ted_get_pos_by_cursor
  400.         .fun_on_key_ctrl_o dd ted_but_open_file ;+198 указатель на функцию вызываемую при нажатии Ctrl+O (открытие файла)
  401.         .fun_on_key_ctrl_f dd ted_but_find      ;+202 ... Ctrl+F (вызова/скрытия панели поиска)
  402.         .fun_on_key_ctrl_n dd ted_but_new_file  ;+206 ... Ctrl+N (создание нового документа)
  403.         .fun_on_key_ctrl_s dd ted_but_save_file.no_dlg ;+210 ... Ctrl+S
  404.         .buffer_size       dd BUF_SIZE ;+214 размер буфера копирования/вставки
  405.         .fun_find_err      dd ted_on_find_err ;+218 указатель на функцию вызываемую если поиск закончился неудачно
  406.         .fun_init_synt_err dd 0   ;+222
  407.         .fun_draw_panel_buttons dd draw_but_toolbar  ;+226 указатель на функцию рисования панели с кнопками
  408.         .fun_draw_panel_find    dd draw_panel_find   ;+230 указатель на функцию рисования панели поиска
  409.         .fun_draw_panel_syntax  dd draw_panel_syntax ;+234 указатель на функцию рисования панели синтаксиса
  410.         .fun_save_err           dd ted_save_err_msg  ;+238 указатель на функцию вызываемую если сохранение файла закончилось неудачно
  411.         .increase_size dd 200 ;+242 число символов на которые будет увечиваться память при нехватке
  412.         .ptr_free_symb dd ?   ;+246 используется внутри элемента для ускорения вставки текста
  413.         .font_size dd 0   ;+250 множитель для размера шрифта
  414. ;------------------------------------------------------------------------------
  415.  
  416. conv_tabl rb 128 ; таблица для конвертирования scan-кода в ascii-код
  417.  
  418. el_focus dd tedit0
  419. mouse_dd dd 0
  420. tree1 tree_list 264,count_of_dir_list_files+2, tl_key_no_edit+tl_draw_par_line+tl_list_box_mode,\
  421.     16,16, 0x8080ff,0x0000ff,0xffffff, 0,70,TED_PANEL_WIDTH-17,120, 0,0,0, el_focus,\
  422.     ws_dir_lbox,0
  423.  
  424. ;dir_list memory
  425. tree_file_struct:
  426.   dd 1
  427.   dd 0,0,count_of_dir_list_files
  428.   dd dir_mem
  429.   db 0
  430.   dd file_name ;sys_path
  431.  
  432. if lang eq ru
  433.  
  434.  
  435. msgbox_1:
  436.   dw 0
  437.   db 'Внимание',0 ;+2 = +MB_TEXT_OFFSET
  438.   db 'Файл большой, потому открыт не весь.',13
  439.   db '  1. При его сохранении будут потеряны "не открывшиеся" символы.',13
  440.   db '  2. В документ нельзя добавлять текст, т. к. память занята.',0
  441.   db 'Я понял(а)',0 ;button1
  442.   db 0
  443. msgbox_2:
  444.   db 3,0
  445.   db 'Внимание',0
  446.   db 'Сохранить изменения в файле?',0
  447.   db 'Сохранить',0
  448.   db 'Не сохранять',0
  449.   db 'Отмена',0
  450.   db 0
  451. msgbox_3:
  452.   db 1,0
  453.   db 'Внимание',0
  454.   db 'Ошибка при открытии файла с цветовыми настройками!',13,\
  455.      'Потому выделение слов цветом не возможно.',13,\
  456.      '  (код ошибки ='
  457.   .err: db '?'
  458.   db ')',0
  459.   db 'Закрыть',0
  460.   db 0
  461. msgbox_4:
  462.   db 1,0
  463.   db 'Внимание',0
  464.   db 'Ошибка при открытии файла!',13,\
  465.      'Возможно имя файла введено не правильно.',13,\
  466.      '  (код ошибки ='
  467.   .err: db '?'
  468.   db ')',0
  469.   db 'Закрыть',0
  470.   db 0
  471. msgbox_6:
  472.   db 1,0
  473.   db 'Внимание',0
  474.   db 'Ошибка при сохранении файла!',13,\
  475.      'Возможно имя файла введено не правильно.',13,\
  476.      '  (код ошибки ='
  477.   .err: db '?'
  478.   db ')',0
  479.   db 'Закрыть',0
  480.   db 0
  481. msgbox_7:
  482.   db 1,0
  483.   db 'Текст не найден',0
  484.   db 'Достигнут конец документа.',13,\
  485.      'Попробуйте перейти в начало документа',13,\
  486.      'или изменить запрос и повторить поиск.',0
  487.   db 'Закрыть',0
  488.   db 0
  489. msgbox_9:
  490.   db 3,0
  491.   db 'Внимание',0
  492.   db 'Не открылся ',39,'диалог открытия файла',39,'.',13
  493.   .fdp:
  494.   rb 100
  495.   db 0
  496.   db 'Закрыть',0
  497.   db 0
  498.  
  499. txtFindCapt db 'Поиск',0
  500. txtFindNext db 'Найти далее',0
  501. txtFormatCapt db 'Формат',0
  502. txtFormatApply db 'Применить',0
  503.  
  504. else
  505.  
  506. msgbox_1:
  507.   dw 0
  508.   db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
  509.   db 'File is large, because not all open.',13
  510.   db '  1. If you save it will lose "not opened" characters.',13
  511.   db '  2. The document can not add text, because the memory is busy.',0
  512.   db 'Ok',0 ;button1
  513.   db 0
  514. msgbox_2:
  515.   db 3,0
  516.   db 'Warning',0
  517.   db 'Save changes to the file?',0
  518.   db 'Save',0
  519.   db 'Discard',0
  520.   db 'Cancel',0
  521.   db 0
  522. msgbox_3:
  523.   db 1,0
  524.   db 'Warning',0
  525.   db 'Error opening the file with the color settings!',13,\
  526.      'Because color selection of words is not possible.',13,\
  527.      '  (error code ='
  528.   .err: db '?'
  529.   db ')',0
  530.   db 'Close',0
  531.   db 0
  532. msgbox_4:
  533.   db 1,0
  534.   db 'Warning',0
  535.   db 'Error opening file!',13,\
  536.      'Maybe the file name is not entered correctly.',13,\
  537.      '  (error code ='
  538.   .err: db '?'
  539.   db ')',0
  540.   db 'Close',0
  541.   db 0
  542. msgbox_6:
  543.   db 1,0
  544.   db 'Warning',0
  545.   db 'Error saving file!',13,\
  546.      'Maybe the file name is not entered correctly.',13,\
  547.      '  (error code ='
  548.   .err: db '?'
  549.   db ')',0
  550.   db 'Close',0
  551.   db 0
  552. msgbox_7:
  553.   db 1,0
  554.   db 'Text not found.',0
  555.   db 'Reached end of the document.',13,\
  556.      'Try to go to the beginning of the document',13,\
  557.      'or change the query and search again.',0
  558.   db 'Close',0
  559.   db 0
  560. msgbox_9:
  561.   db 3,0
  562.   db 'Warning',0
  563.   db 'Error run ',39,'open file dialog',39,'.',13
  564.   .fdp:
  565.   rb 100
  566.   db 0
  567.   db 'Close',0
  568.   db 0
  569.  
  570. txtFindCapt db 'Search',0
  571. txtFindNext db 'Find next',0
  572. txtFormatCapt db 'Format',0
  573. txtFormatApply db 'Apply',0
  574.  
  575. end if
  576.  
  577. ;функции для кнопок в сообщениях
  578. msgbox_2N_funct:
  579.         dd On_SaveAndNewFile
  580.         dd On_NewFile
  581.         dd 0
  582. msgbox_2O_funct:
  583.         dd On_SaveAndOpenFile
  584.         dd ted_but_open_file.no_msg
  585.         dd 0
  586. msgbox_2E_funct:
  587.         dd On_SaveAndExit
  588.         dd On_Exit
  589.         dd 0
  590.  
  591. KM_SHIFT equ 0x00010000
  592. KM_CTRL equ 0x00020000
  593. KM_ALT equ 0x00040000
  594. KM_NUMLOCK equ 0x00080000
  595.  
  596. ; KEY CODES
  597. KEY_F1 equ 0x0000003B
  598. KEY_F2 equ 0x0000003C
  599. KEY_F3 equ 0x0000003D
  600.