Subversion Repositories Kolibri OS

Rev

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

  1. ;---  äàííûå ïðîãðàììû  ----------------------------------------------
  2. fn_col_option dd def_col_file
  3. fn_syntax_dir db 'info/',0
  4. def_col_file db 'default.syn',0
  5.  
  6. system_dir0 db '/sys/lib/'
  7. boxlib_name db 'box_lib.obj',0
  8.  
  9. system_dir1 db '/sys/lib/'
  10. msgbox_name db 'msgbox.obj',0
  11.  
  12. fn_icon_tl_sys db 'tl_sys_16.bmp',0
  13. fn_icon_tl_nod db 'tl_nod_16.bmp',0
  14. ;---------------------------------------------------------------------
  15. fileinfo:
  16.   dd 5
  17.   dd 0
  18.   dd 0
  19.   dd 0
  20.   dd file_info
  21. string:
  22.   db 0
  23.   dd file_name
  24.  
  25. ;plugin dd 0
  26.  
  27. ;---------------------------------------------------------------------
  28. align 4
  29. myimport:
  30. edit_box_draw  dd aEdit_box_draw
  31. edit_box_key   dd aEdit_box_key
  32. edit_box_mouse dd aEdit_box_mouse
  33. ;version_ed     dd aVersion_ed
  34.  
  35. ;check_box_draw dd aCheck_box_draw
  36. ;check_box_mouse dd aCheck_box_mouse
  37. ;version_ch     dd aVersion_ch
  38.  
  39. ;option_box_draw  dd aOption_box_draw
  40. ;option_box_mouse dd aOption_box_mouse
  41. ;version_op      dd aVersion_op
  42.  
  43. scrollbar_ver_draw  dd aScrollbar_ver_draw
  44. scrollbar_ver_mouse dd aScrollbar_ver_mouse
  45. scrollbar_hor_draw  dd aScrollbar_hor_draw
  46. scrollbar_hor_mouse dd aScrollbar_hor_mouse
  47. ;version_scrollbar   dd aVersion_scrollbar
  48.  
  49. ;dinamic_button_draw  dd aDbutton_draw
  50. ;dinamic_button_mouse dd aDbutton_mouse
  51. ;version_dbutton      dd aVersion_dbutton
  52.  
  53. menu_bar_draw    dd aMenu_bar_draw
  54. menu_bar_mouse   dd aMenu_bar_mouse
  55. ;version_menu_bar dd aVersion_menu_bar
  56.  
  57.   tl_data_init dd sz_tl_data_init
  58.   tl_data_clear dd sz_tl_data_clear
  59.   tl_info_clear dd sz_tl_info_clear
  60.   tl_key dd sz_tl_key
  61.   tl_mouse dd sz_tl_mouse
  62.   tl_draw dd sz_tl_draw
  63.   tl_info_undo dd sz_tl_info_undo
  64.   tl_info_redo dd sz_tl_info_redo
  65.   tl_node_add dd sz_tl_node_add
  66.   tl_node_set_data dd sz_tl_node_set_data
  67.   tl_node_get_data dd sz_tl_node_get_data
  68.   tl_node_delete dd sz_tl_node_delete
  69.   tl_cur_beg dd sz_tl_cur_beg
  70.   tl_cur_next dd sz_tl_cur_next
  71.   tl_cur_perv dd sz_tl_cur_perv
  72.   tl_node_close_open dd sz_tl_node_close_open
  73.   tl_node_lev_inc dd sz_tl_node_lev_inc
  74.   tl_node_lev_dec dd sz_tl_node_lev_dec
  75. dd 0,0
  76.  
  77. aEdit_box_draw  db 'edit_box',0
  78. aEdit_box_key   db 'edit_box_key',0
  79. aEdit_box_mouse db 'edit_box_mouse',0
  80. ;aVersion_ed    db 'version_ed',0
  81.  
  82. ;aCheck_box_draw  db 'check_box_draw',0
  83. ;aCheck_box_mouse db 'check_box_mouse',0
  84. ;aVersion_ch     db 'version_ch',0
  85.  
  86. ;aOption_box_draw  db 'option_box_draw',0
  87. ;aOption_box_mouse db 'option_box_mouse',0
  88. ;aVersion_op      db 'version_op',0
  89.  
  90. aScrollbar_ver_draw  db 'scrollbar_v_draw',0
  91. aScrollbar_ver_mouse db 'scrollbar_v_mouse',0
  92. aScrollbar_hor_draw  db 'scrollbar_h_draw',0
  93. aScrollbar_hor_mouse db 'scrollbar_h_mouse',0
  94. ;aVersion_scrollbar   db 'version_scrollbar',0
  95.  
  96. ;aDbutton_draw    db 'dbutton_draw',0
  97. ;aDbutton_mouse   db 'dbutton_mouse',0
  98. ;aVersion_dbutton  db 'version_dbutton',0
  99.  
  100. aMenu_bar_draw    db 'menu_bar_draw',0
  101. aMenu_bar_mouse   db 'menu_bar_mouse',0
  102. ;aVersion_menu_bar db 'version_menu_bar',0
  103.  
  104.   sz_tl_data_init db 'tl_data_init',0
  105.   sz_tl_data_clear db 'tl_data_clear',0
  106.   sz_tl_info_clear db 'tl_info_clear',0
  107.   sz_tl_key db 'tl_key',0
  108.   sz_tl_mouse db 'tl_mouse',0
  109.   sz_tl_draw db 'tl_draw',0
  110.   sz_tl_info_undo db 'tl_info_undo',0
  111.   sz_tl_info_redo db 'tl_info_redo',0
  112.   sz_tl_node_add db 'tl_node_add',0
  113.   sz_tl_node_set_data db 'tl_node_set_data',0
  114.   sz_tl_node_get_data db 'tl_node_get_data',0
  115.   sz_tl_node_delete db 'tl_node_delete',0
  116.   sz_tl_cur_beg db 'tl_cur_beg',0
  117.   sz_tl_cur_next db 'tl_cur_next',0
  118.   sz_tl_cur_perv db 'tl_cur_perv',0
  119.   sz_tl_node_close_open db 'tl_node_close_open',0
  120.   sz_tl_node_lev_inc db 'tl_node_lev_inc',0
  121.   sz_tl_node_lev_dec db 'tl_node_lev_dec',0
  122. ;--------------------------------------------------
  123. align 4
  124. msgbox_lib_import:
  125.   mb_create dd amb_create
  126.   mb_reinit dd amb_reinit
  127.   mb_setfunctions dd amb_setfunctions
  128.   dd 0,0
  129.   amb_create db 'mb_create',0
  130.   amb_reinit db 'mb_reinit',0
  131.   amb_setfunctions db 'mb_setfunctions',0
  132. ;---------------------------------------------------------------------  
  133. align 4
  134. wScr:
  135. .x:
  136. .size_x   dw 16 ;+0
  137. .start_x  dw 50 ;+2
  138. .y:
  139. .size_y   dw 300 ; +4
  140. .start_y  dw  50 ; +6
  141. .btn_high dd  15 ; +8
  142. .type     dd   1 ;+12
  143. .max_area dd 100 ;+16
  144. .cur_area dd  30 ;+20
  145. .position dd   0 ;+24
  146. .bckg_col dd 0xeeeeee ;+28
  147. .frnt_col dd 0xbbddff ;+32
  148. .line_col dd   0 ;+36
  149. .redraw   dd   0 ;+40
  150. .delta    dw   0 ;+44
  151. .delta2   dw   0 ;+46
  152. .run_x:
  153. .r_size_x  dw 0 ;+48
  154. .r_start_x dw 0 ;+50
  155. .run_y:
  156. .r_size_y   dw 0 ;+52
  157. .r_start_y  dw 0 ;+54
  158. .m_pos      dd 0 ;+56
  159. .m_pos_2    dd 0 ;+60
  160. .m_keys     dd 0 ;+64
  161. .run_size   dd 0 ;+68
  162. .position2  dd 0 ;+72
  163. .work_size  dd 0 ;+76
  164. .all_redraw dd 0 ;+80
  165. .ar_offset  dd 1 ;+84
  166. ;---------------------------------------------------------------------
  167. align 4
  168. hScr:
  169. .x:
  170. .size_x     dw 150 ;+0
  171. .start_x    dw 0 ;+2
  172. .y:
  173. .size_y     dw 16 ;+4
  174. .start_y    dw 50 ;+6
  175. .btn_high   dd 15 ;+8
  176. .type       dd 1  ;+12
  177. .max_area   dd 100 ;+16
  178. .cur_area   dd 30  ;+20
  179. .position   dd 0  ;+24
  180. .bckg_col   dd 0xeeeeee ;+28
  181. .frnt_col   dd 0xbbddff ;+32
  182. .line_col   dd 0  ;+36
  183. .redraw     dd 0  ;+40
  184. .delta      dw 0  ;+44
  185. .delta2     dw 0  ;+46
  186. .run_x:
  187. .r_size_x   dw 0  ;+48
  188. .r_start_x  dw 0  ;+50
  189. .run_y:
  190. .r_size_y   dw 0 ;+52
  191. .r_start_y  dw 0 ;+54
  192. .m_pos      dd 0 ;+56
  193. .m_pos_2    dd 0 ;+60
  194. .m_keys     dd 0 ;+64
  195. .run_size   dd 0 ;+68
  196. .position2  dd 0 ;+72
  197. .work_size  dd 0 ;+76
  198. .all_redraw dd 0 ;+80
  199. .ar_offset  dd 1 ;+84
  200. ;---------------------------------------------------------------------  
  201. align 4
  202. ws_dir_lbox: ;äî÷åðíèé ñêðîëëèíã äëÿ ýëåìåíòà ListBox
  203. .x:
  204. .size_x     dw 16 ;+0
  205. .start_x    dw 0 ;+2
  206. .y:
  207. .size_y     dw 30 ;+4
  208. .start_y    dw 70 ;+6
  209. .btn_high   dd 15 ;+8
  210. .type       dd 1  ;+12
  211. .max_area   dd 100  ;+16
  212. .cur_area   dd 30  ;+20
  213. .position   dd 0  ;+24
  214. .bckg_col   dd 0xeeeeee ;+28
  215. .frnt_col   dd 0xbbddff ;+32
  216. .line_col   dd 0  ;+36
  217. .redraw     dd 0  ;+40
  218. .delta      dw 0  ;+44
  219. .delta2     dw 0  ;+46
  220. .run_x:
  221. .r_size_x   dw 0  ;+48
  222. .r_start_x  dw 0  ;+50
  223. .run_y:
  224. .r_size_y   dw 0 ;+52
  225. .r_start_y  dw 0 ;+54
  226. .m_pos      dd 0 ;+56
  227. .m_pos_2    dd 0 ;+60
  228. .m_keys     dd 0 ;+64
  229. .run_size   dd 0 ;+68
  230. .position2  dd 0 ;+72
  231. .work_size  dd 0 ;+76
  232. .all_redraw dd 0 ;+80
  233. .ar_offset  dd 1 ;+84
  234. ;---------------------------------------------------------------------
  235.  
  236. align 4
  237. menu_data_1:
  238. .type: dd 0   ;+0
  239. .x:
  240. .size_x  dw 35 ;+4
  241. .start_x dw  5 ;+6
  242. .y:
  243. .size_y  dw 15 ;+8
  244. .start_y dw  5 ;+10
  245. .text_pointer: dd menu_text_area   ;+12
  246. .pos_pointer:  dd menu_text_area.1 ;+16
  247. .text_end   dd menu_text_area.end  ;+20
  248. .mouse_pos  dd 0 ;+24
  249. .mouse_keys dd 0 ;+28
  250. .x1:
  251. .size_x1  dw 70  ;+32
  252. .start_x1 dw  5  ;+34
  253. .y1:
  254. .size_y1  dw 15  ;+36
  255. .start_y1 dw 20  ;+38
  256. .bckg_col dd 0xeeeeee ;+40
  257. .frnt_col dd 0xff ;+44
  258. .menu_col dd 0xffffff ;+48
  259. .select   dd 0 ;+52
  260. .out_select dd 0 ;+56
  261. .buf_adress dd 0 ;+60
  262. .procinfo dd procinfo ;0 ;+64
  263. .click   dd 0 ;+68
  264. .cursor  dd 0 ;+72
  265. .cursor_old dd 0 ;+76
  266. .interval   dd 16 ;+80
  267. .cursor_max  dd 0 ;+84
  268. .extended_key dd 0 ;+88
  269. .menu_sel_col dd 0x00cc00 ;+92
  270. .bckg_text_col dd 0 ;+96
  271. .frnt_text_col dd 0xffffff ;+100
  272. .mouse_keys_old dd 0 ;+104
  273. .font_height dd 8 ;+108
  274. .cursor_out  dd 0 ;+112
  275. .get_mouse_flag dd 0 ;+116
  276. ;-------------------------
  277.  
  278. TE_PANEL_NULL equ 0
  279. TE_PANEL_FIND equ 1
  280. TE_PANEL_SYNTAX equ 2
  281. TE_PANEL_WIDTH equ 150 ;øèðèíà ïàíåëè
  282.  
  283. count_of_dir_list_files equ 15
  284.  
  285. ;------------------------------------------------------------------------------
  286. struct TexSelect
  287.   x0 dd ?
  288.   y0 dd ?
  289.   x1 dd ?
  290.   y1 dd ?
  291. ends
  292. ;------------------------------------------------------------------------------
  293. ted_wnd_l equ dword[edi+ 0] ;®ª­® । ªâ®à : ®âáâ㯠᫥¢ 
  294. ted_wnd_t equ dword[edi+ 4] ;®ª­® । ªâ®à : ®âáâ㯠ᢥàåã
  295. ted_wnd_w equ dword[edi+ 8] ;®ª­® । ªâ®à : è¨à¨­ 
  296. ted_wnd_h equ dword[edi+12] ;®ª­® । ªâ®à : ¢ëá®â 
  297. ted_rec_l equ dword[edi+16] ;è¨à¨­  ¯ ­¥«¨ ¢ ®ª­¥
  298. ted_rec_t equ dword[edi+20] ;¢ëá®â  ¯ ­¥«¨ ¢ ®ª­¥
  299. ted_rec_w equ dword[edi+24] ;è¨à¨­  ᨬ¢®«  (§­ ª®¬¥áâ ) ¢ ®ª­¥
  300. ted_rec_h equ dword[edi+28] ;¢ëá®â  ᨬ¢®«  (§­ ª®¬¥áâ ) ¢ ®ª­¥
  301. ted_drag_m equ byte[edi+32] ;¢ë¤¥«¥­¨¥ ®â ¬ëè¨
  302. ted_drag_k equ byte[edi+33] ;¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
  303. ;------------------------------------------------------------------------------
  304. align 4
  305. tedit0: ;áâàãªâãà  â¥ªá⮢®£® । ªâ®à 
  306.         .wnd BOX 0,50,440,150 ;+ 0
  307.         .rec BOX 30,23,7,10   ;+16
  308.         .dragm db 0 ;+32 ¢ë¤¥«¥­¨¥ ®â ¬ëè¨
  309.         dragk db 0 ;+33 ¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
  310.         sel TexSelect 0,0,0,0 ;+34 áâàãªâãà  ¢ë¤¥«¥­¨ï
  311.         seln TexSelect ;+50 ¤®¯®«­¨â¥«ì­ ï áâàãªâãà  ¢ë¤¥«¥­¨ï
  312. ;------------------------------------------------------------------------------
  313.  
  314. el_focus dd 0
  315. mouse_dd dd 0
  316. tree1 tree_list 264,count_of_dir_list_files+2, tl_key_no_edit+tl_draw_par_line+tl_list_box_mode,\
  317.     16,16, 0x8080ff,0x0000ff,0xffffff, 0,70,TE_PANEL_WIDTH-17,120, 0,0,0, el_focus,\
  318.     ws_dir_lbox,0
  319.  
  320. ;dir_list memory
  321. tree_file_struct:
  322.   dd 1
  323.   dd 0,0,count_of_dir_list_files
  324.   dd dir_mem
  325.   db 0
  326.   dd file_name ;sys_path
  327.  
  328. dir_mem rb 32+304*count_of_dir_list_files
  329.  
  330.  
  331. if lang eq ru
  332.  
  333. menu_text_area:
  334. db '” ©«',0
  335. .1:
  336. db '‘®§¤ âì',0
  337. db 'Žâªàëâì',0
  338. db '‘®åà ­¨âì',0
  339. db '‚ë室',0
  340. .end:
  341. db 0
  342.  
  343. ;--------
  344. msgbox_1:
  345.   dw 0
  346.   db '‚­¨¬ ­¨¥',0 ;+2 = +MB_TEXT_OFFSET
  347.   db '” ©« ¡®«ì让, ¯®â®¬ã ®âªàëâ ­¥ ¢¥áì.',13
  348.   db '  1. à¨ ¥£® á®åà ­¥­¨¨ ¡ã¤ãâ ¯®â¥àï­ë "­¥ ®âªàë¢è¨¥áï" ᨬ¢®«ë.',13
  349.   db '  2. ‚ ¤®ªã¬¥­â ­¥«ì§ï ¤®¡ ¢«ïâì ⥪áâ, â. ª. ¯ ¬ïâì § ­ïâ .',0
  350.   db 'Ÿ ¯®­ï«( )',0 ;button1
  351.   db 0
  352. msgbox_2:
  353.   db 3,0
  354.   db '‚­¨¬ ­¨¥',0 ;+2 = +MB_TEXT_OFFSET
  355.   db '‘®åà ­¨âì ¨§¬¥­¥­¨ï ¢ ä ©«¥?',0
  356.   db '‘®åà ­¨âì',0
  357.   db '¥ á®åà ­ïâì',0
  358.   db 'Žâ¬¥­ ',0
  359.   db 0
  360. msgbox_2_funct:
  361.   dd On_SaveAndNewFile
  362.   dd On_NewFile
  363.   dd 0
  364.  
  365. msgbox_3:
  366.   db 1,0
  367.   db '‚­¨¬ ­¨¥',0 ;+2 = +MB_TEXT_OFFSET
  368.   db 'Žè¨¡ª  ¯à¨ ®âªàë⨨ ä ©«  á 梥⮢묨 ­ áâனª ¬¨!',13,\
  369.      '®â®¬ã ¢ë¤¥«¥­¨¥ á«®¢ 梥⮬ ­¥ ¢®§¬®¦­®.',13,\
  370.      '  (ª®¤ ®è¨¡ª¨ ='
  371.   .err: db '?'
  372.   db ')',0
  373.   db '‡ ªàëâì',0
  374.   db 0
  375.  
  376. msgbox_4:
  377.   db 1,0
  378.   db '‚­¨¬ ­¨¥',0 ;+2 = +MB_TEXT_OFFSET
  379.   db 'Žè¨¡ª  ¯à¨ ®âªàë⨨ ä ©« !',13,\
  380.      '‚®§¬®¦­® ¨¬ï ä ©«  ¢¢¥¤¥­® ­¥ ¯à ¢¨«ì­®.',13,\
  381.      '  (ª®¤ ®è¨¡ª¨ ='
  382.   .err: db '?'
  383.   db ')',0
  384.   db '‡ ªàëâì',0
  385.   db 0
  386.  
  387. msgbox_5:
  388.   db 3,0
  389.   db '‚­¨¬ ­¨¥',0 ;+2 = +MB_TEXT_OFFSET
  390.   db '‘®åà ­¨âì ¨§¬¥­¥­¨ï ¢ ä ©«¥?',0
  391.   db '¥ á®åà ­ïâì',0
  392.   db 'Žâ¬¥­ ',0
  393.   db 0
  394. msgbox_5_funct:
  395. ;  dd but_SaveFile
  396.   dd On_OpenFile
  397.   dd 0
  398.  
  399. msgbox_6:
  400.   db 1,0
  401.   db '‚­¨¬ ­¨¥',0 ;+2 = +MB_TEXT_OFFSET
  402.   db 'Žè¨¡ª  ¯à¨ á®åà ­¥­¨¨ ä ©« !',13,\
  403.      '‚®§¬®¦­® ¨¬ï ä ©«  ¢¢¥¤¥­® ­¥ ¯à ¢¨«ì­®.',13,\
  404.      '  (ª®¤ ®è¨¡ª¨ ='
  405.   .err: db '?'
  406.   db ')',0
  407.   db '‡ ªàëâì',0
  408.   db 0
  409. msgbox_7:
  410.   db 1,0
  411.   db '’¥ªáâ ­¥ ­ ©¤¥­',0 ;+2 = +MB_TEXT_OFFSET
  412.   db '„®á⨣­ãâ ª®­¥æ ¤®ªã¬¥­â .',13,\
  413.      '®¯à®¡ã©â¥ ¯¥à¥©â¨ ¢ ­ ç «® ¤®ªã¬¥­â ',13,\
  414.      '¨«¨ ¨§¬¥­¨âì § ¯à®á ¨ ¯®¢â®à¨âì ¯®¨áª.',0
  415.   db '‡ ªàëâì',0
  416.   db 0
  417. msgbox_8:
  418.   db 3,0
  419.   db '‚­¨¬ ­¨¥',0 ;+2 = +MB_TEXT_OFFSET
  420.   db '„«ï ¢ë室  § ¢¥àè¨â¥ à ¡®âã á ä ©«®¬.',13,\
  421.      '®¯à®¡ã©â¥ á®åà ­¨âì ¨§¬¥­¥­¨ï ¢ ä ©«¥',13,\
  422.      '¨«¨ ­ ç âì ­®¢ë© ¯ãá⮩.',0
  423.   db 'Žâ¬¥­ ',0
  424.   db 0
  425.  
  426. txtFindCapt db '®¨áª',0
  427. txtFindNext db ' ©â¨ ¤ «¥¥',0
  428. txtFormatCapt db '”®à¬ â',0
  429. txtFormatApply db 'à¨¬¥­¨âì',0
  430. txtRow db '‘âப ',0
  431. txtCol db '‡­ ª',0
  432. txtOtm db 'Žâ¬¥­ë',0
  433. txtBuf db 'ãä¥à: '
  434. buf db BUF_SIZE dup(0) ;buf âñåãäà ïîñëå txtBuf
  435.  
  436. else
  437.  
  438. menu_text_area:
  439. db 'File',0
  440. .1:
  441. db 'New',0
  442. db 'Open',0
  443. db 'Save',0
  444. db 'Exit',0
  445. .end:
  446. db 0
  447.  
  448. ;--------
  449. msgbox_1:
  450.   dw 0
  451.   db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
  452.   db 'File is large, because not all open.',13
  453.   db '  1. If you save it will lose "not opened" characters.',13
  454.   db '  2. The document can not add text, because the memory is busy.',0
  455.   db 'Ok',0 ;button1
  456.   db 0
  457. msgbox_2:
  458.   db 3,0
  459.   db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
  460.   db 'Save changes to the file?',0
  461.   db 'Save',0
  462.   db 'Discard',0
  463.   db 'Cancel',0
  464.   db 0
  465. msgbox_2_funct:
  466.   dd On_SaveAndNewFile
  467.   dd On_NewFile
  468.   dd 0
  469.  
  470. msgbox_3:
  471.   db 1,0
  472.   db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
  473.   db 'Error opening the file with the color settings!',13,\
  474.      'Because color selection of words is not possible.',13,\
  475.      '  (error code ='
  476.   .err: db '?'
  477.   db ')',0
  478.   db 'Close',0
  479.   db 0
  480.  
  481. msgbox_4:
  482.   db 1,0
  483.   db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
  484.   db 'Error opening file!',13,\
  485.      'Maybe the file name is not entered correctly.',13,\
  486.      '  (error code ='
  487.   .err: db '?'
  488.   db ')',0
  489.   db 'Close',0
  490.   db 0
  491.  
  492. msgbox_5:
  493.   db 3,0
  494.   db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
  495.   db 'Save changes to the file?',0
  496.   db 'Discard',0
  497.   db 'Cancel',0
  498.   db 0
  499. msgbox_5_funct:
  500. ;  dd but_SaveFile
  501.   dd On_OpenFile
  502.   dd 0
  503.  
  504. msgbox_6:
  505.   db 1,0
  506.   db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
  507.   db 'Error saving file!',13,\
  508.      'Maybe the file name is not entered correctly.',13,\
  509.      '  (error code ='
  510.   .err: db '?'
  511.   db ')',0
  512.   db 'Close',0
  513.   db 0
  514. msgbox_7:
  515.   db 1,0
  516.   db 'Text not found.',0 ;+2 = +MB_TEXT_OFFSET
  517.   db 'Reached end of the document.',13,\
  518.      'Try to go to the beginning of the document',13,\
  519.      'or change the query and search again.',0
  520.   db 'Close',0
  521.   db 0
  522. msgbox_8:
  523.   db 3,0
  524.   db 'Warning',0 ;+2 = +MB_TEXT_OFFSET
  525.   db 'To quit, quit the file.',13,\
  526.      'Try to keep changes to a file',13,\
  527.      'or start a new blank file.',0
  528.   db 'Cancel',0
  529.   db 0
  530.  
  531. txtFindCapt db 'Search',0
  532. txtFindNext db 'Find next',0
  533. txtFormatCapt db 'Format',0
  534. txtFormatApply db 'Apply',0
  535. txtRow db 'Rows',0
  536. txtCol db 'Cols',0
  537. txtOtm db 'Undo',0
  538. txtBuf db 'Buffer: '
  539. buf db BUF_SIZE dup(0) ;buf always after txtBuf
  540.  
  541. end if
  542. ;------
  543. align 4
  544. EvChar db 0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0
  545.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  546.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  547.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  548.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  549.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  550.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  551.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0
  552.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  553.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  554.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  555.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  556.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  557.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  558.     db 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
  559.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  560.  
  561. EvUpper db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  562.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  563.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  564.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  565.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  566.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  567.     db 0,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79
  568.     db 80,81,82,83,84,85,86,87,88,89,90,0,0,0,0,0
  569.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  570.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  571.     db 128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143
  572.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  573.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  574.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  575.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  576.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  577. EvLover db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  578.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  579.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  580.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  581.     db 0,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111
  582.     db 112,113,114,115,116,117,118,119,120,121,122,0,0,0,0,0
  583.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  584.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  585.     db 160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175
  586.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  587.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  588.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  589.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  590.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  591.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  592.     db 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  593. conv_table dd 0
  594.  
  595.  
  596. KM_SHIFT equ 0x00010000
  597. KM_CTRL equ 0x00020000
  598. KM_ALT equ 0x00040000
  599. KM_NUMLOCK equ 0x00080000
  600.  
  601. ; KEY CODES
  602. KEY_F1 equ 0x0000003B
  603. KEY_F2 equ 0x0000003C
  604. KEY_F3 equ 0x0000003D
  605.  
  606.