forked from KolibriOS/kolibrios
function 71.2
git-svn-id: svn://kolibrios.org@6802 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
parent
fb9e611d64
commit
4ded9c23de
@ -429,9 +429,7 @@ struct PROC
|
||||
ht_lock rd 1
|
||||
ht_free rd 1 ;htab[0] stdin
|
||||
ht_next rd 1 ;htab[1] stdout
|
||||
htab rd (4096-$)/4 ;htab[2] stderr
|
||||
; htab rd (4096+3072-$)/4 ;htab[2] stderr
|
||||
; workdir rb 1024
|
||||
htab rd 1024-PROC.htab/4 ;htab[2] stderr
|
||||
pdt_0 rd 1024
|
||||
ends
|
||||
|
||||
@ -492,7 +490,6 @@ struct APPDATA
|
||||
draw_bgr_x dd ? ;+116
|
||||
draw_bgr_y dd ? ;+120
|
||||
dd ? ;+124
|
||||
|
||||
wnd_shape dd ? ;+128
|
||||
wnd_shape_scale dd ? ;+132
|
||||
dd ? ;+136
|
||||
@ -504,7 +501,8 @@ struct APPDATA
|
||||
debugger_slot dd ? ;+172
|
||||
terminate_protection dd ? ;+176
|
||||
keyboard_mode db ? ;+180
|
||||
rb 3
|
||||
captionEncoding db ?
|
||||
rb 2
|
||||
exec_params dd ? ;+184
|
||||
dbg_event_mem dd ? ;+188
|
||||
dbg_regs DBG_REGS ;+192
|
||||
|
@ -4346,22 +4346,24 @@ Architecture Software Developer's Manual, Volume 3, Appendix B);
|
||||
eax - SF_FILE (70)
|
||||
[ebx] - SSF_CREATE_FOLDER (9)
|
||||
======================================================================
|
||||
=== Функция 71, подфункция 1 - установить заголовок окна программы. ==
|
||||
========== Функция 71 - установить заголовок окна программы ==========
|
||||
======================================================================
|
||||
Параметры:
|
||||
* eax = 71 - номер функции
|
||||
* ebx = 1 - номер подфункции
|
||||
* ebx = 1
|
||||
* ecx = адрес строки заголовка,
|
||||
строка может начинаться с байта кодировки:
|
||||
1 = cp866
|
||||
2 = UTF-16LE
|
||||
3 = UTF-8
|
||||
или:
|
||||
* ebx = 2
|
||||
* ecx = адрес строки заголовка
|
||||
* dl = кодировка строки
|
||||
Возвращаемое значение:
|
||||
* функция не возвращает значения
|
||||
Замечания:
|
||||
* Строка заголовка должна заканчиваться нулём.
|
||||
* Можно указать кодировку заголовка,
|
||||
поместив в начале строки байт со значениями:
|
||||
1 = cp866
|
||||
2 = UTF-16LE
|
||||
3 = UTF-8
|
||||
иначе будет использоваться cp866.
|
||||
* Чтобы убрать заголовок, передайте NULL в ecx.
|
||||
|
||||
---------------------- Константы для регистров: ----------------------
|
||||
|
@ -4301,21 +4301,23 @@ Remarks:
|
||||
eax - SF_FILE (70)
|
||||
[ebx] - SSF_CREATE_FOLDER (9)
|
||||
======================================================================
|
||||
========== Function 71, subfunction 1 - set window caption. ==========
|
||||
================== Function 71 - set window caption ==================
|
||||
======================================================================
|
||||
Parameters:
|
||||
* eax = 71 - function number
|
||||
* ebx = 1 - subfunction number
|
||||
* ecx = pointer to zero terminated string
|
||||
Returned value:
|
||||
* function does not return value
|
||||
Remarks:
|
||||
* You may set the caption string encoding by putting
|
||||
at the start of the string a byte with next values:
|
||||
* ebx = 1
|
||||
* ecx = pointer to zero terminated string,
|
||||
the string may start with an encoding byte:
|
||||
1 = cp866
|
||||
2 = UTF-16LE
|
||||
3 = UTF-8
|
||||
otherwise will be used cp866.
|
||||
or:
|
||||
* ebx = 2
|
||||
* ecx = pointer to zero terminated string
|
||||
* dl = string encoding
|
||||
Returned value:
|
||||
* function does not return value
|
||||
Remarks:
|
||||
* Pass NULL in ecx to remove caption.
|
||||
|
||||
---------------------- Constants for registers: ----------------------
|
||||
|
@ -361,8 +361,17 @@ syscall_window_settings: ;///// system function 71 ////////////////////////////
|
||||
;------------------------------------------------------------------------------
|
||||
mov edi, [CURRENT_TASK]
|
||||
shl edi, 5
|
||||
mov [edi * 8 + SLOT_BASE + APPDATA.wnd_caption], ecx
|
||||
or [edi + window_data + WDATA.fl_wstyle], WSTYLE_HASCAPTION
|
||||
cmp ebx, 2
|
||||
jz @f
|
||||
xor edx, edx
|
||||
@@:
|
||||
cmp dl, 4
|
||||
jc @f
|
||||
xor edx, edx
|
||||
@@:
|
||||
mov [edi*8 + SLOT_BASE + APPDATA.wnd_caption], ecx
|
||||
mov [edi*8 + SLOT_BASE + APPDATA.captionEncoding], dl
|
||||
jmp window._.draw_window_caption
|
||||
;------------------------------------------------------------------------------
|
||||
align 4
|
||||
@ -2244,6 +2253,9 @@ align 4
|
||||
mov esi, eax
|
||||
add ebx, ebp
|
||||
mov ecx, [common_colours + 16]
|
||||
mov al, [edi*8 + SLOT_BASE + APPDATA.captionEncoding]
|
||||
test al, al
|
||||
jnz @f
|
||||
mov al, 1
|
||||
cmp byte [edx], 4
|
||||
jnc @f
|
||||
|
Loading…
Reference in New Issue
Block a user