Rev 1637 | Rev 2045 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1637 | Rev 1643 | ||
---|---|---|---|
1 | ;---------------------------------------------------------- |
1 | ;---------------------------------------------------------- |
2 | ;-------------draw window of program----------------------- |
2 | ;-------------draw window of program----------------------- |
3 | ;---------------------------------------------------------- |
3 | ;---------------------------------------------------------- |
4 | drawwin: |
4 | drawwin: |
5 | - | ||
6 | mov eax,9 |
- | |
7 | mov ebx,IPC_table |
- | |
8 | or ecx,-1 |
5 | or ecx,-1 |
9 | mcall |
6 | mcall 9,procinfo |
- | 7 | mov esi,procinfo |
|
10 | 8 | ||
11 | mov eax,[IPC_table+34] |
9 | mov eax,[esi+34] |
12 | mov ebx,[IPC_table+38] |
10 | mov ebx,[esi+38] |
13 | mov ecx,[IPC_table+42] |
11 | mov ecx,[esi+42] |
14 | mov edx,[IPC_table+46] |
12 | mov edx,[esi+46] |
15 | mov [Window_CordinatX],eax |
13 | mov [Window_CordinatX],eax |
16 | mov [Window_CordinatY],ebx |
14 | mov [Window_CordinatY],ebx |
17 | mov [Window_SizeX],ecx |
15 | mov [Window_SizeX],ecx |
18 | mov [Window_SizeY],edx |
16 | mov [Window_SizeY],edx |
19 | 17 | ||
20 | cmp [Window_SizeX],585 |
18 | cmp [Window_SizeX],585 |
21 | jae no_minimum_size_x |
19 | jae no_minimum_size_x |
22 | 20 | ||
23 | mov [Window_SizeX],585 |
21 | mov [Window_SizeX],585 |
24 | mov ecx,[Window_SizeX] |
22 | mov ecx,[Window_SizeX] |
25 | 23 | ||
26 | no_minimum_size_x: |
24 | no_minimum_size_x: |
27 | - | ||
28 | cmp [Window_SizeY],400 |
25 | cmp [Window_SizeY],400 |
29 | jae no_minimum_size_y |
26 | jae no_minimum_size_y |
30 | 27 | ||
31 | mov [Window_SizeY],400 |
28 | mov [Window_SizeY],400 |
32 | mov edx,[Window_SizeY] |
29 | mov edx,[Window_SizeY] |
33 | 30 | ||
34 | no_minimum_size_y: |
31 | no_minimum_size_y: |
35 | - | ||
36 | mov [MaxWorkScreen_SizeX],ecx |
32 | mov [MaxWorkScreen_SizeX],ecx |
37 | mov [MaxWorkScreen_SizeY],edx |
33 | mov [MaxWorkScreen_SizeY],edx |
38 | sub [MaxWorkScreen_SizeX],20+10+5+10 |
34 | sub [MaxWorkScreen_SizeX],20+10+5+10 |
39 | sub [MaxWorkScreen_SizeY],20+10+15+1+49+20+10 |
35 | sub [MaxWorkScreen_SizeY],20+10+15+1+49+20+10 |
40 | 36 | ||
41 | cmp [MaxWorkScreen_SizeX],0 |
37 | cmp [MaxWorkScreen_SizeX],0 |
42 | jns no_znak1 |
38 | jns no_znak1 |
43 | 39 | ||
44 | mov [MaxWorkScreen_SizeX],ecx |
40 | mov [MaxWorkScreen_SizeX],ecx |
45 | 41 | ||
46 | no_znak1: |
42 | no_znak1: |
47 | - | ||
48 | cmp [MaxWorkScreen_SizeY],0 |
43 | cmp [MaxWorkScreen_SizeY],0 |
49 | jns no_znak2 |
44 | jns no_znak2 |
50 | 45 | ||
51 | mov [MaxWorkScreen_SizeY],edx |
46 | mov [MaxWorkScreen_SizeY],edx |
52 | 47 | ||
53 | no_znak2: |
48 | no_znak2: |
54 | - | ||
55 | mov eax,12 |
- | |
56 | mov ebx,1 |
49 | |
57 | mcall |
- | |
58 | 50 | mcall 12,1 |
|
59 | and eax,0 |
51 | ;------------------------------------------------ |
60 | mov ebx,[Window_CordinatX] |
52 | mov ebx,[Window_CordinatX] |
61 | mov ecx,[Window_CordinatY] |
53 | mov ecx,[Window_CordinatY] |
62 | shl ebx,16 |
54 | shl ebx,16 |
63 | shl ecx,16 |
55 | shl ecx,16 |
64 | add ebx,[Window_SizeX] |
56 | add ebx,[Window_SizeX] |
65 | add ecx,[Window_SizeY] |
57 | add ecx,[Window_SizeY] |
66 | mov edx,0x43aabbcc |
- | |
67 | xor esi,esi ;0x805080d0 |
58 | xor esi,esi ;0x805080d0 |
68 | xor edi,edi ;0x005080d0 |
59 | ; xor edi,edi ;0x005080d0 |
- | 60 | mcall 0,,,0x53aabbcc,,name_of_program |
|
- | 61 | ;------------------------------------------------ |
|
69 | mcall |
62 | mov eax,5 |
70 | 63 | mov ebx,20 |
|
71 | call draw_panel |
64 | mov ecx,[Window_SizeX] |
- | 65 | mov edx,15 |
|
72 | call PrintMousePos |
66 | mov esi,6 |
- | 67 | sub ecx,10 |
|
- | 68 | call draw_volume_rectangle ; top menu - file and etc. |
|
73 | 69 | ||
74 | mov [counter],7 |
70 | mov [counter],7 |
75 | mov edi,panel_text |
71 | mov edi,panel_text |
76 | call print_panel_text |
72 | call print_panel_text |
77 | - | ||
78 | ;>>>>>>Leency |
73 | ;------------------------------------------------ |
79 | ;mov eax,10 |
- | |
80 | ;mov ebx,5 |
74 | mov eax,5 |
81 | ;mov ecx,0xffffff |
75 | mov ebx,20+15+1 |
82 | ;mov edx,name_of_program |
76 | mov ecx,[Window_SizeX] |
83 | ;mov esi,34 |
77 | mov edx,50 |
84 | ;call print_text |
- | |
85 | - | ||
86 | mov eax,71 |
78 | mov esi,1 |
87 | mov ebx,1 |
79 | sub ecx,10 |
88 | mov ecx,name_of_program |
80 | call draw_volume_rectangle ; tools panel |
89 | int 40h |
- | |
90 | ;Leency<<<<<<< |
81 | call draw_icons |
91 | - | ||
92 | mov eax,12 |
82 | call PrintMousePos |
93 | mov ebx,2 |
83 | ;------------------------------------------------ |
94 | mcall |
- | |
95 | - | ||
96 | mov ecx,[k] |
84 | mov ecx,[k] |
97 | - | ||
98 | and [PosX],0 |
85 | and [PosX],0 |
99 | and [PosY],0 |
86 | and [PosY],0 |
100 | call MovePictureToWorkScreen |
87 | call MovePictureToWorkScreen |
- | 88 | ;------------------------------------------------ |
|
- | 89 | mov ebx,[WorkScreen_SizeX] |
|
- | 90 | add ebx,5+3 |
|
- | 91 | mov edx,[Window_SizeX] |
|
- | 92 | sub edx,ebx |
|
- | 93 | sub edx,25+10-3 |
|
- | 94 | shl ebx,16 |
|
- | 95 | mov bx,dx |
|
- | 96 | ||
- | 97 | mov ecx,20+15+1+49+2 |
|
- | 98 | mov edx,[Window_SizeY] |
|
- | 99 | mov eax,[WorkScreen_SizeY] |
|
- | 100 | shr eax,16 |
|
- | 101 | sub edx,eax |
|
- | 102 | sub edx,20+15+1+49+2+25+10 |
|
- | 103 | shl ecx,16 |
|
- | 104 | mov cx,dx |
|
- | 105 | ||
101 | call draw_scrollers |
106 | mcall 13,,,0xc7cbcf |
- | 107 | ;------------------------------------------------ |
|
102 | call draw_icons |
108 | mcall ,<5,3> |
- | 109 | ;------------------------------------------------ |
|
- | 110 | mov ebx,5 |
|
- | 111 | mov edx,[Window_SizeX] |
|
- | 112 | mov eax,[WorkScreen_SizeX] |
|
- | 113 | shr eax,16 |
|
- | 114 | sub edx,eax |
|
- | 115 | sub edx,25+10 |
|
- | 116 | shl ebx,16 |
|
- | 117 | mov bx,dx |
|
- | 118 | ||
- | 119 | mov ecx,[WorkScreen_SizeY] |
|
- | 120 | add ecx,20+15+1+49+2+3 |
|
- | 121 | mov edx,[Window_SizeY] |
|
- | 122 | sub edx,ecx |
|
- | 123 | sub edx,25+10-3 |
|
- | 124 | shl ecx,16 |
|
- | 125 | mov cx,dx |
|
- | 126 | ||
- | 127 | mcall 13,,,0xc7cbcf |
|
- | 128 | ;------------------------------------------------ |
|
- | 129 | mcall ,,<20+15+1+49+2,3> |
|
- | 130 | ;------------------------------------------------ |
|
- | 131 | ; draw_volume_rectangle |
|
- | 132 | ; eax - start X |
|
- | 133 | ; ebx - start Y |
|
- | 134 | ; ecx - size X |
|
- | 135 | ; edx - size Y |
|
- | 136 | ||
- | 137 | mov eax,5 |
|
- | 138 | mov ebx,[Window_SizeY] |
|
- | 139 | mov ecx,[Window_SizeX] |
|
- | 140 | mov edx,20+10 |
|
- | 141 | mov esi,3 |
|
- | 142 | sub ecx,30 |
|
- | 143 | sub ebx,25+10 |
|
- | 144 | call draw_volume_rectangle ; horizontal scrollbar |
|
- | 145 | ;------------------------------------------------ |
|
- | 146 | mov eax,[Window_SizeX] |
|
- | 147 | mov ebx,20+15+1+49+2 |
|
- | 148 | mov ecx,20+10 |
|
- | 149 | mov edx,[Window_SizeY] |
|
- | 150 | mov esi,3 |
|
- | 151 | sub eax,25+10 |
|
- | 152 | sub edx,20+15+1+49+5+20 |
|
- | 153 | call draw_volume_rectangle ; vertical scrollbar |
|
- | 154 | call draw_scrollers |
|
- | 155 | ;------------------------------------------------ |
|
- | 156 | mov eax,[Window_SizeX] |
|
- | 157 | mov ebx,[Window_SizeY] |
|
- | 158 | mov ecx,20+10 |
|
- | 159 | mov edx,20+10 |
|
- | 160 | mov esi,6 |
|
- | 161 | sub eax,25+10 |
|
- | 162 | sub ebx,25+10 |
|
- | 163 | call draw_volume_rectangle ; down and right small area |
|
- | 164 | ;------------------------------------------------ |
|
103 | 165 | mcall 12,2 |
|
104 | ret |
166 | ret |
- | 167 | ;-----------------------------------------------------------------------------20+15+1+49+2,3>5,3> |
|
105 | 168 | ||
106 | >< |
- | |
107 | - | ||
108 | ><< |
- | |
109 | - | ||
110 | ><<< |
- | |
111 | - | ||
112 | ><<<< |
- | |
113 | - | ||
114 | ><<<<< |
- | |
115 | - | ||
116 | ><<<<<< |
- | |
117 | - | ||
118 | > |
- |