Update libraries for new fonts

git-svn-id: svn://kolibrios.org@5692 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Kirill Lipatov (Leency) 2015-08-07 09:51:01 +00:00
parent 1883cc1ab5
commit ece7ffbd2b
3 changed files with 67 additions and 124 deletions

View File

@ -8,26 +8,24 @@ macro use_editbox_draw
edit_box:
.draw:
pushad
.draw_1:
.draw_1:
;--- à¨á㥬 à ¬ªã ---
mov edi,dword [esp+36]
call .draw_border ; ”ã­ªæ¨ï áâ ¡¨«ì­ 
call .draw_border
.draw_bg_cursor_text:
;--- ¨§¬¥­ï¥¬ ᬥ饭¨¥, ¥á«¨ ­ ¤® ---
call .check_offset ;¢ëç¨á«¥­¨¥ ¯®§¨æ¨¨ ªãàá®à  áâ ¡¨«ì­ 
call .check_offset
;--- à¨á㥬 ¢­ãâ७­îî ®¡« áâì ---
call .draw_bg ;­ à¨á®¢ âì ¯àאַ㣮«ì­¨ª à ¡®ç¥© ®¡« áâ¨
;---- à¨á㥬 ¢ë¤¥«¥­¨¥, ¯® shift ¥á«¨ ¥áâì
call .draw_bg
;--- à¨á㥬 ¢ë¤¥«¥­¨¥, ¯® shift ¥á«¨ ¥áâì ---
call .draw_shift
.draw_cursor_text:
;--- à¨á㥬 ªãàá®à ---
;--- ¬®¦¥â ¥£® ­¥ ­ ¤® à¨á®¢ âì ----
test word ed_flags,ed_focus
jz @f
call .draw_cursor
@@:
call .draw_text
; ret
;--- à¨á㥬 ªãàá®à ---
;--- ¬®¦¥â ¥£® ­¥ ­ ¤® à¨á®¢ âì ---
test word ed_flags,ed_focus
jz .editbox_exit
call .draw_cursor
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;Ž¡é¨© ¢ë室 ¨§ editbox ¤«ï ¢á¥å ä㭪権 ¨ ¯®áâ ®¡à ¡®â稪®¢;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -194,13 +192,13 @@ macro use_general_func
{
;debug_func
;----------------------------------------------------------
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ¢ë¤¥«¥­­®© ç á⨠-----------------
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ¢ë¤¥«¥­­®© ç á⨠----------------
;----------------------------------------------------------
edit_box.draw_shift:
test word ed_flags,ed_shift_bac ;ãáâ ­®¢ª  ä« £ , ¢ë¤¥«¥­­®© ®¡« áâ¨
jz @f
mov ebp,shift_color
mov ebx,dword ed_shift_pos
mov ebx,dword ed_shift_pos
call edit_box_key.sh_cl_
@@: ret
;----------------------------------------------------------
@ -208,14 +206,13 @@ edit_box.draw_shift:
;----------------------------------------------------------
edit_box.draw_text:
;--- ¢ëç¨á«ï¥¬, ᪮«ìª® ¯®¬¥é ¥âáï ᨬ¢®«®¢ ---
;--- çâ®¡ë ¬ãá®à ­¥ à¨á®¢ âì ---
call edit_box.get_n
mov esi,ed_size
mov ebx,ed_offset
sub esi,ebx
cmp eax,esi
jae @F
mov esi,eax ;çâ®¡ë ­¥ ¢ë室¨âì §  ¯à¥¤¥«ë íªà ­ 
mov esi,eax
;--- à¨á㥬 ⥪áâ ---
@@: mov eax,4
mov ebx,ed_left
@ -226,17 +223,11 @@ edit_box.draw_text:
mov ecx,ed_text_color
add ebx,4
add edx,ed_text
test word ed_flags,ed_pass
jz @f
call edit_box.draw_password
jmp .end_f
@@:
test word ed_flags,ed_pass
jnz edit_box.draw_password
mcall
.end_f:
ret
ret
txt_pass db '*',0
proc edit_box.draw_password
locals
s_len dw ? ;¤«¨­  ¢ë¢®¤¨¬®£® ⥪áâ 
@ -254,7 +245,7 @@ endl
cmp word[s_len],0
jg @b
.end_f:
ret
ret
endp
;----------------------------------------------------------
;--- ¯à®æ¥¤ãà  ¯à®à¨á®¢ª¨ ä®­  ----------------------------
@ -458,10 +449,11 @@ macro use_key_func
{
;Ž¡à ¡®âª  Shift ¤«ï á­ïâ¨ï ¢ë¤¥«¥­¨ï ­¥¨§¢¥áâ­®© ®¡« áâ¨
edit_box_key.shift: ;;;;;;;SHIFT
call edit_box.draw_bg
test word ed_flags,ed_shift
je edit_box_key.f_exit
@@: mov ebp,shift_color
mov ebp,shift_color
or word ed_flags,ed_shift_bac ;ãáâ ­®¢ª  ä« £ , ¢ë¤¥«¥­­®© ®¡« áâ¨
mov ebx,dword ed_shift_pos
call edit_box_key.sh_cl_
@ -592,6 +584,7 @@ edit_box_key.sh_st_of:
jne @f
test word ed_flags,ed_shift_bac
je @f
call edit_box.draw_bg
mov ebp,ed_color
mov ebx,dword ed_shift_pos
call edit_box_key.sh_cl_ ;®ç¨á⪠ ¢ë¤¥«¥­®£® äà £¬¥­â 
@ -1047,6 +1040,8 @@ edit_box_key.left:
or word ed_flags,ed_left_fl
call edit_box_key.sh_first_sh
dec dword ed_pos
call edit_box.draw_bg
call edit_box.draw_shift
call edit_box_key.sh_enable
jmp edit_box.draw_cursor_text
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -1058,6 +1053,8 @@ edit_box_key.right:
and word ed_flags,ed_right_fl
call edit_box_key.sh_first_sh
inc dword ed_pos
call edit_box.draw_bg
call edit_box.draw_shift
call edit_box_key.sh_enable
jmp edit_box.draw_cursor_text
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -1068,6 +1065,8 @@ edit_box_key.home:
call edit_box_key.sh_first_sh
xor eax,eax
mov ed_pos,eax
call edit_box.draw_bg
call edit_box.draw_shift
call edit_box_key.sh_home_end
jmp edit_box.draw_cursor_text
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@ -1078,6 +1077,8 @@ edit_box_key.end:
call edit_box_key.sh_first_sh
mov eax,ed_size
mov ed_pos,eax
call edit_box.draw_bg
call edit_box.draw_shift
call edit_box_key.sh_home_end
jmp edit_box.draw_cursor_text
;-----------------------------------------------------------------------------
@ -1194,6 +1195,10 @@ macro use_mouse_func
;--- Ž¡à ¡®âª  .mouse_wigwag
;----------------------------------------------------------
edit_box_mouse.mouse_wigwag:
push eax
call edit_box.draw_bg
call edit_box.draw_shift
pop eax
shr eax,16
or word ed_flags,ed_shift_bac+ed_shift_on+ed_shift
;;;;;;;;;;;;;;;;;;
@ -1258,8 +1263,6 @@ edit_box_mouse.m1_shem:
edit_box_mouse.mwigvag:
and word ed_flags,ed_shift_mcl
jmp edit_box.draw_cursor_text
; popa
; ret
edit_box_mouse.mleft:
mov eax,ed_pos
cmp eax,0
@ -1347,26 +1350,20 @@ edit_box_mouse._mshift:
@@:
test word ed_flags,ed_mouse_on
jne @f
mov dword ed_shift_pos,eax
or word ed_flags,ed_mouse_on
mov dword ed_pos,eax
; mov dword [mouse_flag],edi ;ãáâ ­®¢¨¬ ¨¤¥­â¨ä¨ª â®à
mov ebx,dword ed_mouse_variable
push edi
pop dword [ebx]
bts word ed_flags,1 ;ãáâ ­®¢ª  䮪ãá 
call edit_box.draw_bg
jmp edit_box_mouse.m_sh
@@:
cmp eax,dword ed_shift_pos ;¥á«¨ ¯®§¨æ¨¨ ­¥ ¨§¬¥­¨«¨áì
je edit_box.editbox_exit
mov ed_pos,eax
call edit_box.draw_bg
mov ebp,dword shift_color
mov ebx,dword ed_shift_pos
call edit_box_key.sh_cl_

View File

@ -187,7 +187,6 @@ fb_draw_panel_selection:
mov fb_start_draw_cursor_line,cx
mov ebx,fb_size_x
add cx,fb_start_y
;.1:
shl ecx,16
mov cx,fb_line_size_y
mov edx,fb_select_color
@ -209,7 +208,6 @@ fb_draw_panel_selection:
ret
;---------------------------------------------------------------------
fb_for_all_panel_selection:
; dec eax
xor edx,edx
mov dx,fb_line_size_y
imul eax,edx
@ -258,7 +256,6 @@ fb_draw_folder_data:
div ebx
cmp eax,fb_folder_block
je .end_1
;.continue_1:
popa
cmp eax,fb_max_panel_line
je .end_2
@ -302,11 +299,10 @@ fb_draw_folder_data:
mov ecx,fb_text_color
cmp fb_marked_file,0
je @f
mov ecx,fb_reduct_text_color ;0xff0000
mov ecx,fb_reduct_text_color
@@:
mov ax,fb_line_size_y
sub ax,fb_font_size_y
push ebx
mov bx,ax
shr ax,1
@ -315,10 +311,11 @@ fb_draw_folder_data:
inc ax
@@:
pop ebx
push ebx
add bx,ax
call .draw_name_temp_area
cmp fb_temp_counter,0
jz .continue
xor eax,eax
mov ax,fb_font_size_x
imul eax,fb_display_name_max_length
@ -326,40 +323,9 @@ fb_draw_folder_data:
push edx
add ebx,eax
mov esi,2
mov ecx,fb_reduct_text_color ;0xff0000
mov ecx,fb_reduct_text_color
mov edx,dword fb_truncated_filename_char
cmp fb_temp_counter,0
jne @f
mov edx,dword fb_truncated_filename_clear
mov ecx,fb_text_color
@@:
push edi
and ecx,0x30ffffff
add ecx,0x40000000
mov eax,fb_background_color
cmp fb_draw_panel_selection_flag,1
jne @f
mov eax,fb_select_color
@@:
mov edi,eax
mcall 4
pop edi
cmp fb_temp_counter,0
je .continue_1
push edi
mov eax,fb_background_color
cmp fb_draw_panel_selection_flag,1
jne @f
mov eax,fb_select_color
@@:
mov edi,eax
add ebx,1 shl 16
mcall 4
pop edi
.continue_1:
pop edx
.continue:
pop ebx
@ -371,42 +337,41 @@ fb_draw_folder_data:
;--------------------------------------
.draw_name_temp_area:
pusha
mov ebx,esi
mov eax,dword ' '
mov ecx,256/4
cld
push edi
mov edi,fb_name_temp_area
rep stosd
pop edi
mov eax,fb_max_name_temp_size
add eax,2
sub eax,esi
mov ecx,esi
mov esi,edx
mov ecx,ebx
cld
mov edi,fb_name_temp_area
cld
jcxz @f
rep movsb
cmp byte [edi-1],0
jnz @f
dec edi
inc eax
@@:
mov ecx,eax
shr ecx,2
mov eax,dword ' '
rep stosd
popa
pusha
mov edx,fb_name_temp_area
cmp fb_all_redraw,2
jne .draw_name_temp_area_1
jne @f
mov esi,fb_max_name_temp_size
and ecx,0xffffff
add ecx,0x40000000
add esi,2
@@:
bts ecx,30
mov eax,fb_background_color
cmp fb_draw_panel_selection_flag,1
jne @f
mov eax,fb_select_color
@@:
mov edi,eax
.draw_name_temp_area_1:
mcall 4
popa
ret
;--------------------------------------
.end_1:
@ -414,7 +379,6 @@ fb_draw_folder_data:
.end_2:
cmp fb_all_redraw,1
jne @f
mov ax,fb_start_y
add ax,fb_size_y
mov cx,bx
@ -433,9 +397,6 @@ fb_draw_folder_data:
mov edx,fb_background_color ;0xffffff
mcall 13
@@:
.end:
; mov fb_draw_scroll_bar,dword 1
ret
;---------------------------------------------------------------------
fb_clear_line:
@ -443,7 +404,6 @@ fb_clear_line:
pusha
shl ebx,16
shr ebx,16
; dec ebx
cmp fb_select_panel_counter,0
je .continue
mov ax,fb_start_draw_cursor_line
@ -459,7 +419,6 @@ fb_clear_line:
je .end
mov ebx,[esp+16]
mov cx,bx
; dec cx
rol ecx,16
mov cx,fb_line_size_y
mov bx,fb_size_x
@ -484,8 +443,8 @@ fb_draw_type_size_date:
mov fb_extension_size,0
jmp .start
.copy_type:
mov [eax],dword ' '
mov [eax+4],word ' '
mov [eax],dword ' '
mov [eax+4],word ' '
.start:
mov esi,edx
xor eax,eax
@ -499,7 +458,6 @@ fb_draw_type_size_date:
mov fb_temp_counter,esi
test [edx-40],byte 0x10
jnz .size
;@@:
dec esi
dec edx
@@:
@ -583,7 +541,6 @@ fb_draw_type_size_date:
jmp .call_decimal_string
@@:
mov eax,ebx
;.size_convert:
mov ebx,fb_type_table
add ebx,6
call fb_decimal_string_4
@ -638,14 +595,12 @@ fb_draw_type_size_date:
mov ecx,fb_text_color
cmp fb_marked_file,0
je @f
mov ecx,fb_reduct_text_color ;0xff0000
mov ecx,fb_reduct_text_color
@@:
mov edx,fb_type_table
mov esi,20
mov ax,fb_line_size_y
sub ax,fb_font_size_y
push ebx
mov bx,ax
shr ax,1
@ -655,18 +610,13 @@ fb_draw_type_size_date:
@@:
pop ebx
add bx,ax
cmp fb_all_redraw,2
jne .draw ;@f
and ecx,0xffffff
add ecx,0x40000000
bts ecx,30
mov eax,fb_background_color
cmp fb_draw_panel_selection_flag,1
jne @f
mov eax,fb_select_color
@@:
mov edi,eax
.draw:
mcall 4
popa
ret
@ -687,9 +637,7 @@ fb_draw_icon:
@@:
test [edx-40],byte 0x10
jnz .draw_dir_pic
call fb_get_icon_number
; mov ebx,2
imul ebx,eax ;16*16*3
jmp .draw
.draw_dir_pic:
@ -702,22 +650,17 @@ fb_draw_icon:
mov cx,fb_icon_size_x
shl ecx,16
mov cx,fb_icon_size_y
mov edx,[esp+16]
ror edx,16
sub edx,2
sub dx,fb_icon_size_x
rol edx,16
mov ax,fb_line_size_y
sub ax,fb_icon_size_y
shr ax,1
add dx,ax
mov esi,fb_resolution_raw
xor ebp,ebp
push edi
mov edi,fb_palette_raw
mcall 65
@ -926,8 +869,6 @@ fb_char_todown:
;---------------------------------------------------------------------
fb_truncated_filename_char:
db '..'
fb_truncated_filename_clear:
db ' '
;---------------------------------------------------------------------
;*****************************************************************************
;*****************************************************************************

View File

@ -160,12 +160,17 @@ m_get_mouse_flag equ [edi+116]
cmp ebp,m_cursor
jne .no_active_text
mov ecx,m_frnt_text_col
mov eax,m_menu_sel_col
jmp .active_text
.no_active_text:
mov ecx,m_bckg_text_col
mov eax,m_menu_col
.active_text:
add ecx,0x80000000
add ecx,0xC0000000
push edi
mov edi,eax
mcall 4
pop edi
call .get_next_text
inc ebp
add ebx,m_interval