Subversion Repositories Kolibri OS

Rev

Blame | Last modification | View Log | Download | RSS feed

  1. list_draw:
  2.     call    list_draw_ground
  3.     mov     eax,[edit_cnt]
  4.     cmp     eax,1
  5.     jne     @f
  6.     call    list_draw_win_text
  7.     call    list_draw_win_hex
  8.     jmp     list_draw_exit
  9.   @@:
  10.     cmp     eax,2
  11.     jne     @f
  12.     call    list_draw_btn_text
  13.     call    list_draw_btn_hex
  14.     jmp     list_draw_exit
  15.   @@:
  16.     cmp     eax,3
  17.     jne     @f
  18.     call    list_draw_gui_text
  19.     call    list_draw_gui_hex
  20.     jmp     list_draw_exit
  21.   @@:
  22.     call    list_draw_sup_text
  23.     call    list_draw_sup_hex
  24.   list_draw_exit:
  25.     ret
  26.  
  27. list_draw_ground:
  28.     ;; draw list face
  29.     push    edi
  30.     mov     edi,12
  31.     mov     eax,13
  32.     mov     ebx, 9 shl 16 + 214
  33.     mov     ecx, 32 shl 16 + 19
  34.     mov     edx,[sc.gui_face]
  35.     draw_list_face:
  36.       int     0x40
  37.       add     ecx, 20 shl 16 + 0
  38.       dec     edi
  39.       cmp     edi,0
  40.     jne     draw_list_face
  41.     pop     edi
  42.  
  43.     ;; draw list line
  44.     push    edi
  45.     mov     edi,13
  46.     mov     eax,38
  47.     mov     ebx, 9 shl 16 + 221
  48.     mov     ecx, 31 shl 16 + 31
  49.     mov     edx,[sc.gui_frame]
  50.     draw_list_line:
  51.       int     0x40
  52.       add     ecx, 20 shl 16 + 20
  53.       dec     edi
  54.       cmp     edi,0
  55.     jne     draw_list_line
  56.     pop     edi
  57.  
  58.     ;; draw hex sybbol
  59.     push    esi
  60.     mov     esi,12
  61.     mov     eax,4
  62.     mov     ecx,[sc.gui_intext]
  63.     add     ecx,0xC0000000
  64.     mov     ebx,164*65536 + 38
  65.     mov     edx,text_hex
  66.     mov     edi,[sc.gui_face]
  67.     draw_list_hex:
  68.       push    esi
  69.       int     0x40
  70.       pop     esi
  71.       add     ebx,20
  72.       dec     esi
  73.       cmp     esi,0
  74.     jne     draw_list_hex
  75.     pop     esi
  76.  
  77.     ;; draw vert line
  78.     mov     eax, 38
  79.     mov     ebx, 8 shl 16 + 8
  80.     mov     ecx, 32 shl 16 + 270
  81.     mov     edx,[sc.gui_frame]
  82.     int     0x40
  83.     mov     ebx, 142 shl 16 + 142
  84.     int     0x40
  85.     mov     ebx, 222 shl 16 + 222
  86.     int     0x40
  87.     ret
  88.  
  89. list_draw_win_text:
  90.     mov     eax,4
  91.     mov     ecx,[sc.gui_text]
  92.     add     ecx,0xC0000000
  93.     mov     edi,[sc.gui_face]
  94.  
  95.     mov     edx,text_frame
  96.     mov     ebx,16*65536 + 38
  97.     int     0x40
  98.  
  99.     mov     edx,text_inframe
  100.     add     ebx,20
  101.     int     0x40
  102.  
  103.     mov     edx,text_face
  104.     add     ebx,20
  105.     int     0x40
  106.  
  107.     mov     edx,text_inface
  108.     add     ebx,20
  109.     int     0x40
  110.  
  111.     mov     edx,text_border
  112.     add     ebx,20
  113.     int     0x40
  114.  
  115.     mov     edx,text_inborder
  116.     add     ebx,20
  117.     int     0x40
  118.  
  119.     mov     edx,text_wtext
  120.     add     ebx,20
  121.     int     0x40
  122.  
  123.     mov     edx,text_graytext
  124.     add     ebx,20
  125.     int     0x40
  126.  
  127.     mov     edx,text_title
  128.     add     ebx,20
  129.     int     0x40
  130.  
  131.     mov     edx,text_body
  132.     add     ebx,20
  133.     int     0x40
  134.  
  135.     mov     edx,text_reserved
  136.     add     ebx,20
  137.     int     0x40
  138.  
  139.     mov     edx,text_reserved
  140.     add     ebx,20
  141.     int     0x40
  142.     ret
  143.  
  144. list_draw_win_hex:
  145.     mov     eax,47
  146.     mov     ebx,256+8 shl 16
  147.     mov     esi,[sc.gui_intext]
  148.  
  149.     mov     ecx,[sc.win_frame]
  150.     mov     edx,170*65536 + 38
  151.     int     0x40
  152.  
  153.     mov     ecx,[sc.win_inframe]
  154.     add     edx,20
  155.     int     0x40
  156.  
  157.     mov     ecx,[sc.win_face]
  158.     add     edx,20
  159.     int     0x40
  160.  
  161.     mov     ecx,[sc.win_inface]
  162.     add     edx,20
  163.     int     0x40
  164.  
  165.     mov     ecx,[sc.win_border]
  166.     add     edx,20
  167.     int     0x40
  168.  
  169.     mov     ecx,[sc.win_inborder]
  170.     add     edx,20
  171.     int     0x40
  172.  
  173.     mov     ecx,[sc.win_text]
  174.     add     edx,20
  175.     int     0x40
  176.  
  177.     mov     ecx,[sc.win_graytext]
  178.     add     edx,20
  179.     int     0x40
  180.  
  181.     mov     ecx,[sc.win_title]
  182.     add     edx,20
  183.     int     0x40
  184.  
  185.     mov     ecx,[sc.win_body]
  186.     add     edx,20
  187.     int     0x40
  188.  
  189.     mov     ecx,[sc.res_var_a]
  190.     add     edx,20
  191.     int     0x40
  192.  
  193.     mov     ecx,[sc.res_var_b]
  194.     add     edx,20
  195.     int     0x40
  196.     ret
  197.  
  198. list_draw_btn_text:
  199.     mov     eax,4
  200.     mov     ecx,[sc.gui_text]
  201.     add     ecx,0xC0000000
  202.     mov     edi,[sc.gui_face]
  203.  
  204.     mov     edx,text_frame
  205.     mov     ebx,16*65536 + 38
  206.     int     0x40
  207.  
  208.     mov     edx,text_inframe
  209.     add     ebx,20
  210.     int     0x40
  211.  
  212.     mov     edx,text_fcframe
  213.     add     ebx,20
  214.     int     0x40
  215.  
  216.     mov     edx,text_face
  217.     add     ebx,20
  218.     int     0x40
  219.  
  220.     mov     edx,text_inface
  221.     add     ebx,20
  222.     int     0x40
  223.  
  224.     mov     edx,text_fcface
  225.     add     ebx,20
  226.     int     0x40
  227.  
  228.     mov     edx,text_text
  229.     add     ebx,20
  230.     int     0x40
  231.  
  232.     mov     edx,text_intext
  233.     add     ebx,20
  234.     int     0x40
  235.  
  236.     mov     edx,text_fctext
  237.     add     ebx,20
  238.     int     0x40
  239.  
  240.     mov     edx,text_reserved
  241.     add     ebx,20
  242.     int     0x40
  243.  
  244.     mov     edx,text_reserved
  245.     add     ebx,20
  246.     int     0x40
  247.  
  248.     mov     edx,text_reserved
  249.     add     ebx,20
  250.     int     0x40
  251.     ret
  252.  
  253. list_draw_btn_hex:
  254.     mov     eax,47
  255.     mov     ebx,256+8 shl 16
  256.     mov     esi,[sc.gui_intext]
  257.  
  258.     mov     ecx,[sc.btn_frame]
  259.     mov     edx,170*65536 + 38
  260.     int     0x40
  261.  
  262.     mov     ecx,[sc.btn_inframe]
  263.     add     edx,20
  264.     int     0x40
  265.  
  266.     mov     ecx,[sc.btn_fcframe]
  267.     add     edx,20
  268.     int     0x40
  269.  
  270.     mov     ecx,[sc.btn_face]
  271.     add     edx,20
  272.     int     0x40
  273.  
  274.     mov     ecx,[sc.btn_inface]
  275.     add     edx,20
  276.     int     0x40
  277.  
  278.     mov     ecx,[sc.btn_fcface]
  279.     add     edx,20
  280.     int     0x40
  281.  
  282.     mov     ecx,[sc.btn_text]
  283.     add     edx,20
  284.     int     0x40
  285.  
  286.     mov     ecx,[sc.btn_intext]
  287.     add     edx,20
  288.     int     0x40
  289.  
  290.     mov     ecx,[sc.btn_fctext]
  291.     add     edx,20
  292.     int     0x40
  293.  
  294.     mov     ecx,[sc.res_var_c]
  295.     add     edx,20
  296.     int     0x40
  297.  
  298.     mov     ecx,[sc.res_var_d]
  299.     add     edx,20
  300.     int     0x40
  301.  
  302.     mov     ecx,[sc.res_var_e]
  303.     add     edx,20
  304.     int     0x40
  305.     ret
  306.  
  307.  
  308. list_draw_gui_text:
  309.     mov     eax,4
  310.     mov     ecx,[sc.gui_text]
  311.     add     ecx,0xC0000000
  312.     mov     edi,[sc.gui_face]
  313.  
  314.     mov     edx,text_frame
  315.     mov     ebx,16*65536 + 38
  316.     int     0x40
  317.  
  318.     mov     edx,text_inframe
  319.     add     ebx,20
  320.     int     0x40
  321.  
  322.     mov     edx,text_fcframe
  323.     add     ebx,20
  324.     int     0x40
  325.  
  326.     mov     edx,text_face
  327.     add     ebx,20
  328.     int     0x40
  329.  
  330.     mov     edx,text_inface
  331.     add     ebx,20
  332.     int     0x40
  333.  
  334.     mov     edx,text_fcface
  335.     add     ebx,20
  336.     int     0x40
  337.  
  338.     mov     edx,text_text
  339.     add     ebx,20
  340.     int     0x40
  341.  
  342.     mov     edx,text_intext
  343.     add     ebx,20
  344.     int     0x40
  345.  
  346.     mov     edx,text_fctext
  347.     add     ebx,20
  348.     int     0x40
  349.  
  350.     mov     edx,text_select
  351.     add     ebx,20
  352.     int     0x40
  353.  
  354.     mov     edx,text_shadow
  355.     add     ebx,20
  356.     int     0x40
  357.  
  358.     mov     edx,text_reserved
  359.     add     ebx,20
  360.     int     0x40
  361.     ret
  362.  
  363. list_draw_gui_hex:
  364.     mov     eax,47
  365.     mov     ebx,256+8 shl 16
  366.     mov     esi,[sc.gui_intext]
  367.  
  368.     mov     ecx,[sc.gui_frame]
  369.     mov     edx,170*65536 + 38
  370.     int     0x40
  371.  
  372.     mov     ecx,[sc.gui_inframe]
  373.     add     edx,20
  374.     int     0x40
  375.  
  376.     mov     ecx,[sc.gui_fcframe]
  377.     add     edx,20
  378.     int     0x40
  379.  
  380.     mov     ecx,[sc.gui_face]
  381.     add     edx,20
  382.     int     0x40
  383.  
  384.     mov     ecx,[sc.gui_inface]
  385.     add     edx,20
  386.     int     0x40
  387.  
  388.     mov     ecx,[sc.gui_fcface]
  389.     add     edx,20
  390.     int     0x40
  391.  
  392.     mov     ecx,[sc.gui_text]
  393.     add     edx,20
  394.     int     0x40
  395.  
  396.     mov     ecx,[sc.gui_intext]
  397.     add     edx,20
  398.     int     0x40
  399.  
  400.     mov     ecx,[sc.gui_fctext]
  401.     add     edx,20
  402.     int     0x40
  403.  
  404.     mov     ecx,[sc.gui_select]
  405.     add     edx,20
  406.     int     0x40
  407.  
  408.     mov     ecx,[sc.gui_shadow]
  409.     add     edx,20
  410.     int     0x40
  411.  
  412.     mov     ecx,[sc.res_var_f]
  413.     add     edx,20
  414.     int     0x40
  415.     ret
  416.  
  417.  
  418. list_draw_sup_text:
  419.     mov     eax,4
  420.     mov     ecx,[sc.gui_text]
  421.     add     ecx,0xC0000000
  422.     mov     edi,[sc.gui_face]
  423.  
  424.     mov     edx,text_p_frame
  425.     mov     ebx,16*65536 + 38
  426.     int     0x40
  427.  
  428.     mov     edx,text_p_face
  429.     add     ebx,20
  430.     int     0x40
  431.  
  432.     mov     edx,text_p_text
  433.     add     ebx,20
  434.     int     0x40
  435.  
  436.     mov     edx,text_m_frame
  437.     add     ebx,20
  438.     int     0x40
  439.  
  440.     mov     edx,text_m_face
  441.     add     ebx,20
  442.     int     0x40
  443.  
  444.     mov     edx,text_m_text
  445.     add     ebx,20
  446.     int     0x40
  447.  
  448.     mov     edx,text_h_frame
  449.     add     ebx,20
  450.     int     0x40
  451.  
  452.     mov     edx,text_h_face
  453.     add     ebx,20
  454.     int     0x40
  455.  
  456.     mov     edx,text_h_text
  457.     add     ebx,20
  458.     int     0x40
  459.  
  460.     mov     edx,text_3dlight
  461.     add     ebx,20
  462.     int     0x40
  463.  
  464.     mov     edx,text_3ddark
  465.     add     ebx,20
  466.     int     0x40
  467.  
  468.     mov     edx,text_3dface
  469.     add     ebx,20
  470.     int     0x40
  471.     ret
  472.  
  473. list_draw_sup_hex:
  474.     mov     eax,47
  475.     mov     ebx,256+8 shl 16
  476.     mov     esi,[sc.gui_intext]
  477.  
  478.     mov     ecx,[sc.panel_frame]
  479.     mov     edx,170*65536 + 38
  480.     int     0x40
  481.  
  482.     mov     ecx,[sc.panel_body]
  483.     add     edx,20
  484.     int     0x40
  485.  
  486.     mov     ecx,[sc.panel_text]
  487.     add     edx,20
  488.     int     0x40
  489.  
  490.     mov     ecx,[sc.menu_frame]
  491.     add     edx,20
  492.     int     0x40
  493.  
  494.     mov     ecx,[sc.menu_body]
  495.     add     edx,20
  496.     int     0x40
  497.  
  498.     mov     ecx,[sc.menu_text]
  499.     add     edx,20
  500.     int     0x40
  501.  
  502.     mov     ecx,[sc.hint_frame]
  503.     add     edx,20
  504.     int     0x40
  505.  
  506.     mov     ecx,[sc.hint_body]
  507.     add     edx,20
  508.     int     0x40
  509.  
  510.     mov     ecx,[sc.hint_text]
  511.     add     edx,20
  512.     int     0x40
  513.  
  514.     mov     ecx,[sc.3d_light]
  515.     add     edx,20
  516.     int     0x40
  517.  
  518.     mov     ecx,[sc.3d_dark]
  519.     add     edx,20
  520.     int     0x40
  521.  
  522.     mov     ecx,[sc.3d_face]
  523.     add     edx,20
  524.     int     0x40
  525.     ret