Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 8993 → Rev 8288

/programs/system/colrdial/color_dialog.asm
109,8 → 109,7
START:
mcall SF_SYS_MISC,SSF_HEAP_INIT
;mcall SF_KEYBOARD,SSF_SET_INPUT_MODE,1
mcall SF_SET_EVENTS_MASK,EVM_REDRAW+EVM_KEY+\
EVM_BUTTON+EVM_MOUSE+EVM_MOUSE_FILTER
mcall SF_SET_EVENTS_MASK,0x27
;--------------------------------------
load_libraries l_libs_start,end_l_libs
test eax,eax
126,13 → 125,9
mov [palette_SIZE_Y],eax
mov [tone_SIZE_X],eax
mov [tone_SIZE_Y],eax
;set the last used color as a current one
mov eax,[communication_area]
add eax,28
mov eax,[eax]
mov eax,0xff0000
mov [tone_color],eax
mov [selected_color],eax
mov [tone_color],eax
call prepare_scrollbars_position_from_color
;--------------------------------------
mov ecx,[palette_SIZE_Y]
156,8 → 151,6
align 4
red:
call draw_window
;mov ah,0
;jmp button.history_click
;---------------------------------------------------------------------
align 4
still:
197,8 → 190,6
ja @f
 
sub ah,30
.history_click:
movzx eax,ah
shl eax,2
add eax,[communication_area]
311,7 → 302,7
add edi,28
mov ecx,10
cld
mov eax,0x06BEEE
mov eax,0xffffff
rep stosd
@@:
ret
421,13 → 412,8
align 4
key:
mcall SF_GET_KEY
test word[edit1.flags],10b ;ed_focus
jne @f
cmp ah,027 ; Esc
je button.exit
jmp still
@@:
je still
stdcall [edit_box_key], edit1
stdcall conv_str_to_int, [edit1.text]
cmp [selected_color],eax
479,8 → 465,8
align 4
draw_selected_color:
mcall SF_DRAW_RECT,<c_start_x,c_size_x>,<c_start_y,c_size_y>,[selected_color]
stdcall hex_in_str, sz_0x,[selected_color],6
mov byte[sz_0x+6],0
stdcall hex_in_str, sz_0x+2,[selected_color],6
mov byte[sz_0x+8],0
stdcall [edit_box_set_text],edit1,sz_0x
stdcall [edit_box_draw],edit1
ret
656,9 → 642,9
endp
;---------------------------------------------------------------------
;input:
; buf - pointer hexadecimal string
; buf - указатель на строку, число должно быть в 10 или 16 ричном виде
;output:
; eax - number
; eax - число
align 4
proc conv_str_to_int uses ebx ecx esi, buf:dword
xor eax,eax
665,10 → 651,45
xor ebx,ebx
mov esi,[buf]
 
.cycle_16: ;считывание 16-ричных цифр
;на случай если перед числом находятся пробелы
@@:
cmp byte[esi],' '
jne @f
inc esi
jmp @b
@@:
 
;определение отрицательных чисел
xor ecx,ecx
inc ecx
cmp byte[esi],'-'
jne @f
dec ecx
inc esi
@@:
 
cmp word[esi],'0x'
je .load_digit_16
 
.load_digit_10: ;считывание 10-тичных цифр
mov bl,byte[esi]
cmp bl,'0'
jl @f
cmp bl,'9'
jg @f
sub bl,'0'
imul eax,10
add eax,ebx
inc esi
jmp .load_digit_10
jmp @f
 
.load_digit_16: ;считывание 16-ричных цифр
add esi,2
.cycle_16:
mov bl,byte[esi]
cmp bl,'0'
jl @f
cmp bl,'f'
jg @f
cmp bl,'9'
/programs/system/colrdial/i_data.inc
241,8 → 241,8
.font_backgr_color dd 0xEEEeee ;+44
;---------------------------------------------------------------------
mouse_dd dd edit1
edit1 edit_box ed_size_x, c_start_x+c_size_x+5, c_start_y, 0xffffff, 0xa0a0a0, 0xff, 0, 0x10000000, 6, string1, mouse_dd, 0
sz_0x db '______',0,0
string1 rb 8
edit1 edit_box ed_size_x, c_start_x+c_size_x+10, c_start_y, 0xffffff, 0xa0a0a0, 0xff, 0, 0, 8, string1, mouse_dd, 0
sz_0x db '0x______',0,0
string1 rb 10
;---------------------------------------------------------------------
OK_Cancel db 'OK Cancel',0
/programs/system/colrdial/color_dialog.bat
1,5 → 1,6
@erase lang.inc
@echo lang fix en >lang.inc
@fasm color_dialog.asm colrdial
@kpack colrdial
@erase lang.inc
@pause
/programs/system/colrdial/palette.inc
18,7 → 18,7
mov edx,[offset_y]
;-------------------------------------------
xor ecx,ecx
mov eax,0xFF0000 ;there was [tone_area] which seems to be a bug
mov eax,[tone_color]
;-------------------------------------------
align 4
@@: