/programs/system/panel/trunk/detect.asm |
---|
File deleted |
/programs/system/panel/trunk/@PANEL |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/panel/trunk/@PANEL.ASM |
---|
15,7 → 15,8 |
dd 0x0,0x0 ; param, icon |
include 'lang.inc' |
include '..\..\..\macros.inc' |
include 'macros.inc' |
include 'moi.inc' ;à ᪫ ¤ª¨ ª« ¢¨ âãàë |
width dd 305 |
buttons dd 1 ; 0 no frames ; 1 frames |
32,6 → 33,7 |
PANEL_HEIGHT = 18 |
handle_key: |
mcall 18, 7 |
42,6 → 44,25 |
jnz begin_1.ret |
mov ebx, exec_fileinfo |
shr eax, 8 |
cmp al, 0 |
je prod |
mov [key_r],al |
sub [key_r],2 |
cmp al, 2 |
jz alter |
cmp al, 3 |
jz alter |
cmp al, 4 |
jz alter |
cmp al, 5 |
jz alter |
cmp al, 6 |
jz alter |
cmp al, 7 |
jz alter |
cmp al, 8 |
jz alter |
prod: |
cmp al, 15 |
jz alt_tab_pressed |
cmp al, 88 |
62,7 → 83,9 |
jz alt_tab_released |
@@: |
; this is hotkey Ctrl+Shift ;or LShift+RShift |
mov ebx, setup_exec |
jmp karu |
; mov ebx, setup_exec |
; test ah, 001100b |
; jz change_sys_lang |
change_key_lang: |
311,14 → 334,16 |
START: |
mov eax, 51 |
mov ebx, 1 |
mov ecx, detect_start |
mov edx, detect_stack |
int 0x40 |
; mov eax, 51 |
; mov ebx, 1 |
; mov ecx, detect_start |
; mov edx, detect_stack |
; int 0x40 |
mcall 66,4,0,2 ; LShift+RShift |
mcall 66, , ,11h ; Ctrl+Shift |
mcall 66,,88,110h ; Alt+Ctrl+F12 |
mcall 66,,91,0h ; LWin |
mcall 66,,92,0h ; RWin |
mcall 66,,91,100h ; Alt+LWin |
mcall 66,,92 ; Alt+RWin |
mcall 66,,62 ; Alt+F4 |
325,7 → 350,15 |
mcall 66,,71 ; Alt+Home |
mcall 66,,72 ; Alt+Up |
mcall 66,,15 ; Alt+Tab |
mcall 66,,2 ; Alt+1 |
mcall 66,,3 ; Alt+2 |
mcall 66,,4 ; Alt+3 |
mcall 66,,5 ; Alt+4 |
mcall 66,,6 ; Alt+5 |
mcall 66,,7 ; Alt+6 |
mcall 66,,8 ; Alt+7 |
mcall 66,,,101h ; Alt+Shift+Tab |
mcall 18, 8, 1 |
test eax, eax |
jne @f |
357,9 → 390,16 |
mcall 14 |
mov [screen_size],eax |
mcall 48,5 |
;mcall 48,5 ; barsuk { |
mov eax, 14 |
int 0x40 |
mov ecx,eax |
lea edx,[ebx-PANEL_HEIGHT-1] |
;eax = [xsize]*65536 + [ysize], £¤¥ |
shr ecx, 16 |
and eax, 0xFFFF |
lea edx,[eax-PANEL_HEIGHT-1] |
; barsuk } |
mcall 48,6 |
; // Alver 26.08.2007 // { |
384,6 → 424,8 |
mov eax, 23 |
mov ebx, 30 |
int 0x40 |
call load_ini |
call fir_lng |
still: |
; mcall 13,<390,70>,<3,11>,0xffffff |
393,6 → 435,40 |
call draw_info |
call draw_running_applications |
mov eax, 18 ; check if active window changed |
mov ebx, 7 ; barsuk |
int 0x40 |
cmp eax, [last_active_window] |
jz @f |
; need_window_tab: |
; in: ebx->process info |
; out: ZF set <=> do not draw |
mov ebx, [last_active_window] |
mov [prev_active_window], ebx |
mov [last_active_window], eax |
mov ecx, eax |
mov eax, 9 |
mov ebx, process_info_buffer |
int 0x40 |
call need_window_tab |
jnz .need_repaint |
mov eax, 9 |
mov ebx, process_info_buffer |
mov ecx, [prev_active_window] |
int 0x40 |
call need_window_tab |
jz @f |
.need_repaint: |
mov dword [active_window_changed], 1 |
@@: |
mov eax, 23 |
mov ebx, 20 |
int 0x40 |
402,10 → 478,18 |
cmp eax,3 ; button ? |
jz button |
call handle_key |
cmp dword [active_window_changed], 0 |
jnz red_active |
jmp still |
red_active: ; barsuk |
red: ; redraw window |
mov dword [active_window_changed], 0 |
mcall 14 |
movzx ecx,ax |
mov edx,eax |
421,6 → 505,7 |
mcall 67,0,,,PANEL_HEIGHT |
.lp1: |
call draw_window |
call draw_info |
jmp still |
429,6 → 514,9 |
mov eax,17 |
int 0x40 |
cmp al, 0 ; barsuk |
jnz right_mouse |
cmp ah,50 |
jb no_activate |
cmp ah,70 |
446,6 → 534,51 |
; je still |
mcall 55,eax, , ,activatemusic |
jmp still |
right_mouse: ; barsuk |
cmp ah,50 |
jb still |
cmp ah,70 |
jg still |
movzx ecx,byte ah |
sub ecx,52 |
cmp ecx, [app_tab_count] |
jge still |
shl ecx,2 |
mov eax, 37 |
mov ebx, 0 |
int 0x40 |
mov ebx, eax |
shr eax, 16 |
mov [x_coord], ax |
and ebx, 0xFFFF |
mov [y_coord], bx |
mov eax, 9 |
mov ecx,[app_list+ecx] ; ecx->selected app.slot |
mov [n_slot], ecx |
mov ebx, procinfo_for_detect |
int 0x40 |
; cmp dword [procinfo_for_detect+process_information.slot_state],9 |
; jz still |
mov eax, 51 |
mov ebx, 1 |
mov ecx, context_menu_start |
mov edx, ctx_menu_stack |
int 0x40 |
mov [ctx_menu_PID], eax |
jmp still |
no_activate: |
684,6 → 817,13 |
redraw_window_tabs: |
xor edi, edi |
mov [contrast], 0 |
push ebp ; barsuk { |
mov eax, 18 |
mov ebx, 7 |
int 0x40 |
mov ebp, eax ; barsuk } |
.loop: |
mov ecx, [app_list+edi*4] |
cmp ecx, -1 |
701,7 → 841,9 |
add ebx, 12*10*10000h + 7*10000h + 54 |
; } // Alver // |
mov ecx, 3*10000h + 14 |
xor edx, edx |
; xor edx, edx |
mov edx, 0x383838 ; barsuk |
int 0x40 |
sub ebx, 10000h + 53 |
mov ecx, 4*10000h + 12 |
716,20 → 858,12 |
mov ecx, 5*10000h + 10 |
int 0x40 |
mov edx, 0x88FF |
xor [contrast], 1 |
jz @f |
mov dh, 0x55 |
mov edx, [wcolor] ; barsuk |
cmp ebp, [esp] ; [esp]=saved ecx=active slot number |
jnz @f |
mov edx, [system_colours.work_button] |
@@: |
pop ecx |
mov esi, [current_alt_tab_app] |
cmp esi, -1 |
jz @f |
cmp ecx, [alt_tab_list+esi*8] |
jnz @f |
; xor edx, 0xFFFFFF |
mov edx, 0xFF8000 |
@@: |
sub ebx, 55*10000h - 53 |
mov ecx, 4*10000h + 12 |
int 0x40 |
741,15 → 875,17 |
mov eax, 4 |
sub ebx, 51*10000h - 6 |
mov ecx, 0xffffff ;[wcolor] |
mov ecx, [system_colours.work_button_text] ;0xffffff |
mov edx, 0x8000+10 |
mov esi, 11 |
int 0x40 |
.nodraw: |
inc edi |
cmp edi, [max_applications] |
jb .loop |
.done: |
pop ebp |
ret |
calculate_applications: |
792,6 → 928,8 |
cmp eax,ecx |
jge cnewpr |
mov [app_tab_count], edi ; barsuk |
ret |
1244,7 → 1382,7 |
mov ecx,0*65536+0 |
mov edx,[wcolor] |
add edx,0x161616 |
newline: |
newline_: ; debug.inc has macros with the same name |
sub edx,0x040404 |
mov eax,38 |
cmp [soften_up],1 |
1269,7 → 1407,7 |
add ecx,1*65536+1 |
cmp cx,5 |
jb newline |
jb newline_ |
cmp [soften_middle],1 |
jne no_sm |
1435,7 → 1573,8 |
mov eax,13 |
mov ebx,12 shl 16+44 ;51 |
mov ecx,1 shl 16+17 |
xor edx,edx |
; xor edx,edx |
mov edx, 0x383838 |
int 0x40 |
; mov ebx,63 shl 16+1 |
mov ebx,56 shl 16+1 |
2127,7 → 2266,7 |
popad |
ret |
include 'detect.asm' |
;;;include 'detect.asm' |
include 'ctx_menu.asm' |
; DATA |
2156,11 → 2295,11 |
lsz m_text,\ |
ru, " ",\ |
en, "MENU",\ |
et, "MENÜÜ" |
et, "MEN--" |
mi_text db 'WAVETETRBGRDGPL ' |
flag_text db 'EnFiGeRuFrEt' |
flag_text db 'EnFiGeRuFrEtUa' |
type_lang db 0 |
;music_type db 1 |
2266,7 → 2405,7 |
this_slot dd 0 ; Slot of this process |
max_slot dd 255 |
system_colours rd 10 |
system_colours system_colors ; rd 10 |
app_list rd 50 |
alt_tab_list rd 256*2 |
alt_tab_list_size dd ? |
2282,4 → 2421,10 |
panel_x_pos rd 1 |
panel_y_pos rd 1 |
image: |
last_active_window dd 0 |
prev_active_window dd 0 |
active_window_changed dd 0 |
app_tab_count dd 0 |
image: |
/programs/system/panel/trunk/CHAR.MT |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/panel/trunk/CHAR2.MT |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/panel/trunk/KEYMAP.KEY |
---|
Cannot display: file marked as a binary type. |
svn:mime-type = application/octet-stream |
Property changes: |
Added: svn:mime-type |
+application/octet-stream |
\ No newline at end of property |
/programs/system/panel/trunk/LANG.INI |
---|
0,0 → 1,28 |
[start] |
startlng = 4 |
[comkey] |
ccomkey1 = 1 |
ccomkey2 = 4 |
ccomkey3 = 7 |
[altkey] |
altkey1 = 1 |
altkey2 = 4 |
altkey3 = 7 |
altkey4 = 3 |
altkey5 = 5 |
altkey6 = 6 |
altkey7 = 2 |
altkey8 = 0 |
altkey9 = 0 |
altkey0 = 0 |
[langs] |
1 = En |
2 = Fi |
3 = Ge |
4 = Ru |
5 = Fr |
6 = Et |
7 = Ua |
/programs/system/panel/trunk/MOI.INC |
---|
0,0 → 1,379 |
load_ini: |
mov [point2],16h |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [firini],al |
mov [point2],32h |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [lngcrc1],al |
mov [point2],42h |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [lngcrc2],al |
mov [point2],52h |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [lngcrc3],al |
mov [point2],06eh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng1],al |
mov [point2],07eh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng2],al |
mov [point2],08eh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng3],al |
mov [point2],09eh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng4],al |
mov [point2],0aeh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng5],al |
mov [point2],0beh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng6],al |
mov [point2],0ceh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng7],al |
mov [point2],0deh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng8],al |
mov [point2],0eeh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng9],al |
mov [point2],0feh |
mcall 70,get_ini |
mov al,[inicont] |
sub al,30h |
mov [altlng0],al |
ret |
fir_lng: |
mov al,[firini] |
sub al,1 |
mov dx,384 |
mul dx |
mov [point],eax |
mcall 70,get_key |
mov eax,21 |
mov ebx,2 |
mov ecx,1 |
mov edx,en_keymap |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_shift |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_alt |
mcall |
mov eax,21 |
mov ecx,9 |
movzx edx,[firini] |
mcall |
ret |
karu: |
add [key_r2],1 |
cmp [key_r2],3 |
jb .altes |
mov [key_r2],0 |
.altes: |
cmp [key_r2],0 |
je .klt_1 |
cmp [key_r2],1 |
je .klt_2 |
cmp [key_r2],2 |
je .klt_3 |
jmp still |
.klt_1: |
mov al,[lngcrc1] |
sub al,1 |
mov [key_r],al |
jmp alted |
.klt_2: |
mov al,[lngcrc2] |
sub al,1 |
mov [key_r],al |
jmp alted |
.klt_3: |
mov al,[lngcrc3] |
sub al,1 |
mov [key_r],al |
jmp alted |
ret |
alter: |
cmp [key_r],0 |
je .alt_1 |
cmp [key_r],1 |
je .alt_2 |
cmp [key_r],2 |
je .alt_3 |
cmp [key_r],3 |
je .alt_4 |
cmp [key_r],4 |
je .alt_5 |
cmp [key_r],5 |
je .alt_6 |
cmp [key_r],6 |
je .alt_7 |
.alt_1: |
mov al,[altlng1] |
cmp al,0 |
je .exit |
sub al,1 |
mov [key_r],al |
jmp alted |
.alt_2: |
mov al,[altlng2] |
cmp al,0 |
je .exit |
sub al,1 |
mov [key_r],al |
jmp alted |
.alt_3: |
mov al,[altlng3] |
cmp al,0 |
je .exit |
sub al,1 |
mov [key_r],al |
jmp alted |
.alt_4: |
mov al,[altlng4] |
cmp al,0 |
je .exit |
sub al,1 |
mov [key_r],al |
jmp alted |
.alt_5: |
mov al,[altlng5] |
cmp al,0 |
je .exit |
sub al,1 |
mov [key_r],al |
jmp alted |
.alt_6: |
mov al,[altlng6] |
cmp al,0 |
je .exit |
sub al,1 |
mov [key_r],al |
jmp alted |
.alt_7: |
mov al,[altlng7] |
cmp al,0 |
je .exit |
sub al,1 |
mov [key_r],al |
jmp alted |
.exit: |
ret |
alted: |
cmp [key_r],0 |
je alt_1 |
cmp [key_r],1 |
je alt_2 |
cmp [key_r],2 |
je alt_3 |
cmp [key_r],3 |
je alt_4 |
cmp [key_r],4 |
je alt_5 |
cmp [key_r],5 |
je alt_6 |
cmp [key_r],6 |
je alt_7 |
ret |
alt_1: |
mov [point],0 |
mcall 70,get_key |
mov eax,21 ; english 0 |
mov ebx,2 |
mov ecx,1 |
mov edx,en_keymap |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_shift |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,1 |
mcall |
ret |
alt_2: |
mov [point],384 |
mcall 70,get_key |
mov eax,21 ; russian |
mov ebx,2 |
mov ecx,1 |
mov edx,en_keymap |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_shift |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,2 |
mcall |
ret |
alt_3: |
mov [point],768 |
mcall 70,get_key |
mov eax,21 ; german |
mov ebx,2 |
mov ecx,1 |
mov edx,en_keymap |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_shift |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,3 |
mcall |
ret |
alt_4: |
mov [point],1152 |
mcall 70,get_key |
mov eax,21 ;french |
mov ebx,2 |
mov ecx,1 |
mov edx,en_keymap |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_shift |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_alt |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,4 |
mcall |
ret |
alt_5: |
mov [point],1536 |
mcall 70,get_key |
mov eax,21 ; finnish |
mov ebx,2 |
mov ecx,1 |
mov edx,en_keymap |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_shift |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,5 |
mcall |
ret |
alt_6: |
mov [point],1920 |
mcall 70,get_key |
mov eax,21 ; estonian |
mov ebx,2 |
mov ecx,1 |
mov edx,en_keymap |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_shift |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,6 |
mcall |
ret |
alt_7: |
mov [point],2304 |
mcall 70,get_key |
mov eax,21 ; Ukrainian |
mov ebx,2 |
mov ecx,1 |
mov edx,en_keymap |
mcall |
mov eax,21 |
inc ecx |
mov edx,en_keymap_shift |
mcall |
mov eax,21 |
mov ecx,9 |
mov edx,7 |
mcall |
ret |
en_keymap: |
rb 128 |
en_keymap_shift: |
rb 128 |
en_keymap_alt: |
rb 128 |
key_r db 0 |
key_r2 db 0 |
key_r3 db 0 |
inicont db 0 |
firini db 0 |
lngcrc1 db 0 |
lngcrc2 db 0 |
lngcrc3 db 0 |
altlng1 db 0 |
altlng2 db 0 |
altlng3 db 0 |
altlng4 db 0 |
altlng5 db 0 |
altlng6 db 0 |
altlng7 db 0 |
altlng8 db 0 |
altlng9 db 0 |
altlng0 db 0 |
get_key: |
dd 0 |
point dd 0 |
dd 0 |
dd 384 |
dd en_keymap |
db 0 |
dd key_file |
get_ini: |
dd 0 |
point2 dd 0 |
dd 0 |
dd 1 |
dd inicont |
db 0 |
dd ini_file |
key_file: db '/rd/1/keymap.key',0 |
ini_file: db '/rd/1/lang.ini',0 |
/programs/system/panel/trunk/ctx_menu.asm |
---|
50,6 → 50,7 |
ctx_menu_button: |
mov eax, 17 |
int 0x40 |
cmp ah, 1 |
; // Alver 26.08.2007 // { |
; jne ctx_menu_still |
104,6 → 105,7 |
jmp ctx_menu_still |
ctx_menu_exit: |
xor eax, eax |
dec eax ; mov eax, -1 |
int 0x40 |
/programs/system/panel/trunk/readme.txt |
---|
0,0 → 1,9 |
Òåïåðü ïàíåëü ÷èòàåò íàñòðîéêè ïåðåêëþ÷àòåëÿ ðàñêëàäîê ñ âíåøíåãî ôàéëà lang.ini, |
à ñàìè ðàñêëàäêè ñ ôàéëà keymap.key |
keymap.key ïðåäñòàâëÿåò ñîáîé ôàéë ñ áëîêîâ äàííûõ ïî 384 áàéòà, 128 áàéò ïðîñòàÿ |
ðàñêëàäêà, ïîòîì 128 áàéò ñ shift,è 128 ñ alt |
â lang.ini ÿçûêè îáîçíà÷åíû öèôðàìè, ñîãëàñíî ñïèñêà. ìîæíî çàäàòü íà÷àëüíûé ÿçûê, |
àçûêè ïåðåêëþ÷àþùèåñÿ ïî ctrl+shift, (èõ 3 øòóêè) è ÿçûêè, ðàáîòàþùèå ñ alt+öèôðà |
(7 øòóê, ïîêà âñå ðàñêëàäêè, ÷òî åñòü â íàëè÷èè) ïîäïðàâèë ðàñêëàäêó ôðàíöóçñêîãî. |
lang.ini, è keymap.key êèíóòü â îáðàç, âìåñòå ñ ïàíåëüþ... íàñòðîéêè ïðèìåíÿþòñÿ |
ïîñëå ïåðåçàãðóçêè...:) |