Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. ; Copyright (C) KolibriOS team 2004-2010. All rights reserved.
  2. ; Refer to the GNU General Public license (the "GPL") for full details.
  3. ;
  4. ;*****************************************************************************
  5. ; Box_Lib - library of graphical components
  6. ;
  7. ; Authors:
  8. ; Alexey Teplov aka <Lrz>
  9. ; Marat Zakiyanov aka Mario79, aka Mario
  10. ; Evtikhov Maxim aka Maxxxx32
  11. ; Eugene Grechnikov aka Diamond
  12. ; hidnplayr
  13. ; Igor Afanasiev aka IgorA
  14. ;*****************************************************************************
  15.  
  16. format MS COFF
  17.  
  18. public EXPORTS
  19.  
  20. section '.flat' code readable align 16
  21. include '../../../../macros.inc'
  22. include '../../../../proc32.inc'
  23. include 'bl_sys.mac'
  24. include 'box_lib.mac' ;macro which should make life easier :)
  25.  
  26. ;-----------------------------------------------------------------------------
  27. mem.alloc   dd ? ;ôóíêöèÿ äëÿ âûäåëåíèÿ ïàìÿòè
  28. mem.free    dd ? ;ôóíêöèÿ äëÿ îñâîáîæäåíèÿ ïàìÿòè
  29. mem.realloc dd ? ;ôóíêöèÿ äëÿ ïåðåðàñïðåäåëåíèÿ ïàìÿòè
  30. dll.load    dd ?
  31.  
  32. ;----------------------------------------------------
  33. ;EditBox
  34. ;----------------------------------------------------
  35. align 16
  36. ;use_editbox_draw       ;macro reveals the function of the display.
  37. align 16
  38. ;use_editbox_key        ;macro reveals processing function of the keypad.
  39. align 16
  40. ;use_editbox_mouse      ;macro reveals processing function of the mouse.
  41.  
  42. ;----------------------------------------------------
  43. ;CheckBox
  44. ;----------------------------------------------------
  45. align 16
  46. use_checkbox_draw       ;macro reveals the function of the display.
  47. align 16
  48. use_checkbox_mouse      ;macro reveals processing function of the mouse.
  49.  
  50.  
  51. ;--------------------------------------------------
  52. ;radiobutton Group
  53. ;--------------------------------------------------
  54. align 16
  55. ;use_optionbox_driver   ;macro that control the operating modes
  56. align 16
  57. ;use_optionbox_draw     ;macro reveals the function of the display.
  58. align 16
  59. ;use_optionbox_mouse    ;macro reveals processing function of the mouse.
  60.  
  61. ;--------------------------------------------------
  62. ;scrollbar Group
  63. ;--------------------------------------------------
  64. align 16
  65. ;use_scroll_bar
  66. align 16
  67. ;use_scroll_bar_vertical
  68. align 16
  69. ;use_scroll_bar_horizontal
  70.  
  71. ;--------------------------------------------------
  72. ;dinamic button Group
  73. ;--------------------------------------------------
  74. align 16
  75. ;use_dinamic_button
  76.  
  77. ;--------------------------------------------------
  78. ;menubar Group
  79. ;--------------------------------------------------
  80. align 16
  81. ;use_menu_bar
  82.  
  83. ;--------------------------------------------------
  84. ;filebrowser Group
  85. ;--------------------------------------------------
  86. align 16
  87. ;use_file_browser
  88.  
  89. ;--------------------------------------------------
  90. ;tree list
  91. ;--------------------------------------------------
  92. align 16
  93. ;use_tree_list
  94.  
  95. ;--------------------------------------------------
  96. ;PathShow Group
  97. ;--------------------------------------------------
  98. align 16
  99. ;use_path_show
  100.  
  101. ;--------------------------------------------------
  102. ;text editor
  103. ;--------------------------------------------------
  104. align 16
  105. ;use_text_edit
  106.  
  107. ;input:
  108. ; eax = óêàçàòåëü íà ôóíêöèþ âûäåëåíèÿ ïàìÿòè
  109. ; ebx = ... îñâîáîæäåíèÿ ïàìÿòè
  110. ; ecx = ... ïåðåðàñïðåäåëåíèÿ ïàìÿòè
  111. ; edx = ... çàãðóçêè áèáëèîòåêè (ïîêà íå èñïîëüçóåòñÿ)
  112. align 16
  113. lib_init:
  114.         mov     [mem.alloc], eax
  115.         mov     [mem.free], ebx
  116.         mov     [mem.realloc], ecx
  117.         mov     [dll.load], edx
  118. ret
  119.  
  120.  
  121. align 16
  122. EXPORTS:
  123.  
  124.  
  125. dd      sz_init,                        lib_init
  126. dd      sz_version,                     0x00000001
  127.  
  128. ;dd     sz_edit_box,                    edit_box
  129. ;dd     sz_edit_box_key,                edit_box_key
  130. ;dd     sz_edit_box_mouse,              edit_box_mouse
  131. ;dd     sz_edit_box_set_text,           edit_box_set_text
  132. ;dd     szVersion_ed,                   0x00000001
  133.  
  134. dd      sz_check_box_draw,              check_box_draw
  135. dd      sz_check_box_mouse,             check_box_mouse
  136. dd      szVersion_ch,                   0x00000001
  137.  
  138. ;dd     sz_option_box_draw,             option_box_draw
  139. ;dd     sz_option_box_mouse,            option_box_mouse
  140. ;dd     szVersion_op,                   0x00000001
  141.  
  142. ;dd     sz_Scrollbar_ver_draw,          scroll_bar_vertical.draw
  143. ;dd     sz_Scrollbar_ver_mouse,         scroll_bar_vertical.mouse
  144. ;dd     sz_Scrollbar_hor_draw,          scroll_bar_horizontal.draw
  145. ;dd     sz_Scrollbar_hor_mouse,         scroll_bar_horizontal.mouse
  146. ;dd     szVersion_scrollbar,            0x00010001
  147.  
  148. ;dd     sz_Dbutton_draw,                dinamic_button.draw
  149. ;dd     sz_Dbutton_mouse,               dinamic_button.mouse
  150. ;dd     szVersion_dbutton,              0x00010001
  151.  
  152. ;dd     sz_Menu_bar_draw,               menu_bar.draw
  153. ;dd     sz_Menu_bar_mouse,              menu_bar.mouse
  154. ;dd     sz_Menu_bar_activate,           menu_bar.activate
  155. ;dd     szVersion_menu_bar,             0x00010002
  156.  
  157. ;dd     sz_FileBrowser_draw,            fb_draw_panel
  158. ;dd     sz_FileBrowser_mouse,           fb_mouse
  159. ;dd     sz_FileBrowser_key,             fb_key
  160. ;dd     szVersion_FileBrowser,          0x00010001
  161.  
  162. ;dd     sz_tl_data_init,                tl_data_init
  163. ;dd     sz_tl_data_clear,               tl_data_clear
  164. ;dd     sz_tl_info_clear,               tl_info_clear
  165. ;dd     sz_tl_key,                      tl_key
  166. ;dd     sz_tl_mouse,                    tl_mouse
  167. ;dd     sz_tl_draw,                     tl_draw
  168. ;dd     sz_tl_info_undo,                tl_info_undo
  169. ;dd     sz_tl_info_redo,                tl_info_redo
  170. ;dd     sz_tl_node_add,                 tl_node_add
  171. ;dd     sz_tl_node_set_data,            tl_node_set_data
  172. ;dd     sz_tl_node_get_data,            tl_node_get_data
  173. ;dd     sz_tl_node_delete,              tl_node_delete
  174. ;dd     sz_tl_cur_beg,                  tl_cur_beg
  175. ;dd     sz_tl_cur_next,                 tl_cur_next
  176. ;dd     sz_tl_cur_perv,                 tl_cur_perv
  177. ;dd     sz_tl_node_close_open,          tl_node_close_open
  178. ;dd     sz_tl_node_lev_inc,             tl_node_lev_inc
  179. ;dd     sz_tl_node_lev_dec,             tl_node_lev_dec
  180. ;dd     sz_tl_node_move_up,             tl_node_move_up
  181. ;dd     sz_tl_node_move_down,           tl_node_move_down
  182. ;dd     sz_tl_node_poi_get_info,        tl_node_poi_get_info
  183. ;dd     sz_tl_node_poi_get_next_info,   tl_node_poi_get_next_info
  184. ;dd     sz_tl_node_poi_get_data,        tl_node_poi_get_data
  185. ;dd     sz_tl_save_mem,                 tl_save_mem
  186. ;dd     sz_tl_load_mem,                 tl_load_mem
  187. ;dd     sz_tl_get_mem_size,             tl_get_mem_size
  188. ;dd     sz_tl_version_tree_list,        0x00000001
  189.  
  190. ;dd     sz_PathShow_prepare,            path_show.prepare
  191. ;dd     sz_PathShow_draw,               path_show.draw
  192. ;dd     szVersion_path_show,            0x00010001
  193.  
  194. ;dd     sz_ted_but_save_file,           ted_but_save_file
  195. ;dd     sz_ted_but_sumb_upper,          ted_but_sumb_upper
  196. ;dd     sz_ted_but_sumb_lover,          ted_but_sumb_lover
  197. ;dd     sz_ted_can_save,                ted_can_save
  198. ;dd     sz_ted_clear,                   ted_clear
  199. ;dd     sz_ted_delete,                  ted_delete
  200. ;dd     sz_ted_draw,                    ted_draw
  201. ;dd     sz_ted_init,                    ted_init
  202. ;dd     sz_ted_init_scroll_bars,        ted_init_scroll_bars
  203. ;dd     sz_ted_init_syntax_file,        ted_init_syntax_file
  204. ;dd     sz_ted_is_select,               ted_is_select
  205. ;dd     sz_ted_key,                     ted_key
  206. ;dd     sz_ted_mouse,                   ted_mouse
  207. ;dd     sz_ted_open_file,               ted_open_file
  208. ;dd     sz_ted_text_add,                ted_text_add
  209. ;dd     sz_ted_but_select_word,         ted_but_select_word
  210. ;dd     sz_ted_but_cut,                 ted_but_cut
  211. ;dd     sz_ted_but_copy,                ted_but_copy
  212. ;dd     sz_ted_but_paste,               ted_but_paste
  213. ;dd     sz_ted_but_undo,                ted_but_undo
  214. ;dd     sz_ted_but_redo,                ted_but_redo
  215. ;dd     sz_ted_but_reverse,             ted_but_reverse
  216. ;dd     sz_ted_but_find_next,           ted_but_find_next
  217. ;dd     sz_ted_text_colored,            ted_text_colored
  218. ;dd     sz_ted_version,                 0x00000002
  219.  
  220. dd      0,0
  221.  
  222.  
  223. sz_init                         db 'lib_init',0
  224. sz_version                      db 'version',0
  225.  
  226. sz_edit_box                     db 'edit_box',0
  227. sz_edit_box_key                 db 'edit_box_key',0
  228. sz_edit_box_mouse               db 'edit_box_mouse',0
  229. sz_edit_box_set_text            db 'edit_box_set_text',0
  230. szVersion_ed                    db 'version_ed',0
  231.  
  232. sz_check_box_draw               db 'check_box_draw',0
  233. sz_check_box_mouse              db 'check_box_mouse',0
  234. szVersion_ch                    db 'version_ch',0
  235.  
  236. sz_option_box_draw              db 'option_box_draw',0
  237. sz_option_box_mouse             db 'option_box_mouse',0
  238. szVersion_op                    db 'version_op',0
  239.  
  240. sz_Scrollbar_ver_draw           db 'scrollbar_v_draw',0
  241. sz_Scrollbar_ver_mouse          db 'scrollbar_v_mouse',0
  242. sz_Scrollbar_hor_draw           db 'scrollbar_h_draw',0
  243. sz_Scrollbar_hor_mouse          db 'scrollbar_h_mouse',0
  244. szVersion_scrollbar             db 'version_scrollbar',0
  245.  
  246. sz_Dbutton_draw                 db 'dbutton_draw',0
  247. sz_Dbutton_mouse                db 'dbutton_mouse',0
  248. szVersion_dbutton               db 'version_dbutton',0
  249.  
  250. sz_Menu_bar_draw                db 'menu_bar_draw',0
  251. sz_Menu_bar_mouse               db 'menu_bar_mouse',0
  252. sz_Menu_bar_activate            db 'menu_bar_activate',0
  253. szVersion_menu_bar              db 'version_menu_bar',0
  254.  
  255. sz_FileBrowser_draw             db 'FileBrowser_draw',0
  256. sz_FileBrowser_mouse            db 'FileBrowser_mouse',0
  257. sz_FileBrowser_key              db 'FileBrowser_key',0
  258. szVersion_FileBrowser           db 'version_FileBrowser',0
  259.  
  260. sz_tl_data_init                 db 'tl_data_init',0
  261. sz_tl_data_clear                db 'tl_data_clear',0
  262. sz_tl_info_clear                db 'tl_info_clear',0
  263. sz_tl_key                       db 'tl_key',0
  264. sz_tl_mouse                     db 'tl_mouse',0
  265. sz_tl_draw                      db 'tl_draw',0
  266. sz_tl_info_undo                 db 'tl_info_undo',0
  267. sz_tl_info_redo                 db 'tl_info_redo',0
  268. sz_tl_node_add                  db 'tl_node_add',0
  269. sz_tl_node_set_data             db 'tl_node_set_data',0
  270. sz_tl_node_get_data             db 'tl_node_get_data',0
  271. sz_tl_node_delete               db 'tl_node_delete',0
  272. sz_tl_cur_beg                   db 'tl_cur_beg',0
  273. sz_tl_cur_next                  db 'tl_cur_next',0
  274. sz_tl_cur_perv                  db 'tl_cur_perv',0
  275. sz_tl_node_close_open           db 'tl_node_close_open',0
  276. sz_tl_node_lev_inc              db 'tl_node_lev_inc',0
  277. sz_tl_node_lev_dec              db 'tl_node_lev_dec',0
  278. sz_tl_node_move_up              db 'tl_node_move_up',0
  279. sz_tl_node_move_down            db 'tl_node_move_down',0
  280. sz_tl_node_poi_get_info         db 'tl_node_poi_get_info',0
  281. sz_tl_node_poi_get_next_info    db 'tl_node_poi_get_next_info',0
  282. sz_tl_node_poi_get_data         db 'tl_node_poi_get_data',0
  283. sz_tl_save_mem                  db 'tl_save_mem',0
  284. sz_tl_load_mem                  db 'tl_load_mem',0
  285. sz_tl_get_mem_size              db 'tl_get_mem_size',0
  286. sz_tl_version_tree_list         db 'version_tree_list',0
  287.  
  288. sz_PathShow_prepare             db 'PathShow_prepare',0
  289. sz_PathShow_draw                db 'PathShow_draw',0
  290. szVersion_path_show             db 'version_PathShow',0
  291.  
  292. sz_ted_but_save_file            db 'ted_but_save_file',0
  293. sz_ted_but_sumb_upper           db 'ted_but_sumb_upper',0
  294. sz_ted_but_sumb_lover           db 'ted_but_sumb_lover',0
  295. sz_ted_can_save                 db 'ted_can_save',0
  296. sz_ted_clear                    db 'ted_clear',0
  297. sz_ted_delete                   db 'ted_delete',0
  298. sz_ted_draw                     db 'ted_draw',0
  299. sz_ted_init                     db 'ted_init',0
  300. sz_ted_init_scroll_bars         db 'ted_init_scroll_bars',0
  301. sz_ted_init_syntax_file         db 'ted_init_syntax_file',0
  302. sz_ted_is_select                db 'ted_is_select',0
  303. sz_ted_key                      db 'ted_key',0
  304. sz_ted_mouse                    db 'ted_mouse',0
  305. sz_ted_open_file                db 'ted_open_file',0
  306. sz_ted_text_add                 db 'ted_text_add',0
  307. sz_ted_but_select_word          db 'ted_but_select_word',0
  308. sz_ted_but_cut                  db 'ted_but_cut',0
  309. sz_ted_but_copy                 db 'ted_but_copy',0
  310. sz_ted_but_paste                db 'ted_but_paste',0
  311. sz_ted_but_undo                 db 'ted_but_undo',0
  312. sz_ted_but_redo                 db 'ted_but_redo',0
  313. sz_ted_but_reverse              db 'ted_but_reverse',0
  314. sz_ted_but_find_next            db 'ted_but_find_next',0
  315. sz_ted_text_colored             db 'ted_text_colored',0
  316. sz_ted_version                  db 'version_text_edit',0