Rev 6078 | Rev 6246 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 6078 | Rev 6240 | ||
---|---|---|---|
Line 23... | Line 23... | ||
23 | * eax = 0 - номер функции |
23 | * eax = 0 - номер функции |
24 | * ebx = [координата по оси x]*65536 + [размер по оси x] |
24 | * ebx = [координата по оси x]*65536 + [размер по оси x] |
25 | * ecx = [координата по оси y]*65536 + [размер по оси y] |
25 | * ecx = [координата по оси y]*65536 + [размер по оси y] |
26 | * edx = 0xXYRRGGBB, где: |
26 | * edx = 0xXYRRGGBB, где: |
27 | * Y = стиль окна: |
27 | * Y = стиль окна: |
28 | * Y=0 - тип I - окно фиксированных размеров |
- | |
29 | * Y=1 - только определить область окна, ничего не рисовать |
28 | * Y=1 - только определить область окна, ничего не рисовать |
30 | * Y=2 - тип II - окно изменяемых размеров |
- | |
31 | * Y=3 - окно со скином |
29 | * Y=3 - окно со скином |
32 | * Y=4 - окно со скином фиксированных размеров |
30 | * Y=4 - окно со скином фиксированных размеров |
- | 31 | * Y=0,2 эти стили являются устаревшими и не должны более использоваться, |
|
- | 32 | они оставлены для совместимости со старыми приложениями |
|
33 | * остальные возможные значения (от 5 до 15) зарезервированы, |
33 | * остальные возможные значения (от 5 до 15) зарезервированы, |
34 | вызов функции с такими Y игнорируется |
34 | вызов функции с такими Y игнорируется |
35 | * RR, GG, BB = соответственно красная, зеленая, синяя |
35 | * RR, GG, BB = соответственно красная, зеленая, синяя |
36 | составляющие цвета рабочей области окна |
36 | составляющие цвета рабочей области окна |
37 | (игнорируется для стиля Y=1) |
37 | (игнорируется для стиля Y=1) |
38 | * X = DCBA (биты) |
38 | * X = DCBA (биты) |
39 | * A = 1 - у окна есть заголовок; для стилей Y=3,4 адрес строки |
39 | * A = 1 - у окна есть заголовок |
40 | заголовка задаётся в edi, для прочих стилей |
- | |
41 | используется подфункция 1 функции 71 |
- | |
42 | * B = 1 - координаты всех графических примитивов задаются |
40 | * B = 1 - координаты всех графических примитивов задаются |
43 | относительно клиентской области окна |
41 | относительно клиентской области окна |
44 | * C = 1 - не закрашивать рабочую область при отрисовке окна |
42 | * C = 1 - не закрашивать рабочую область при отрисовке окна |
45 | * D = 0 - нормальная заливка рабочей области, 1 - градиентная |
43 | * D = 0 - нормальная заливка рабочей области, 1 - градиентная |
46 | Следующие параметры предназначены для окон типа I и II и |
44 | Следующие параметры предназначены для окон типа I и II и |
Line 50... | Line 48... | ||
50 | * Y=0 - обычное окно, Y=1 - неперемещаемое окно (работает для всех стилей окон) |
48 | * Y=0 - обычное окно, Y=1 - неперемещаемое окно (работает для всех стилей окон) |
51 | * X определяет градиент заголовка: X=0 - нет градиента, |
49 | * X определяет градиент заголовка: X=0 - нет градиента, |
52 | X=8 - обычный градиент, |
50 | X=8 - обычный градиент, |
53 | для окон типа II X=4 - негативный градиент |
51 | для окон типа II X=4 - негативный градиент |
54 | * прочие значения X и Y зарезервированы |
52 | * прочие значения X и Y зарезервированы |
55 | * edi = 0x00RRGGBB - цвет рамки |
53 | * edi = адрес строки заголовка для стилей Y=3,4 (также см. функцию 71.1) |
56 | Возвращаемое значение: |
54 | Возвращаемое значение: |
57 | * функция не возвращает значения |
55 | * функция не возвращает значения |
58 | Замечания: |
56 | Замечания: |
59 | * Положение и размеры окна устанавливаются при первом вызове |
57 | * Положение и размеры окна устанавливаются при первом вызове |
60 | этой функции и игнорируются при последующих; для изменения |
58 | этой функции и игнорируются при последующих; для изменения |
Line 80... | Line 78... | ||
80 | угла окна, который, таким образом, задается как (0,0), координаты |
78 | угла окна, который, таким образом, задается как (0,0), координаты |
81 | правого нижнего угла суть (xsize,ysize). |
79 | правого нижнего угла суть (xsize,ysize). |
82 | * Размеры окна понимаются в смысле координат правого нижнего угла. |
80 | * Размеры окна понимаются в смысле координат правого нижнего угла. |
83 | Это же относится и ко всем остальным функциям. |
81 | Это же относится и ко всем остальным функциям. |
84 | Это означает, что реальные размеры на 1 пиксель больше. |
82 | Это означает, что реальные размеры на 1 пиксель больше. |
85 | * Вид окна типа I: |
- | |
86 | * рисуется внешняя рамка цвета, указанного в edi, |
- | |
87 | шириной 1 пиксель |
- | |
88 | * рисуется заголовок - прямоугольник с левым верхним углом (1,1) |
- | |
89 | и правым нижним (xsize-1,min(20,ysize-1)) цвета, указанного в esi |
- | |
90 | (с учетом градиента) |
- | |
91 | * если ysize>21, то закрашивается рабочая область окна - |
- | |
92 | прямоугольник с левым верхним углом (1,21) и правым нижним |
- | |
93 | (xsize-1,ysize-1) (размерами (xsize-1)*(ysize-21)) - цветом, |
- | |
94 | указанным в edx (с учетом градиента) |
- | |
95 | * если A=1 и строка заголовка установлена подфункцией 1 |
- | |
96 | функции 71, то она выводится в соответствующем месте заголовка |
- | |
97 | * Вид окна стиля Y=1: |
83 | * Вид окна стиля Y=1: |
98 | * полностью определяется приложением |
84 | * полностью определяется приложением |
99 | * Вид окна типа II: |
- | |
100 | * рисуется внешняя рамка шириной 1 пиксель "затенённого" цвета |
- | |
101 | edi (все составляющие цвета уменьшаются в два раза) |
- | |
102 | * рисуется промежуточная рамка шириной 3 пикселя цвета edi |
- | |
103 | * рисуется внутренняя рамка шириной 1 пиксель |
- | |
104 | "затенённого" цвета edi |
- | |
105 | * рисуется заголовок - прямоугольник с левым верхним углом (4,4) |
- | |
106 | и правым нижним (xsize-4,min(20,ysize)) цвета, указанного в esi |
- | |
107 | (с учетом градиента) |
- | |
108 | * если ysize>=26, то закрашивается рабочая область окна - |
- | |
109 | прямоугольник с левым верхним углом (5,20) и правым нижним |
- | |
110 | (xsize-5,ysize-5) - цветом, указанным в edx (с учетом градиента) |
- | |
111 | * если A=1 и строка заголовка установлена подфункцией 1 |
- | |
112 | функции 71, то она выводится в соответствующем месте заголовка |
- | |
113 | * Вид окна со скином: |
85 | * Вид окна со скином Y=3,4: |
114 | * рисуется внешняя рамка шириной 1 пиксель |
86 | * рисуется внешняя рамка шириной 1 пиксель |
115 | цвета 'outer' из скина |
87 | цвета 'outer' из скина |
116 | * рисуется промежуточная рамка шириной 3 пикселя |
88 | * рисуется промежуточная рамка шириной 3 пикселя |
117 | цвета 'frame' из скина |
89 | цвета 'frame' из скина |
118 | * рисуется внутренняя рамка шириной 1 пиксель |
90 | * рисуется внутренняя рамка шириной 1 пиксель |