Subversion Repositories Kolibri OS

Rev

Rev 52 | Rev 54 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 52 Rev 53
Line 51... Line 51...
51
  .data  dd ?
51
  .data  dd ?
52
ends
52
ends
Line 53... Line 53...
53
 
53
 
54
load_skin:
54
load_skin:
-
 
55
        pushad
55
        pushad
56
        mov     [_skinh],22
56
        mov     eax,_skin_file
57
        mov     eax,_skin_file
-
 
58
        mov     edx,skin_data
57
        mov     edx,skin_data
59
        mov     [ebp+SKIN_HEADER.ident],'????'
58
        call    load_skin_file
60
        call    load_skin_file
59
        call    parse_skin_data
61
        call    parse_skin_data
60
        popad
62
        popad
Line 174... Line 176...
174
  .end_buttons:
176
  .end_buttons:
Line 175... Line 177...
175
 
177
 
176
  .exit:
178
  .exit:
Line -... Line 179...
-
 
179
        ret
-
 
180
 
-
 
181
sys_putimage_with_check:
-
 
182
	or	ebx,ebx
-
 
183
	jz	@f
-
 
184
	call	sys_putimage
177
        ret
185
    @@: ret
178
 
186
 
Line 179... Line 187...
179
drawwindow_IV:
187
drawwindow_IV:
Line 232... Line 240...
232
        mov   ecx,[ebp+SKIN_DATA.left.width]
240
        mov   ecx,[ebp+SKIN_DATA.left.width]
233
        shl   ecx,16
241
        shl   ecx,16
234
        add   ecx,[_skinh]
242
        add   ecx,[_skinh]
Line 235... Line 243...
235
 
243
 
236
        mov   ebx, [ebp+SKIN_DATA.left.data]
244
        mov   ebx, [ebp+SKIN_DATA.left.data]
Line 237... Line 245...
237
        call  sys_putimage
245
        call  sys_putimage_with_check
238
 
246
 
239
        mov   esi,[esp]
247
        mov   esi,[esp]
240
        mov   eax,[esi+8]
248
        mov   eax,[esi+8]
241
        sub   eax,[ebp+SKIN_DATA.left.width]
249
        sub   eax,[ebp+SKIN_DATA.left.width]
242
        sub   eax,[ebp+SKIN_DATA.oper.width]
250
        sub   eax,[ebp+SKIN_DATA.oper.width]
243
        cmp   eax,[ebp+SKIN_DATA.base.left]
251
        cmp   eax,[ebp+SKIN_DATA.base.left]
244
        jng   non_base
252
        jng   non_base
-
 
253
        xor   edx,edx
245
        xor   edx,edx
254
        mov   ecx,[ebp+SKIN_DATA.base.width]
Line 246... Line 255...
246
        mov   ebx,[ebp+SKIN_DATA.base.width]
255
        jecxz non_base
Line 247... Line 256...
247
        div   ebx
256
        div   ecx
248
 
257
 
Line 259... Line 268...
259
        shr   edx,16
268
        shr   edx,16
260
        add   edx,[ebp+SKIN_DATA.base.width]
269
        add   edx,[ebp+SKIN_DATA.base.width]
261
        shl   edx,16
270
        shl   edx,16
Line 262... Line 271...
262
 
271
 
263
        push  eax ebx ecx edx
272
        push  eax ebx ecx edx
264
        call  sys_putimage
273
        call  sys_putimage_with_check
Line 265... Line 274...
265
        pop   edx ecx ebx eax
274
        pop   edx ecx ebx eax
266
 
275
 
267
        dec   eax
276
        dec   eax
Line 276... Line 285...
276
        mov   ebx,[ebp+SKIN_DATA.oper.data]
285
        mov   ebx,[ebp+SKIN_DATA.oper.data]
Line 277... Line 286...
277
 
286
 
278
        mov   ecx,[ebp+SKIN_DATA.oper.width]
287
        mov   ecx,[ebp+SKIN_DATA.oper.width]
279
        shl   ecx,16
288
        shl   ecx,16
280
        add   ecx,[_skinh]
289
        add   ecx,[_skinh]
Line 281... Line 290...
281
        call  sys_putimage
290
        call  sys_putimage_with_check
Line 282... Line 291...
282
 
291
 
283
        mov   esi,[esp]
292
        mov   esi,[esp]