Subversion Repositories Kolibri OS

Rev

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

  1.  
  2. //BOX_LIB
  3.  
  4. typedef Dword dword;
  5. typedef unsigned short word;
  6. typedef dword __stdcall dword_func(dword);
  7. //typedef dword __stdcall dword3_func(dword,dword,dword);
  8.  
  9. dword  am__ = 0x0;
  10. dword  bm__ = 0x0;
  11.  
  12. char aEdit_box_draw[]   = "edit_box";
  13. char aEdit_box_key[]    = "edit_box_key";
  14. char aEdit_box_mouse[]  = "edit_box_mouse";
  15. char aVersion_ed[]      = "version_ed";
  16.  
  17. char aCheck_box_draw[]  = "check_box_draw";
  18. char aCheck_box_mouse[] = "check_box_mouse";
  19. char aVersion_ch[]      = "version_ch";
  20.  
  21. char aOption_box_draw[] = "option_box_draw";
  22. char aVersion_op[]      = "version_op" ;
  23.  
  24. char aScrollbar_v_draw [] = "scrollbar_v_draw";
  25. char aScrollbar_v_mouse[] = "scrollbar_v_mouse";
  26. char aScrollbar_h_draw [] = "scrollbar_h_draw";
  27. char aScrollbar_h_mouse[] = "scrollbar_h_mouse";
  28. char aVersion_scrollbar[] = "version_scrollbar";
  29.  
  30. dword_func *edit_box_draw  =(dword_func*) &aEdit_box_draw;
  31. dword_func *edit_box_key   =(dword_func*) &aEdit_box_key;
  32. dword_func *edit_box_mouse =(dword_func*) &aEdit_box_mouse;
  33.  
  34. dword_func *scrollbar_v_draw  = (dword_func*) &aScrollbar_v_draw;
  35. dword_func *scrollbar_v_mouse = (dword_func*) &aScrollbar_v_mouse;
  36. dword_func *scrollbar_h_draw  = (dword_func*) &aScrollbar_h_draw;
  37. dword_func *scrollbar_h_mouse = (dword_func*) &aScrollbar_h_mouse;
  38.  
  39.  
  40. char lib_path[] = "/sys/lib/box_lib.obj";
  41. dword lib_path_addr = (dword)lib_path;
  42. dword dummy = 0;
  43.  
  44. struct edit_box{
  45. dword width,
  46.         left,
  47.         top,
  48.         color,
  49.         shift_color,
  50.         focus_border_color,
  51.         blur_border_color,
  52.         text_color,
  53.         max,
  54.         text,
  55.         mouse_variable,
  56.         flags,
  57.         size,
  58.         pos,
  59.         offset,
  60.         cl_curs_x,
  61.         cl_curs_y,
  62.         shift,
  63.         shift_old,
  64.         ed_height,
  65.         ed_char_width;
  66. };
  67.  
  68. struct scroll_bar{
  69. word w,
  70.         x,
  71.         h,
  72.         y;
  73.         dword btn_height,
  74.         type,
  75.         max_area,
  76.         cur_area,
  77.         position,
  78.         bckg_col,
  79.         frnt_col,
  80.         line_col,
  81.         redraw;
  82.         word delta,
  83.         delta2,
  84.         r_size_x,
  85.         r_start_x,
  86.         r_size_y,
  87.         r_start_y;
  88.         dword m_pos,
  89.         m_pos_2,
  90.         m_keys,
  91.         run_size,
  92.         position2,
  93.         work_size,
  94.         all_redraw,
  95.         ar_offset;
  96. };
  97.  
  98. void load_edit_box()
  99. {
  100.         kol_struct_import *k = kol_cofflib_load(lib_path);
  101.  
  102.         if (k == NULL)
  103.         {
  104.                 sprintf(debuf, "cannot load library %S", lib_path);
  105.                 rtlDebugOutString(debuf);
  106.                 return;
  107.         }
  108.  
  109.         edit_box_draw  = (dword_func*)kol_cofflib_procload(k, aEdit_box_draw);
  110.         edit_box_key   = (dword_func*)kol_cofflib_procload(k, aEdit_box_key);
  111.         edit_box_mouse = (dword_func*)kol_cofflib_procload(k, aEdit_box_mouse);
  112.  
  113.         scrollbar_v_draw  = (dword_func*)kol_cofflib_procload(k, aScrollbar_v_draw);
  114.         scrollbar_v_mouse = (dword_func*)kol_cofflib_procload(k, aScrollbar_v_mouse);
  115.         scrollbar_h_draw  = (dword_func*)kol_cofflib_procload(k, aScrollbar_h_draw);
  116.         scrollbar_h_mouse = (dword_func*)kol_cofflib_procload(k, aScrollbar_h_mouse);
  117.  
  118.         if (edit_box_draw == NULL || scrollbar_v_draw == NULL || scrollbar_h_draw == NULL)
  119.                 rtlDebugOutString("Some of EDITBOX functions have not been loaded!");
  120. }
  121.