forked from KolibriOS/kolibrios
icon_new: also fix RMB, thanks Prohor for found issue
asciivju: better code, bigger fonts quark: bugfixes git-svn-id: svn://kolibrios.org@7957 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
7c4990bd81
commit
4fa1e75fb3
@ -165,6 +165,7 @@ sh=/sys/shell
|
||||
asc=/sys/3d/view3ds
|
||||
|
||||
skn=/sys/skincfg
|
||||
dtp=/sys/skincfg
|
||||
lif=/kolibrios/demos/life2
|
||||
kla=/sys/games/klavisha
|
||||
pdf=/kolibrios/media/updf
|
||||
|
@ -1,5 +1,5 @@
|
||||
/*
|
||||
Quark Code Edit v0.2
|
||||
Quark Code Edit
|
||||
Author: Kiril Lipatov aka Leency
|
||||
Licence: GPLv2
|
||||
|
||||
@ -432,7 +432,7 @@ void EventChangeCharset(dword id)
|
||||
{
|
||||
if (param[0]=='\0') return;
|
||||
user_encoding = id;
|
||||
LoadFile(#openfile_path);
|
||||
LoadFile(#param);
|
||||
ParseAndPaint();
|
||||
draw_window();
|
||||
}
|
||||
@ -602,12 +602,13 @@ void EncodeToDos()
|
||||
if (strstr(io.buffer_data, "\208\190")) real_encoding = CH_UTF8;
|
||||
else {
|
||||
if (chrnum(io.buffer_data, '\246')>5)
|
||||
|| (strstr(io.buffer_data, "пр")) real_encoding = CH_CP1251;
|
||||
|| (strstr(io.buffer_data, "\239\240")) real_encoding = CH_CP1251;
|
||||
}
|
||||
}
|
||||
if (real_encoding != CH_CP866)
|
||||
if (real_encoding != CH_CP866) {
|
||||
ChangeCharset(real_encoding, "CP866", io.buffer_data);
|
||||
}
|
||||
}
|
||||
|
||||
void LoadFile(dword f_path)
|
||||
{
|
||||
|
@ -115,10 +115,10 @@ draw_magnify:
|
||||
sub edx, [m_y]
|
||||
mov ebx, ecx
|
||||
shl ebx, 3+16
|
||||
mov bl, 7
|
||||
mov bl, 8
|
||||
mov ecx, edx
|
||||
shl ecx, 3+16
|
||||
mov cl, 7
|
||||
mov cl, 8
|
||||
mov edx, eax
|
||||
mcall 13
|
||||
pop edx ecx
|
||||
|
@ -6,14 +6,15 @@ use32
|
||||
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 @@ button:
|
||||
|
||||
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 @@ proc draw_table _full_redraw
|
||||
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 @@ endp
|
||||
|
||||
|
||||
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 @@ proc draw_button
|
||||
|
||||
.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,35 +243,29 @@ endp
|
||||
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
|
||||
|
||||
|
||||
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 @@ quit:
|
||||
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_unfocused db 0
|
||||
symbol_focused db 0
|
||||
i_end:
|
||||
proc_info process_information
|
||||
sys_colors system_colors
|
||||
rb 0x400 ;stack
|
||||
e_end:
|
||||
|
@ -195,19 +195,26 @@ MSGMouse:
|
||||
mov [MouseY],ecx
|
||||
mov [MouseX],ebx
|
||||
|
||||
MOUSE_STATE_LMB_HOLD = $00000001
|
||||
MOUSE_STATE_RMB_HOLD = $00000002
|
||||
MOUSE_EVENT_LMB_DOWN = $00000100
|
||||
MOUSE_EVENT_RMB_DOWN = $00000200
|
||||
|
||||
mcall 37,3
|
||||
test eax,1b ; bit 0 is set = left button is held
|
||||
jnz @f
|
||||
jmp CheckRB
|
||||
;check LMB is pressed
|
||||
test eax, MOUSE_STATE_LMB_HOLD
|
||||
jz @f
|
||||
test eax, MOUSE_EVENT_LMB_DOWN
|
||||
jz @f
|
||||
jmp LButtonPress
|
||||
@@:
|
||||
test eax,100000000b ; bit 8 is set = left button is pressed
|
||||
jnz @f
|
||||
jmp CheckRB
|
||||
;check RMB is pressed
|
||||
test eax, MOUSE_STATE_RMB_HOLD
|
||||
jz @f
|
||||
test eax, MOUSE_EVENT_RMB_DOWN
|
||||
jz @f
|
||||
jmp RButtonPress
|
||||
@@:
|
||||
jnz LButtonPress
|
||||
CheckRB:
|
||||
jnz RButtonPress
|
||||
jmp messages
|
||||
|
||||
ErrLoadLibs:
|
||||
|
Loading…
Reference in New Issue
Block a user