Subversion Repositories Kolibri OS

Rev

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

  1. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  2. ;Basic macros for use EditBox                             ;
  3. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  4. ed_width        equ [edi]               ;è¨à¨­  ª®¬¯®­¥­â 
  5. ed_left         equ [edi+4]             ;¯®«®¦¥­¨¥ ¯® ®á¨ å
  6. ed_top          equ [edi+8]             ;¯®«®¦¥­¨¥ ¯® ®á¨ ã
  7. ed_color        equ [edi+12]            ;梥â ä®­  ª®¬¯®­¥­â 
  8. shift_color     equ [edi+16]            ;=0x6a9480 ¤«ï ¯à¨¬¥à  ¢®§ì¥¬ ¦¥«¥­ë© 梥⠡®ªá 
  9. ed_focus_border_color   equ [edi+20]    ;梥â à ¬ª¨ ª®¬¯®­¥­â 
  10. ed_blur_border_color    equ [edi+24]    ;梥⠭¥  ªâ¨¢­®£® ª®¬¯®­¥­â 
  11. ed_text_color   equ [edi+28]            ;梥â ⥪áâ 
  12. ed_max          equ [edi+32]                    ;ª®«-¢® ᨬ¢®«®¢ ª®â®àë¥ ¬®¦­® ¬ ªá¨¬ «ì­® ¢¢¥áâ¨
  13. ed_text         equ [edi+36]                    ;㪠§ â¥«ì ­  ¡ãä¥à
  14. ed_mouse_variable       equ [edi+40]    ; 㪠§ â¥«ì ­  ¯¥à¥¬¥­­ãî ¤«ï ¡®ªá /£à㯯ë
  15. ed_flags        equ [edi+44]            ;ä« £¨
  16. bp_flags        equ [ebp+44]            ;¢ ­¥ª®â®àëå ¯à®æ¥¤ãà å edi ¨á¯®«ì§ã¥âáï, ¢§ ¬¥­ 㪠§ â¥«ì åà ­¨âìáï ¢ ebp
  17. ed_size equ [edi+48]                    ;ª®«-¢® ᨬ¢®«®¢
  18. bp_size equ [ebp+48]                    ;ª®«-¢® ᨬ¢¯®«®¢, ¤«ï  ¤à¥á æ¨¨ ¨á¯«ì§ã¥âáï ebp¡ edi § ­ïâ
  19. ed_pos  equ [edi+52]                    ;¯®§¨æ¨ï ªãàá®à 
  20. ed_offset       equ [edi+56]            ;ᬥ饭¨¥
  21. cl_curs_x       equ [edi+60]            ;¯à¥¤ë¤ã饥 ª®®à¤¨­ â  ªãàá®à  ¯® å
  22. cl_curs_y       equ [edi+64]            ;¯à¥¤ë¤ã饥 ª®®à¤¨­ â  ªãàá®à  ¯® ã
  23. ed_shift_pos    equ [edi+68]            ;¯®«®¦¥­¨¥ ªãàá®à 
  24. ed_shift_pos_old equ [edi+72]           ;áâ à®¥ ¯®«®¦¥­¨¥ ªãàá®à 
  25.  
  26. ed_struc_size=76
  27.  
  28. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  29. ;Bit mask from editbox
  30. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  31. ed_figure_only= 1000000000000000b   ;®¤­¨ ᨬ¢®«ë
  32. ed_always_focus= 100000000000000b
  33. ed_focus=                     10b   ;䮪ãá ¯à¨«®¦¥­¨ï
  34. ed_pass=                       1b   ;¯®«¥ á ¯ à®«¥¬
  35. ed_shift_on=                1000b   ;¥á«¨ ­¥ ãáâ ­®¢«¥­ -§­ ç¨â ¢¯¥à¢ë¥ ­ ¦ â shift,¥á«¨ ¡ë« ãáâ ­®¢«¥­, §­ ç¨â ¬ë 㦥 çâ® - â® ¤¥« «¨ 㤥ন¢ ï shift
  36. ed_shift_on_off=1111111111110111b
  37. ed_shift=                    100b   ;¢ª«îç ¥âáï ¯à¨ ­ ¦ â¨¨ ­  shift â.¥. ¥á«¨ ­ ¦¨¬ î
  38. ed_shift_off=   1111111111111011b
  39. ed_shift_bac=              10000b   ;¡¨â ¤«ï ®ç¨á⪨ ¢ë¤¥«¥­®£® shift â.¥. ¯à¨ ãáâ ­®¢ª¥ £®¢®à¨â çâ® ¥áâì ¢ë¤¥«¥­¨¥
  40. ed_shift_bac_cl=1111111111101111b   ;®ç¨á⪠ ¯à¨ 㤠«¥­¨¨ ¢ë¤¥«¥­¨ï
  41. ed_shift_cl=    1111111111100011b
  42. ed_shift_mcl=   1111111111111011b
  43. ed_left_fl=               100000b
  44. ed_right_fl=    1111111111011111b
  45. ed_offset_fl=            1000000b
  46. ed_offset_cl=   1111111110111111b
  47. ed_insert=              10000000b
  48. ed_insert_cl=   1111111101111111b
  49. ed_mouse_on =          100000000b
  50. ed_mous_adn_b=         100011000b
  51. ed_mouse_on_off=1111111011111111b
  52. ed_ctrl_on =          1000000000b
  53. ed_ctrl_off =   1111110111111111b
  54. ed_alt_on =          10000000000b
  55. ed_alt_off =    1111101111111111b
  56. ed_height=14 ; ¢ëá®â 
  57.  
  58. struc  edit_box width,left,top,color,shift_color,focus_border_color,\
  59.        blur_border_color,text_color,max,text,mouse_variable,flags,size,pos
  60. {
  61. .width dd width
  62. .left  dd left
  63. .top   dd top
  64. .color dd color
  65. .shift_color dd shift_color
  66. .focus_border_color dd focus_border_color
  67. .blur_border_color  dd blur_border_color
  68. .text_color dd text_color
  69. .max  dd max
  70. .text dd text
  71. .mouse_variable dd mouse_variable
  72. .flags  dd flags+0
  73. .size   dd size+0
  74. .pos    dd pos+0
  75. .offset dd 0
  76. .cl_curs_x dd 0
  77. .cl_curs_y dd 0
  78. .shift     dd 0
  79. .shift_old dd 0
  80. }
  81.  
  82. macro edit_boxes_set_sys_color start,end,color_table
  83. {
  84.         mov     edi,start
  85.         mov     ecx,((end-start)/ed_struc_size)
  86.         mov     esi,color_table
  87. @@:
  88.         mov     eax,dword [esi+36] ;梥⠣à ä¨ª¨ ¢ ®ª­¥ (à §¤¥«¨â¥«ì­ë¥ «¨­¨¨ ¨ â.¯.)
  89.         mov     ebx,dword [esi+20] ;梥â à ¡®ç¥© ®¡« á⨠®ª­ 
  90.         push    dword eax
  91.         pop     dword ed_focus_border_color
  92.         shr     bh,1
  93.         shr     bl,1
  94.         shr     ah,1
  95.         shr     al,1
  96.         add     ah,bh
  97.         add     al,bl
  98.         ror     eax,16
  99.         ror     ebx,16
  100.         shr     bl,1
  101.         shr     al,1
  102.         add     al,bl
  103.         ror     eax,16
  104.         mov     dword ed_blur_border_color,eax
  105.         mov     dword shift_color,eax
  106.         push    dword [esi+32] ;梥â ⥪áâ  ¢ à ¡®ç¥© ®¡« á⨠®ª­ 
  107.         pop     dword ed_text_color
  108.         add     edi,ed_struc_size
  109.         loop    @b
  110. }
  111.  
  112.  
  113. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  114. ;Basic macros for use CheckBox                            ;
  115. ;Last change 17.01.2013                                   ;
  116. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  117. ch_text_margin equ [edi+8] ;=4 à ááâ®ï­¨¥ ®â ¯àאַ㣮«ì­¨ª  祪 ¡®ªá  ¤® ­ ¤¯¨á¨
  118. ch_color equ [edi+12]      ;梥⠢­ãâਠcheckbox
  119. ch_border_color equ [edi+16] ; or [edi+4] ;梥â à ¬ª¨ checkbox ¥¥ ¬®¦­® § ¤ âì á ¬®áâ®ï⥫쭮
  120. ch_text_color   equ [edi+20] ;[edi+4]  ;梥â ⥪áâ 
  121. ch_text_ptr     equ [edi+24] ;㪠§ â¥«ì ­  ­ ç «® ⥪á⮢®© áâப¨
  122. ch_flags equ [edi+28]      ;ä« £¨
  123.  
  124. ch_struc_size=36                ;à §¬¥à áâàãªâãàë
  125. ch_flag_en=10b                  ;ä« £ ãáâ ­®¢«¥­­®£® 祪 ¡®ªá .
  126. ch_flag_top=0x0                 ;ä« £ à á¯®«®¦¥­¨ï ⥪áâ  ¢¢¥àåã â.¥. 3-© ¡¨â
  127. ch_flag_middle=100b             ;ä« £ à á¯®«®¦¥­¨ï ⥪áâ  ¢ 業âॠâ.¥. 4-© ¡¨â.
  128. ch_flag_bottom=1000b            ;ä« £ à á¯®«®¦¥­¨ï ⥪áâ  ¢ ­¨§ã â.¥. ¯® 㬮«ç ­¨î ¯à¨­¨¬ ¥âáï §­ ç¥­¨¥ ¢­¨§ã â.¥. ®âáãá⢨¥ 3-£® ¨ 4-£® ¡¨â 
  129.  
  130. 2ch_left_s      equ [ebp]       ;ª®à¤¨­ â  ­ ç «  à¨á®¢ ­¨ï ¯® å
  131. 2ch_top_s       equ [ebp+4]     ;ª®®à¤¨­ â  ­ ç «  à¨á®¢ ­¨ï ¯® ã
  132. 2ch_text_margin equ [ebp+8]     ;=4 à ááâ®ï­¨¥ ®â ¯àאַ㣮«ì­¨ª  祪 ¡®ªá  ¤® ­ ¤¯¨á¨
  133. 2ch_color       equ [ebp+12]    ;梥⠢­ãâਠcheckbox
  134. 2ch_border_color        equ [ebp+16]    ; or [edi+4] ;梥â à ¬ª¨ checkbox ¥¥ ¬®¦­® § ¤ âì á ¬®áâ®ï⥫쭮
  135. 2ch_text_color  equ [ebp+20]    ;[edi+4]  ;梥â ⥪áâ 
  136. 2ch_text_ptr    equ [ebp+24]    ;㪠§ â¥«ì ­  ­ ç «® ⥪á⮢®© áâப¨
  137. 2ch_flags       equ [ebp+28]    ;ä« £¨
  138. 2ch_sz_str      equ [ebp+32]    ;¤«¨­­  áâப¨, ¢ëç¨á«ï¥âáï ¯à¨ ¨­¨æ¨ «¨§ æ¨¨ ª®¬¯®­¥­â 
  139.  
  140. struc check_box2 left_s,top_s,ch_text_margin,color,border_color,text_color,text,flags
  141. {                               ;áâàãªâãà  ¯ à ¬¥â஢ ¤«ï 祪 ¡®ªá 
  142. .left_s         dd left_s       ;+0 ¯®«®¦¥­¨¥ ¯® å dw + à §¬¥à dw
  143. .top_s          dd top_s        ;+4 ¯®«®¦¥­¨¥ ¯® ã dw + à §¬¥à dw
  144. .ch_text_margin dd ch_text_margin ;à ááâ®ï­¨¥ ®â ¯àאַ㣮«ì­¨ª  祪 ¡®ªá  ¤® ­ ¤¯¨á¨
  145. .color          dd color        ;梥⠢­ãâਠ祪¡®ªá 
  146. .border_color   dd border_color ;梥â à ¬ª¨
  147. .text_color     dd text_color   ;梥⠭ ¤¯¨á¨
  148. .text           dd text         ; ¤à¥á ¢ ª®¤¥ ¯à®£à ¬¬ë £¤¥ à á¯®«®¦¥­ ⥪áâ
  149. .flags          dd flags+0      ;ä« £¨
  150. .size_of_str    dd 0x0          ;¤«¨­­  áâப¨, ¢ëç¨á«ï¥âáï ¯à¨ ¨­¨æ¨ «¨§ æ¨¨ ª®¬¯®­¥­â 
  151. }
  152.  
  153. ;Œ ªà®á ¯à®¢¥àª¨ 饫窠 ¬ë誨 ­ ¤ £à㯯®© checkboxes.
  154. macro init_checkboxes2 start,end_cb
  155. {
  156. if start+ch_struc_size eq end_cb
  157.         ;ª®£¤  ®¤¨­ í«¥¬¥­â
  158.         push    start                   ;㪠§ â¥«ì ­  checkbox
  159.         call    [init_checkbox] ;­ áâனª  checkbox' 
  160. else
  161.         ;ª®£¤  ­¥áª®«ìª® í«¥¬¥­â®¢
  162.         mov     ebp,start
  163.         mov     ecx,((end_cb-start)/ch_struc_size)
  164. @@:
  165.         push    ebp                     ;㪠§ â¥«ì ­  ¯¥à¢ë© checkbox
  166.         call    [init_checkbox] ;­ áâனª  checkbox'®¢
  167.         add     ebp,ch_struc_size
  168.         loop    @b
  169. end if
  170. }
  171.  
  172. ;Œ ªà®á ¯à®¢¥àª¨ ¬ë誨 £à㯯ë checkboxes.
  173. macro checkboxes_mouse2 start,end_cb
  174. {
  175. if start+ch_struc_size eq end_cb
  176.         ;ª®£¤  ®¤¨­ í«¥¬¥­â
  177.         push    start                   ;㪠§ â¥«ì ­  checkbox
  178.         call    [check_box_mouse]       ;¬ ªà®á ¯à®¢¥àª¨ ¬ë誨 ­ ¤ checkbox'®¬
  179. else
  180.         ;ª®£¤  ­¥áª®«ìª® í«¥¬¥­â®¢
  181.         mov     ebp,start
  182.         mov     ecx,((end_cb-start)/ch_struc_size)
  183. @@:
  184.         push    ebp                     ;㪠§ â¥«ì ­  ¯¥à¢ë© checkbox
  185.         call    [check_box_mouse]       ;¬ ªà®á ¯à®¢¥àª¨ ¬ë誨 ­ ¤ checkbox' ¬¨
  186.         add     ebp,ch_struc_size
  187.         loop    @b
  188. end if
  189. }
  190.  
  191. ;Œ ªà®á ®âà¨á®¢ª¨ £à㯯ë checkboxes.
  192. macro checkboxes_draw2 start,end_cb
  193. {
  194. if start+ch_struc_size eq end_cb
  195.         ;ª®£¤  ®¤¨­ í«¥¬¥­â
  196.         push    start                   ;㪠§ â¥«ì ­  checkbox
  197.         call    [check_box_draw]        ;­ à¨á®¢ âì checkbox
  198. else
  199.         ;ª®£¤  ­¥áª®«ìª® í«¥¬¥­â®¢
  200.         mov     ebp,start
  201.         mov     ecx,((end_cb-start)/ch_struc_size)
  202. @@:
  203.         push    ebp                     ;㪠§ â¥«ì ­  ¯¥à¢ë© checkbox
  204.         call    [check_box_draw]        ;­ à¨á®¢ âì checkbox'ë
  205.         add     ebp,ch_struc_size
  206.         loop    @b
  207. end if
  208. }
  209.  
  210. macro check_boxes_set_sys_color2 start,end,color_table
  211. {
  212.         mov     ebp,start
  213.         mov     ecx,((end-start)/ch_struc_size)
  214.         mov     esi,color_table
  215. @@:
  216.         push    dword [esi+32]          ;梥â ⥪áâ  ¢ à ¡®ç¥© ®¡« á⨠®ª­ 
  217.         or      dword [esp],0x80000000  ;­¥®¡å®¤¨¬® ¤«ï ¢ë¢®¤  ASCIIZ áâப
  218.         pop     dword 2ch_text_color
  219.         push    dword [esi+36]          ;梥⠣à ä¨ª¨ ¢ ®ª­¥ (à §¤¥«¨â¥«ì­ë¥ «¨­¨¨ ¨ â.¯.)
  220.         pop     dword 2ch_border_color
  221.         add     ebp,ch_struc_size
  222.         loop    @b
  223. }
  224.  
  225.  
  226.  
  227.  
  228.  
  229. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  230. ;Basic macros for use OptionBox                           ;
  231. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  232.  
  233. struc option_box point_gr,left,top,op_text_margin,op_size,color,border_color,text_color,text,op_text_length,flags
  234. {        ;áâàãªâãà  ¯ à ¬¥â஢ ¤«ï 祪 ¡®ªá 
  235. op_flag_en=10b
  236. .option_group   dd point_gr
  237. .left           dw left                 ;+0 ;¯®«®¦¥­¨¥ ¯® å
  238. .top            dw top                  ;¯®«®¦¥­¨¥ ¯® ã
  239. .ch_text_margin dd op_text_margin       ;à ááâ®ï­¨¥ ®â ¯àאַ㣮«ì­¨ª  祪 ¡®ªá  ¤® ­ ¤¯¨á¨
  240. .ch_size        dd op_size              ;à §¬¥à ª¢ ¤à â  祪 ¡®ªá , ¤«ï ¯à¨¬¥à  12
  241. .color          dd color                ;梥⠢­ãâਠ祪¡®ªá 
  242. .border_color   dd border_color         ;梥â à ¬ª¨
  243. .text_color     dd text_color           ;梥⠭ ¤¯¨á¨
  244. .text           dd text                 ; ¤à¥á ¢ ª®¤¥ ¯à®£à ¬¬ë £¤¥ à á¯®«®¦¥­ ⥪áâ
  245. .ch_text_length dd op_text_length       ;¤«¨­­  áâப¨ á ᨬ¢®« ¬¨
  246. .flags          dd flags+0              ; ä« £¨
  247. }
  248.  
  249. ;op_struc_size equ
  250. option_group equ [edi]
  251. op_left equ [edi+4]    ;ª®®à¤¨­ â  ­ ç «  à¨á®¢ ­¨ï ¯® å
  252. op_top equ [edi+6]     ;ª®®à¤¨­ â  ­ ç «  à¨á®¢ ­¨ï ¯® ã
  253. op_text_margin equ [edi+8]      ;=4 à ááâ®ï­¨¥ ®â ¯àאַ㣮«ì­¨ª  祪 ¡®ªá  ¤® ­ ¤¯¨á¨
  254. op_size equ [edi+12]             ;12 à §¬¥à ª¢ ¤à â  祪 ¡®ªá 
  255. op_color equ [edi+16]
  256. op_border_color equ [edi+20] ; or [edi+4] ;梥â à ¬ª¨ optionbox ¥¥ ¬®¦­® § ¤ âì á ¬®áâ®ï⥫쭮
  257. op_text_color equ   [edi+24];[edi+4]  ;梥â ⥪áâ 
  258. op_text_ptr equ [edi+28]    ;㪠§ â¥«ì ­  ­ ç «® ⥪á⮢®© áâப¨
  259. op_text_length equ [edi+32]
  260. op_flags equ [edi+36]       ;ä« £¨
  261.  
  262. macro option_boxes_set_sys_color color_table,group
  263. {
  264.         mov     ecx,group
  265.         mov     esi,color_table
  266.         mov     edi,[ecx]
  267.         mov     eax,[esi+24] ;梥⠪­®¯ª¨ ¢ à ¡®ç¥© ®¡« á⨠®ª­ 
  268.         mov     ebx,[esi+28] ;梥â ⥪áâ  ­  ª­®¯ª¥
  269. @@:
  270.         mov     op_border_color,eax
  271.         mov     op_color,ebx
  272.         push    dword [esi+32] ;梥â ⥪áâ  ¢ à ¡®ç¥© ®¡« á⨠®ª­ 
  273.         pop     dword op_text_color
  274.         add     ecx,4
  275.         mov     edi,[ecx]
  276.         cmp     edi,0
  277.         jne     @b
  278. }
  279. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  280. ;Basic macros for use TreeList                            ;
  281. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  282.  
  283. struc tree_list info_size,info_max_count,style, img_cx,img_cy,\
  284.     col_bkg,col_zag,col_txt, box_l,box_t,box_w,box_h, capt_cy,info_capt_offs,\
  285.     info_capt_len,el_focus, p_scrol,on_press {
  286.   .data_info    dd 0
  287.   .info_size    dw info_size
  288.   .info_max_count dd info_max_count
  289.   .style            dd style
  290.   .data_nodes   dd 0
  291.   .data_img      dd 0
  292.   .img_cx          dw img_cx
  293.   .img_cy          dw img_cy
  294.   .data_img_sys  dd 0
  295.   .ch_tim                 dd 0
  296.   .ls_tim                 dd 0
  297.   .tim_undo      dd 0
  298.   .cur_pos        dd 0
  299.   .col_bkg        dd col_bkg
  300.   .col_zag        dd col_zag
  301.   .col_txt        dd col_txt
  302.   .box_left   dd box_l
  303.   .box_top    dd box_t
  304.   .box_width  dd box_w
  305.   .box_height dd box_h
  306.   .capt_cy         dw capt_cy
  307.   .info_capt_offs dw info_capt_offs
  308.   .info_capt_len dw info_capt_len
  309.   .el_focus dd el_focus
  310.   .p_scrol  dd p_scrol
  311.   rb 4
  312.   .on_activate dd 0
  313.   .on_press dd on_press
  314. }
  315.  
  316. tl_info_size  equ  word[edi +4] ;à §¬¥à ¤ ­­ëå ¢ë¤¥«ï¥¬ëå ¤«ï ª ¦¤®£® 㧫  (¯®«ì§®¢ â¥«ìá쪨¥ ¤ ­­ë¥ + ⥪áâ ¤«ï ¯®¤¯¨á¨)
  317. tl_info_max_count equ dword[edi+6] ;¬ ªá¨¬ «ì­®¥ ª®«¨ç¥á⢮ 㧫®¢, ª®â®àë¥ ¬®¦­® ¤®¡ ¢¨âì ¢ í«¥¬¥­â
  318. tl_style      equ dword[edi+10] ;á⨫¨ í«¥¬¥­â 
  319. tl_data_nodes equ dword[edi+14] ;㪠§ â¥«ì ­  áâàãªâãàë 㧫®¢
  320. tl_data_img   equ dword[edi+18] ;㪠§ â¥«ì ­  ¨§®¡à ¦¥­¨ï á ¨ª®­ª ¬¨ 㧫®¢
  321. tl_img_cx     equ  word[edi+22] ;è¨à¨­  ¨ª®­®ª
  322. tl_img_cy     equ  word[edi+24] ;¢ëá®â  ¨ª®­®ª
  323. tl_data_img_sys equ dword[edi+26] ;㪠§ â¥«ì ­  á¨á⥬­ë¥ ¨§®¡à ¦¥­¨ï (áâ५ª¨, ¯«îᨪ¨)
  324. tl_ch_tim     equ dword[edi+30] ;ª®«¨ç¥á⢮ ¨§¬¥­¥­¨© ¢ ä ©«¥
  325. tl_tim_undo   equ dword[edi+38] ;ª®«¨ç¥á⢮ ®â¬¥­¥­­ëå ¤¥©á⢨©
  326. tl_cur_pos    equ dword[edi+42] ;¯®§¨æ¨ï ªãàá®à 
  327. tl_col_bkg    equ dword[edi+46] ;梥â ä®­ 
  328. tl_col_zag    equ dword[edi+50] ;梥⠧ £®«®¢ª 
  329. tl_col_txt    equ dword[edi+54] ;梥â ⥪áâ 
  330. tl_box_left   equ dword[edi+58]
  331. tl_box_top    equ dword[edi+62]
  332. tl_box_width  equ dword[edi+66]
  333. tl_box_height equ dword[edi+70]
  334. tl_capt_cy    equ  word[edi+74] ;¢ëá®â  ¯®¤¯¨á¨
  335. tl_info_capt_offs equ word[edi+76] ;ᤢ¨£ ¤«ï ­ ç «  ⥪áâ  (¯®¤¯¨á¨ 㧫 )
  336. tl_info_capt_len equ word[edi+78] ;¤«¨­­  ⥪áâ  ¯®¤¯¨á¨ 㧫  (¥á«¨ = 0 â® ¤® ª®­æ  áâàãªâãàë)
  337. tl_el_focus   equ dword[edi+80] ;㪠§ â¥«ì ­  áâàãªâãàã í«¥¬¥­â  ¢ 䮪ãá¥
  338. tl_p_scrol    equ dword[edi+84] ;㪠§ â¥«ì ­  áâàãªâãàã áªà®««¨­£ 
  339. tl_on_press   equ dword[edi+96] ;㪠§ â¥«ì ­  äã­ªæ¨î, ª®â®à ï ¢ë§ë¢ ¥âáï ¯à¨ ­ ¦ â¨¨ Enter
  340.  
  341. ;data_info       dd ? ;+ 0 㪠§ â¥«ì ­  ®á­®¢­ë¥ ¤ ­ë¥
  342. ;ls_tim         dd ? ;+34 ¢à¥¬ï ¯®á«¥¤­¥£® á®åà ­¥­¨ï
  343. ;on_activate dd ? ;+92 㪠§ â¥«ì ­  äã­ªæ¨î ¯à¨  ªâ¨¢¨à®¢ ­¨¨ 㧫 
  344.  
  345. ;ª®­áâ ­âë á⨫ï
  346. tl_key_no_edit   equ   1b ;í«¥¬¥­â ­¥«ì§ï । ªâ¨à®¢ âì ­  ª« ¢¨ âãॠ(¨§¬¥­ïâì ã஢­¨, 㤠«ïâì)
  347. tl_draw_par_line equ  10b ;à¨á®¢ âì «¨­¨¨ ª த¨â¥«ì᪮¬ã 㧫ã
  348. tl_list_box_mode equ 100b ;áâ¨«ì ­¥ ®â®¡à ¦ ¥â ã஢­¨ (ª ª ¢ ListBox ¢á¥ ®¤­®£® ã஢­ï)
  349.  
  350. ;ª®­áâ ­âë ¤«ï ä㭪権
  351. tl_err_save_memory_size equ  10b ;­¥ 墠⠥⠯ ¬ï⨠¤«ï á®åà ­¥­¨ï í«¥¬¥­â 
  352. tl_err_load_caption     equ   1b ;¢ ¯ ¬ï⨠­¥â § £®«®¢ª  'tree'
  353. tl_err_load_info_size   equ 100b ;­¥ ᮢ¯ ¤ ¥â à §¬¥à ¨­ä®à¬ æ¨®­­®© áâàãªâãàë ¯à¨ ®âªàë⨨
  354. tl_load_mode_add        equ 0x20000 ;®¯æ¨ï áç¨â뢠­¨ï ¢ ०¨¬¥ ¤®¡ ¢«¥­¨ï ¨­ä®à¬ æ¨¨
  355. tl_save_load_heder_size equ 26 ;à §¬¥à § £®«®¢ª  ¤«ï § ¯¨á¨/ç⥭¨ï í«¥¬¥­â®¢
  356. tl_offs_box equ 58 ;­ ç «® BOX áâàãªâãàë ¤«ï tree_list
  357.  
  358. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  359. ;Basic macros for use TextEditor                          ;
  360. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  361.  
  362. ted_wnd_l equ dword[edi+ 0] ;®ª­® । ªâ®à : ®âáâ㯠᫥¢ 
  363. ted_wnd_t equ dword[edi+ 4] ;®ª­® । ªâ®à : ®âáâ㯠ᢥàåã
  364. ted_wnd_w equ dword[edi+ 8] ;®ª­® । ªâ®à : è¨à¨­ 
  365. ted_wnd_h equ dword[edi+12] ;®ª­® । ªâ®à : ¢ëá®â 
  366. ted_rec_l equ dword[edi+16] ;è¨à¨­  ¯ ­¥«¨ ¢ ®ª­¥
  367. ted_rec_t equ dword[edi+20] ;¢ëá®â  ¯ ­¥«¨ ¢ ®ª­¥
  368. ted_rec_w equ dword[edi+24] ;è¨à¨­  ᨬ¢®«  (§­ ª®¬¥áâ ) ¢ ®ª­¥
  369. ted_rec_h equ dword[edi+28] ;¢ëá®â  ᨬ¢®«  (§­ ª®¬¥áâ ) ¢ ®ª­¥
  370. ted_drag_m equ byte[edi+32] ;¢ë¤¥«¥­¨¥ ®â ¬ëè¨
  371. ted_drag_k equ byte[edi+33] ;¢ë¤¥«¥­¨¥ ®â ª« ¢¨ âãàë
  372. ted_sel_x0 equ dword[edi+34] ;ª®®à¤¨­ â  ¢ë¤¥«¥­¨ï x0
  373. ted_sel_y0 equ dword[edi+38] ;ª®®à¤¨­ â  ¢ë¤¥«¥­¨ï y0
  374. ted_sel_x1 equ dword[edi+42] ;ª®®à¤¨­ â  ¢ë¤¥«¥­¨ï x1
  375. ted_sel_y1 equ dword[edi+46] ;ª®®à¤¨­ â  ¢ë¤¥«¥­¨ï y1
  376. ;§ ¯ á­ë¥ ª®®à¤¨­ âë ¢ë¤¥«¥­¨ï
  377. ted_seln_x0 equ dword[edi+50]
  378. ted_seln_y0 equ dword[edi+54]
  379. ted_seln_x1 equ dword[edi+58]
  380. ted_seln_y1 equ dword[edi+62]
  381.  
  382. ted_tex     equ dword[edi+66] ;㪠§ â¥«ì ­  ¯ ¬ïâì ¤«ï åà ­¥­¨ï ⥪áâ 
  383. ted_tex_1   equ dword[edi+70] ;㪠§ â¥«ì ­  1-î áâàªãâàã ᨬ¢®« 
  384. ted_tex_end equ dword[edi+74] ;㪠§ â¥«ì ­  ¯®á«¥¤­îî áâàãªâãàã ᨬ¢®« 
  385. ted_cur_x   equ dword[edi+78] ;ª®®à¤¨­ â  x ªãàá®à 
  386. ted_cur_y   equ dword[edi+82] ;ª®®à¤¨­ â  y ªãàá®à 
  387. ted_max_chars equ dword[edi+86] ;¬ ªá¨¬ «ì­®¥ ç¨á«® ᨬ¢®«®¢ ¢ ®¤­®¬ ¤®ªã¬¥­â¥
  388. ted_colors_text_count equ dword[edi+90] ;ª®««¨ç¥á⢮ 梥⮢ ⥪áâ 
  389. ted_key_words_count   equ dword[edi+94] ;ª®««¨ç¥á⢮ ª«î祢ëå á«®¢
  390. ted_color_cursor   equ dword[edi+98] ;梥⠪ãàá®à 
  391. ted_color_wnd_capt equ dword[edi+102] ;梥⠯®«¥© ¢®ªà㣠®ª­ 
  392. ted_color_wnd_work equ dword[edi+106] ;梥â ä®­  ®ª­ 
  393. ted_color_wnd_bord equ dword[edi+110] ;梥â ⥪áâ  ­  ¯®«ïå
  394. ted_color_select   equ dword[edi+114] ;梥⠢뤥«¥­¨ï
  395. ted_color_cur_text equ dword[edi+118] ;梥â ᨬ¢®«  ¯®¤ ªãàá®à®¬
  396. ted_color_wnd_text equ dword[edi+122] ;梥â ⥪áâ  ¢ ®ª­¥
  397. ted_syntax_file    equ dword[edi+126] ;㪠§ â¥«ì ­  ­ ç «® ä ©«  ᨭ⠪á¨á 
  398. ted_syntax_file_size equ dword[edi+130] ;¬ ªá¨¬ «ì­ë© à §¬¥à ä ©«  ᨭ⠪á¨á 
  399. ted_text_colors     equ dword[edi+134] ;㪠§ â¥«ì ­  ¬ áᨢ 梥⮢ ⥪áâ 
  400. ted_help_text_f1    equ dword[edi+138] ;㪠§ â¥«ì ­  ⥪áâ á¯à ¢ª¨ (¯® ­ ¦ â¨¨ F1)
  401. ted_help_id         equ dword[edi+142] ;¨¤¥­â¨ä¨ª â®à ¤«ï á¯à ¢ª¨
  402. ted_key_words_data  equ dword[edi+146] ;㪠§ â¥«ì ­  áâàãªâãàë ª«î祢ëå á«®¢ TexColViv
  403. ted_tim_ch          equ dword[edi+150] ;ª®««¨ç¥á⢮ ¨§¬¥­¥­¨© ¢ ä ©«¥
  404. ted_tim_undo        equ dword[edi+154] ;ª®««¨ç¥á⢮ ®â¬¥­¥­­ëå ¤¥©á⢨©
  405. ted_tim_ls          equ dword[edi+158] ;¢à¥¬ï ¯®á«¥¤­¥£® á®åà ­¥­¨ï
  406. ted_tim_co          equ dword[edi+162] ;¢à¥¬ï ¯®á«¥¤­¥© 梥⮢®© à §¬¥âª¨
  407. ted_el_focus        equ dword[edi+166] ;㪠§ â¥«ì ­  ¯¥à¥¬¥­­ãî í«¥¬¥­â  ¢ 䮪ãá¥
  408. ted_err_save        equ  byte[edi+170] ;®è¨¡ª  á®åà ­¥­¨ï ä ©« 
  409. ted_panel_id        equ  byte[edi+171] ;­®¬¥à ®âªàë⮩ ¯ ­¥«¨
  410. ted_key_new         equ  byte[edi+172] ;ᨬ¢®«, ª®â®àë© ¡ã¤¥â ¤®¡ ¢«ïâáï á ª« ¢¨ âãàë
  411. ted_symbol_new_line equ  byte[edi+173] ;ᨬ¢®« § ¢¥à襭¨ï áâப¨
  412. ted_scr_w           equ dword[edi+174] ;¢¥à⨪ «ì­ë© áªà®««¨­£
  413. ted_scr_h           equ dword[edi+178] ;£®à¨§®­â «ì­ë© áªà®««¨­£
  414. ted_arr_key_pos     equ dword[edi+182] ;㪠§ â¥«ì ­  ¬ áᨢ ¯®§¨æ¨© ª«î祢ëå á«®¢
  415. ted_buffer          equ dword[edi+186] ;㪠§ â¥«ì ­  ¡ãä¥à ª®¯¨à®¢ ­¨ï/¢áâ ¢ª¨
  416. ted_buffer_find     equ dword[edi+190] ;㪠§ â¥«ì ­  ¡ãä¥à ¤«ï ¯®¨áª 
  417. ted_cur_ins         equ  byte[edi+194] ;०¨¬ à ¡®âë ªãàá®à  (®¡ëç­ë© ¨«¨ § ¬¥­ )
  418. ted_mode_color      equ  byte[edi+195] ;०¨¬ ¢ë¤¥«¥­¨ï á«®¢ 梥⮬ (0-¢ëª«. 1-¢ª«.)
  419. ted_mode_invis      equ  byte[edi+196] ;०¨¬ ¯®ª §  ­¥¯¥ç â ¥¬ëå ᨬ¢®«®¢
  420. ted_gp_opt          equ  byte[edi+197] ;®¯æ¨¨ ¢®§¢à é ¥¬ë¥ ä㭪樥© ted_get_pos_by_cursor
  421. ted_fun_on_key_ctrl_o equ dword[edi+198] ;㪠§ â¥«ì ­  äã­ªæ¨î ¢ë§ë¢ ¥¬ãî ¯à¨ ­ ¦ â¨¨ Ctrl+O (®âªàë⨥ ä ©« )
  422. ted_fun_on_key_ctrl_f equ dword[edi+202] ;... Ctrl+F (¢ë§®¢ /áªàëâ¨ï ¯ ­¥«¨ ¯®¨áª )
  423. ted_fun_on_key_ctrl_n equ dword[edi+206] ;... Ctrl+N (ᮧ¤ ­¨¥ ­®¢®£® ¤®ªã¬¥­â )
  424. ted_fun_on_key_ctrl_s equ dword[edi+210] ;... Ctrl+S
  425. ted_buffer_size       equ dword[edi+214] ;à §¬¥à ¡ãä¥à  ª®¯¨à®¢ ­¨ï/¢áâ ¢ª¨
  426. ted_fun_find_err      equ dword[edi+218] ;㪠§ â¥«ì ­  äã­ªæ¨î ¢ë§ë¢ ¥¬ãî ¥á«¨ ¯®¨áª § ª®­ç¨«áï ­¥ã¤ ç­®
  427. ;ted_fun_init_synt_err equ dword[edi+222] ;㪠§ â¥«ì ­  äã­ªæ¨î ¢ë§ë¢ ¥¬ãî ¯à¨ ®è¨¡®ç­®¬ ®âªàë⨨ ä ©«  ᨭ⠪á¨á 
  428. ted_fun_draw_panel_buttons equ dword[edi+226] ;㪠§ â¥«ì ­  äã­ªæ¨î à¨á®¢ ­¨ï ¯ ­¥«¨ á ª­®¯ª ¬¨
  429. ted_fun_draw_panel_find    equ dword[edi+230] ;㪠§ â¥«ì ­  äã­ªæ¨î à¨á®¢ ­¨ï ¯ ­¥«¨ ¯®¨áª 
  430. ted_fun_draw_panel_syntax  equ dword[edi+234] ;㪠§ â¥«ì ­  äã­ªæ¨î à¨á®¢ ­¨ï ¯ ­¥«¨ ᨭ⠪á¨á 
  431. ted_fun_save_err      equ dword[edi+238] ;㪠§ â¥«ì ­  äã­ªæ¨î ¢ë§ë¢ ¥¬ãî ¥á«¨ á®åà ­¥­¨¥ ä ©«  § ª®­ç¨«®áì ­¥ã¤ ç­®
  432. ted_increase_size     equ dword[edi+242] ;ç¨á«® ᨬ¢®«®¢ ­  ª®â®àë¥ ¡ã¤¥â 㢥稢 âìáï ¯ ¬ïâì ¯à¨ ­¥å¢ âª¥
  433. ted_ptr_free_symb     equ dword[edi+246] ;㪠§ â¥«ì ­  ᢮¡®¤­ãî ¯ ¬ïâì, ¢ ª®â®àãî ¬®¦­® ¤®¡ ¢«ïâì ᨬ¢®« (¨á¯®«ì§ã¥âáï ¢­ãâà¨ í«¥¬¥­â  ¤«ï ã᪮७¨ï ¢áâ ¢ª¨ ⥪áâ )
  434. ;------------------------------------------------------------------------------
  435. ted_opt_ed_move_cursor equ 1 ;¤¢¨£ âì ªãàá®à ¯®á«¥ ¤®¡ ¢«¥­¨ï ⥪áâ 
  436. ted_opt_ed_change_time equ 2 ;¤®¡ ¢«ïâì ¨§¬¥­¥­¨ï ¯à¨ । ªâ¨à®¢ ­¨¨ ⥪áâ 
  437. ted_offs_sel  equ 34 ;ᬥ饭¨¥ áâàãªâãàë sel
  438. ted_offs_seln equ 50 ;ᬥ饭¨¥ áâàãªâãàë seln
  439. ted_offs_count_colors equ 90 ;ᬥ饭¨¥ ¯¥à¥¬¥­­®© ª®««¨ç¥á⢠ 梥⮢
  440. ted_offs_key_new equ 172
  441. ted_offs_symbol_new_line equ 173 ;ᬥ饭¨¥ ᨬ¢®«  ­®¢®© áâப¨
  442. ;------------------------------------------------------------------------------
  443.  
  444.  
  445.  
  446. ; *** scroll bar constant ***
  447. sb_offs_size_x   equ  0
  448. sb_offs_start_x  equ  2
  449. sb_offs_size_y   equ  4
  450. sb_offs_start_y  equ  6
  451. sb_offs_max_area equ 16
  452. sb_offs_cur_area equ 20
  453. sb_offs_position equ 24
  454. sb_offs_bckg_col equ 28
  455. sb_offs_frnt_col equ 32
  456. sb_offs_line_col equ 36
  457. sb_offs_redraw   equ 40
  458. sb_offs_delta2   equ 46
  459. sb_offs_all_redraw equ 80
  460. ;------------------------------------------------------------------------------
  461.  
  462.  
  463. struc scrollbar xsize, xpos, ysize, ypos, btn_height, max, cur, pos, bgcol, frcol, linecol, ar_offset
  464. {
  465. .x_size         dw xsize
  466. .x_pos          dw xpos
  467. .y_size         dw ysize
  468. .y_pos          dw ypos
  469. .btn_height     dd btn_height
  470. .type           dd ?
  471. .max_area       dd max
  472. .cur_area       dd cur
  473. .position       dd pos
  474. .bg_color       dd bgcol
  475. .front_color    dd frcol
  476. .line_color     dd linecol
  477. .redraw         dd ?
  478. .delta          dw ?
  479. .delta2         dw ?
  480. .r_size_x       dw ?
  481. .r_start_x      dw ?
  482. .r_size_y       dw ?
  483. .r_start_y      dw ?
  484. .m_pos          dd ?
  485. .m_pos_2        dd ?
  486. .m_keys         dd ?
  487. .run_size       dd ?
  488. .position2      dd ?
  489. .work_size      dd ?
  490. .all_redraw     dd ?
  491. .ar_offset      dd ar_offset
  492. }
  493.  
  494. ; *** ProgressBar  constants *** ;
  495. PB_VALUE          equ +0
  496. PB_LEFT           equ +4
  497. PB_TOP            equ +8
  498. PB_WIDTH          equ +12
  499. PB_HEIGHT         equ +16
  500. PB_STYLE          equ +20
  501. PB_MIN            equ +24
  502. PB_MAX            equ +28
  503. PB_BACK_COLOR     equ +32
  504. PB_PROGRESS_COLOR equ +36
  505. PB_FRAME_COLOR    equ +40