Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 7956 → Rev 7957

/programs/develop/asciivju/trunk/asciivju.asm
6,14 → 6,15
include '../../../proc32.inc'
include '../../../macros.inc'
 
BUTTON_SIDE equ 16 ; button are squares
BUTTON_SPACE equ 19 ; space between cols and rows
BUTTON_ID_SHIFT equ 2 ; button_id = character + BUTTON_ID_SHIFT
TABLE_BEGIN_X equ 2
TABLE_BEGIN_Y equ 2
BUTTON_SIDE = 28 ; button are squares
BUTTON_SPACE = 34 ; space between cols and rows
BUTTON_ID_SHIFT = 2 ; button_id = character + BUTTON_ID_SHIFT
TABLE_BEGIN_X = 2
TABLE_BEGIN_Y = 2
PANEL_Y = BUTTON_SPACE*8+TABLE_BEGIN_Y+TABLE_BEGIN_Y
 
FOCUS_SQUARE_COLOR equ 0x000080FF
PAGE_SWITCHER_BLINK_COLOR equ 0x00808080
FOCUS_SQUARE_COLOR = 0x000080FF
SWITCHER_BLINK_COLOR = 0x00808080
 
 
start:
62,18 → 63,14
 
redraw:
mcall 9, proc_info, -1
mcall 48, 3, sys_colors, 40
 
mcall 12, 1
 
mcall 48, 4 ; get skin height
mov ecx, 300*0x10000+184
mov ecx, 200*0x10000+PANEL_Y+33
add ecx, eax
mov edx, 0x34000000
or edx, [sys_colors.work]
mov esi, 0x80000000
or esi, [sys_colors.grab_text]
mcall 0, <300,315>, , , , window_title
mov ebx, 200*0x10000+BUTTON_SPACE*16+TABLE_BEGIN_X+TABLE_BEGIN_X+9
mcall 0, , , 0x34AAAaaa, 0x80000000, window_title
test [proc_info.wnd_state], 0x04
jnz @f
 
176,7 → 173,7
ret
@@: inc [symbol_current]
add [button_x], BUTTON_SPACE
cmp [button_x], 306 ; the last in row?
cmp [button_x], BUTTON_SPACE*16+TABLE_BEGIN_X ; the last in row?
jne .next_button
add [button_y], BUTTON_SPACE ; next row
mov [button_x], TABLE_BEGIN_X
186,19 → 183,14
 
 
proc draw_button
mov ebx, [button_x]
shl ebx, 16
mov bx, BUTTON_SIDE
mov ecx, [button_y]
shl ecx, 16
mov cx, BUTTON_SIDE
mov edx, 0x80000000
mov dl, [symbol_current]
add edx, BUTTON_ID_SHIFT
mcall 8, , ,
mov esi, 0xFFFfff
mcall 8, <[button_x],BUTTON_SIDE>, <[button_y],BUTTON_SIDE>
and edx, 0x7FFFFFFF
or edx, 0x20000000
mcall , , , , [sys_colors.work_button]
mcall
 
test edi, edi ; is focused?
jz .symbol ; draw only character, not selection square
238,11 → 230,11
 
.symbol:
mov ebx, [button_x]
add ebx, 6
add ebx, 9
shl ebx, 16
add ebx, [button_y]
add ebx, 5
mcall 4, , [sys_colors.work_button_text], symbol_current, 1
add ebx, 7
mcall 4, , 0x01000000, symbol_current, 1
 
ret
endp
251,20 → 243,20
proc draw_page_switcher _blinking
 
mcall 8, , , 0x8000FFAA
 
mov esi, [sys_colors.work_button]
mov esi, 0xCCCccc
cmp [_blinking], 1 ; blinking?
jne @f
mov esi, PAGE_SWITCHER_BLINK_COLOR
@@: mcall , <2,60>, <157,19>, 0x2000FFAA
mov esi, SWITCHER_BLINK_COLOR
@@: mcall , <2,98>, <PANEL_Y+1,23>, 0x2000FFAA
 
mov ecx, 0x80000000
or ecx, [sys_colors.work_button_text]
mov ecx, 0x81000000
mov edx, string_000_127
cmp [symbol_start], 0 ; first page?
je @f
mov edx, string_128_255 ; ok, the second one
@@: mcall 4, <11,164>,
@@: mcall 4, <10,PANEL_Y+6>,
mcall , <115,PANEL_Y+6>, 0x81000000, string_ASCII_CODE
 
ret
endp
 
271,15 → 263,9
 
proc draw_codes
 
mov ecx, 0x80000000
or ecx, [sys_colors.work_text]
mcall 4, <80,164>, , string_ASCII_CODE
mcall , <180,164>, , string_ASCII_HEX_CODE
movzx ecx, [symbol_focused]
mov esi, 0x40000000
or esi, [sys_colors.work_text]
mcall 47, 0x00030000, , <152,164>, , [sys_colors.work]
mcall , 0x00020100, , <276,164>,
mcall 47, 0x00030000, , <250,PANEL_Y+6>, 0x41000000, 0xAAAaaa
mcall , 0x00020100, , <500,PANEL_Y+6>,
 
ret
endp
289,11 → 275,10
mcall -1
 
 
szZ window_title ,'ASCIIVju v0.4'
szZ window_title ,'ASCIIVju'
szZ string_000_127 ,'000-127'
szZ string_128_255 ,'128-255'
szZ string_ASCII_CODE ,'ASCII Code: '
szZ string_ASCII_HEX_CODE ,'ASCII Hex-Code: '
szZ string_ASCII_CODE ,'ASCII Code: ASCII Hex-Code:'
 
button_x dd 2
button_y dd 2
305,6 → 290,5
symbol_focused db 0
i_end:
proc_info process_information
sys_colors system_colors
rb 0x400 ;stack
e_end: