Subversion Repositories Kolibri OS

Rev

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

  1. ;§ £®«®¢®ª ¯à¨«®¦¥­¨ï
  2. use32                ; âà ­á«ïâ®à, ¨á¯®«ì§ãî騩 32 à §à來ëå ª®¬ ­¤ë
  3.     org 0x0                ; ¡ §®¢ë©  ¤à¥á ª®¤ , ¢á¥£¤  0x0
  4.     db 'MENUET01'        ; ¨¤¥­â¨ä¨ª â®à ¨á¯®«­ï¥¬®£® ä ©«  (8 ¡ ©â)
  5.     dd 0x1                ; ¢¥àá¨ï ä®à¬ â  § £®«®¢ª  ¨á¯®«­ï¥¬®£® ä ©« 
  6.     dd start                ;  ¤à¥á, ­  ª®â®àë© á¨á⥬  ¯¥à¥¤ ñâ ã¯à ¢«¥­¨¥
  7.                         ; ¯®á«¥ § £à㧪¨ ¯à¨«®¦¥­¨ï ¢ ¯ ¬ïâì
  8.     dd i_end                ; à §¬¥à ¯à¨«®¦¥­¨ï
  9.     dd mem                  ; Ž¡ê¥¬ ¨á¯®«ì§ã¥¬®© ¯ ¬ïâ¨, ¤«ï á⥪  ®â¢¥¤¥¬ 0å100 ¡ ©â ¨ ¢ë஢­¨¬ ­  £à­¨æã 4 ¡ ©â 
  10.     dd mem                  ; à á¯®«®¦¨¬ ¯®§¨æ¨î á⥪  ¢ ®¡« á⨠¯ ¬ïâ¨, áࠧ㠧  ⥫®¬ ¯à®£à ¬¬ë. ‚¥à設  á⥪  ¢ ¤¨ ¯ §®­¥ ¯ ¬ïâ¨, 㪠§ ­­®¬ ¢ëè¥
  11.     dd 0x0              ; 㪠§ â¥«ì ­  áâபã á ¯ à ¬¥âà ¬¨.
  12.     dd cur_dir_path
  13.  
  14.  
  15. include '../../../../../macros.inc'
  16. include '../../trunk/box_lib.mac'
  17. include '../../load_lib.mac'
  18.         @use_library    ;use load lib macros
  19. start:
  20. ;universal load library/librarys
  21. sys_load_library  library_name, cur_dir_path, library_path, system_path, \
  22. err_message_found_lib, head_f_l, myimport, err_message_import, head_f_i
  23. ;if return code =-1 then exit, else nornary work
  24.         cmp     eax,-1
  25.         jz      exit
  26.         mcall   40,0x27         ;ãáâ ­®¢¨âì ¬ áªã ¤«ï ®¦¨¤ ¥¬ëå ᮡë⨩
  27. red_win:
  28.     call draw_window            ;¯¥à¢®­ ç «ì­® ­¥®¡å®¤¨¬® ­ à¨á®¢ âì ®ª­®
  29. align 4
  30. still:                          ;®á­®¢­®© ®¡à ¡®â稪
  31.         mcall   10              ;Ž¦¨¤ âì ᮡëâ¨ï
  32.         dec  eax
  33.         jz   red_win
  34.         dec  eax
  35.         jz   key
  36.         dec  eax
  37.         jz   button
  38.  
  39.         push    dword edit1
  40.         call    [edit_box_mouse]
  41.  
  42.         push    dword edit2
  43.         call    [edit_box_mouse]
  44.  
  45.         push    dword check1
  46.         call    [check_box_mouse]
  47.  
  48.         push    dword check2
  49.         call    [check_box_mouse]
  50.  
  51.         push    dword Option_boxs
  52.         call    [option_box_mouse]
  53.  
  54.         push    dword Option_boxs2
  55.         call    [option_box_mouse]
  56.  
  57.         jmp still    ;¥á«¨ ­¨ç¥£® ¨§ ¯¥à¥ç¨á«¥­­®£® â® á­®¢  ¢ 横«
  58. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  59. button:
  60.         mcall   17      ;¯®«ãç¨âì ¨¤¥­â¨ä¨ª â®à ­ ¦ â®© ª« ¢¨è¨
  61.         test ah,ah      ;¥á«¨ ¢ ah 0, â® ¯¥à¥©â¨ ­  ®¡à ¡®â稪 ᮡë⨩ still
  62.         jz  still
  63. exit:   mcall   -1
  64. key:
  65.         mcall   2       ;§ £à㧨¬ §­ ç¥­¨¥ 2 ¢ ॣ¨áâ®à eax ¨ ¯®«ã稬 ª®¤ ­ ¦ â®© ª« ¢¨è¨
  66.  
  67.         push    dword edit1
  68.         call    [edit_box_key]
  69.  
  70.         push    dword edit2
  71.         call    [edit_box_key]
  72.  
  73.         jmp still
  74.  
  75. ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  76. align 4
  77. draw_window:            ;à¨á®¢ ­¨¥ ®ª­  ¯à¨«®¦¥­¨ï
  78.         mcall   12,1
  79.         mcall   0,(50*65536+390),(30*65536+200),0x33AABBCC,0x805080DD,hed
  80.  
  81.         push    dword edit1
  82.         call    [edit_box_draw]
  83.  
  84.         push    dword edit2
  85.         call    [edit_box_draw]
  86.  
  87.         push    dword check1
  88.         call    [check_box_draw]
  89.  
  90.         push    dword check2
  91.         call    [check_box_draw]
  92.  
  93.         push    dword Option_boxs
  94.         call    [option_box_draw]        
  95.  
  96.         push    dword Option_boxs2
  97.         call    [option_box_draw]
  98.  
  99.         mcall   12,2
  100.     ret
  101. ;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  102. ;DATA ¤ ­­ë¥
  103. ;‚ᥣ¤  ᮡ«î¤ âì ¯®á«¥¤®¢ â¥«ì­®áâì ¢ ¨¬¥­¨.
  104. system_path      db '/sys/lib/'
  105. library_name     db 'box_lib.obj',0
  106. ; …᫨ ¥áâì ¦¥« ­¨¥ ࠧꥤ¨­¨âì, â® ­ã¦­® ¨á¯®«ì§®¢ âì á«¥¤ãîé¨î ª®­áâàãªæ¨î
  107. ;system_path      db '/sys/lib/box_lib.obj',0
  108. ;... «î¡ ï ¯®á«¥¤®¢ â¥«ì­®áâì ¤àã£¨å ª®¬ ­¤ ¨ ®¯à¥¤¥«¥­¨©.
  109. ;library_name     db 'box_lib.obj',0
  110. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  111.  
  112. err_message_found_lib   db 'Sorry I cannot load library box_lib.obj',0
  113. head_f_i:
  114. head_f_l        db 'System error',0
  115. err_message_import      db 'Error on load import library box_lib.obj',0
  116.  
  117. myimport:  
  118.  
  119. edit_box_draw   dd      aEdit_box_draw
  120. edit_box_key    dd      aEdit_box_key
  121. edit_box_mouse  dd      aEdit_box_mouse
  122. version_ed      dd      aVersion_ed
  123.  
  124. check_box_draw  dd      aCheck_box_draw
  125. check_box_mouse dd      aCheck_box_mouse
  126. version_ch      dd      aVersion_ch
  127.  
  128. option_box_draw  dd      aOption_box_draw
  129. option_box_mouse dd      aOption_box_mouse
  130. version_op       dd      aVersion_op
  131.  
  132.                 dd      0
  133.                 dd      0
  134.  
  135. aEdit_box_draw  db 'edit_box',0
  136. aEdit_box_key   db 'edit_box_key',0
  137. aEdit_box_mouse db 'edit_box_mouse',0
  138. aVersion_ed     db 'version_ed',0
  139.  
  140. aCheck_box_draw  db 'check_box_draw',0
  141. aCheck_box_mouse db 'check_box_mouse',0
  142. aVersion_ch      db 'version_ch',0
  143.  
  144. aOption_box_draw  db 'option_box_draw',0
  145. aOption_box_mouse db 'option_box_mouse',0
  146. aVersion_op       db 'version_op',0
  147.  
  148.  
  149.  
  150.  
  151. check1 check_box 10,45,6,12,0x80AABBCC,0,0,check_text,14,ch_flag_en
  152. check2 check_box 10,60,6,12,0x80AABBCC,0,0,check_text2,15
  153.  
  154. edit1 edit_box 350,3,5,0xffffff,0x6f9480,0,0xAABBCC,0,308,hed,mouse_dd,ed_focus,hed_end-hed-1,hed_end-hed-1
  155. edit2 edit_box 350,3,25,0xffffff,0x6a9480,0,0,0,99,ed_buffer,mouse_dd,ed_figure_only
  156.  
  157. op1 option_box option_group1,10,90,6,12,0xffffff,0,0,op_text.1,op_text.e1-op_text.1
  158. op2 option_box option_group1,10,105,6,12,0xFFFFFF,0,0,op_text.2,op_text.e2-op_text.2
  159. op3 option_box option_group1,10,120,6,12,0xffffff,0,0,op_text.3,op_text.e3-op_text.3
  160. op11 option_box option_group2,120,90,6,12,0xffffff,0,0,op_text.1,op_text.e1-op_text.1
  161. op12 option_box option_group2,120,105,6,12,0xffffff,0,0,op_text.2,op_text.e2-op_text.2
  162. op13 option_box option_group2,120,120,6,12,0xffffff,0,0,op_text.3,op_text.e3-op_text.3
  163.  
  164. option_group1   dd op1  ;㪠§ â¥«¨, ®­¨ ®â®¡à ¦ îâáï ¯® 㬮«ç ­¨î, ª®£¤  ¢ë¢®¤¨âáï
  165. option_group2   dd op12 ;¯à¨«®¦¥­¨¥
  166. Option_boxs     dd  op1,op2,op3,0
  167. Option_boxs2    dd  op11,op12,op13,0
  168. hed db   'BOXs load from lib <Lrz> date 27.04.2009',0
  169. hed_end:
  170. rb  256
  171. check_text db 'First checkbox'
  172. check_text2 db 'Second checkbox'
  173. op_text:                ; ‘®¯à®¢®¦¤ î騩 ⥪áâ ¤«ï 祪 ¡®ªá®¢
  174. .1 db 'Option_Box #1'
  175. .e1:
  176. .2 db 'Option_Box #2'
  177. .e2:
  178. .3 db 'Option_Box #3'
  179. .e3:
  180. ed_buffer       rb 100
  181. ;-----------------------
  182. ;sc      system_colors
  183.  
  184. mouse_dd        rd 1
  185. p_info  process_information
  186. cur_dir_path    rb 4096
  187. library_path    rb 4096
  188. i_end:
  189. rb 1024
  190. mem: