Subversion Repositories Kolibri OS

Rev

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

Rev 2305 Rev 2382
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2007. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 2305 $
8
$Revision: 2382 $
Line 9... Line 9...
9
 
9
 
Line 66... Line 66...
66
  dtp.data	 rb 40
66
        dtp.data        rb 40
67
ends
67
ends
Line 68... Line 68...
68
 
68
 
69
struct SKIN_BUTTONS
69
struct  SKIN_BUTTONS
70
  type	   dd ?
70
        type    dd ?
71
;  pos:
71
; position
72
   left   dw ?
72
        left    dw ?
73
   top	  dw ?
73
        top     dw ?
74
;  size:
74
; size
75
   width  dw ?
75
        width   dw ?
76
   height dw ?
76
        height  dw ?
Line 77... Line 77...
77
ends
77
ends
Line 125... Line 125...
125
	mov	eax,dword[ebx+SKIN_PARAMS.margin.bottom]
125
        mov     eax, dword[ebx+SKIN_PARAMS.margin.bottom]
126
	mov	dword[_skinmargins+4],eax
126
        mov     dword[_skinmargins+4], eax
Line 127... Line 127...
127
 
127
 
128
	mov	ebx,[ebp+SKIN_HEADER.bitmaps]
128
        mov     ebx, [ebp+SKIN_HEADER.bitmaps]
-
 
129
        add     ebx, skin_data
129
	add	ebx,skin_data
130
  .lp1:
130
  .lp1: cmp	dword[ebx],0
131
        cmp     dword[ebx], 0
131
	je	.end_bitmaps
132
        je      .end_bitmaps
132
	movzx	eax,[ebx+SKIN_BITMAPS.kind]
133
        movzx   eax, [ebx+SKIN_BITMAPS.kind]
133
	movzx	ecx,[ebx+SKIN_BITMAPS.type]
134
        movzx   ecx, [ebx+SKIN_BITMAPS.type]
134
	dec	eax
135
        dec     eax
135
	jnz	.not_left
136
        jnz     .not_left
136
	xor	eax,eax
137
        xor     eax, eax
137
	mov	edx,skin_active.left.data
138
        mov     edx, skin_active.left.data
138
	or	ecx,ecx
139
        or      ecx, ecx
139
	jnz	@f
140
        jnz     @f
-
 
141
        mov     edx, skin_inactive.left.data
140
	mov	edx,skin_inactive.left.data
142
    @@:
141
    @@: jmp	.next_bitmap
143
        jmp     .next_bitmap
142
  .not_left:
144
  .not_left:
143
	dec	eax
145
        dec     eax
144
	jnz	.not_oper
146
        jnz     .not_oper
145
	mov	esi,[ebx+SKIN_BITMAPS.data]
147
        mov     esi, [ebx+SKIN_BITMAPS.data]
Line 148... Line 150...
148
	neg	eax
150
        neg     eax
149
	mov	edx,skin_active.oper.data
151
        mov     edx, skin_active.oper.data
150
	or	ecx,ecx
152
        or      ecx, ecx
151
	jnz	@f
153
        jnz     @f
152
	mov	edx,skin_inactive.oper.data
154
        mov     edx, skin_inactive.oper.data
-
 
155
    @@:
153
    @@: jmp	.next_bitmap
156
        jmp     .next_bitmap
154
  .not_oper:
157
  .not_oper:
155
	dec	eax
158
        dec     eax
156
	jnz	.not_base
159
        jnz     .not_base
157
	mov	eax,[skin_active.left.width]
160
        mov     eax, [skin_active.left.width]
158
	mov	edx,skin_active.base.data
161
        mov     edx, skin_active.base.data
159
	or	ecx,ecx
162
        or      ecx, ecx
160
	jnz	@f
163
        jnz     @f
161
	mov	eax,[skin_inactive.left.width]
164
        mov     eax, [skin_inactive.left.width]
162
	mov	edx,skin_inactive.base.data
165
        mov     edx, skin_inactive.base.data
-
 
166
    @@:
163
    @@: jmp	.next_bitmap
167
        jmp     .next_bitmap
164
  .not_base:
168
  .not_base:
165
	add	ebx,8
169
        add     ebx, 8
166
	jmp	.lp1
170
        jmp     .lp1
167
  .next_bitmap:
171
  .next_bitmap:
168
	mov	ecx,[ebx+SKIN_BITMAPS.data]
172
        mov     ecx, [ebx+SKIN_BITMAPS.data]
Line 176... Line 180...
176
	jmp	.lp1
180
        jmp     .lp1
177
  .end_bitmaps:
181
  .end_bitmaps:
Line 178... Line 182...
178
 
182
 
179
	mov	ebx,[ebp+SKIN_HEADER.buttons]
183
        mov     ebx, [ebp+SKIN_HEADER.buttons]
-
 
184
        add     ebx, skin_data
180
	add	ebx,skin_data
185
  .lp2:
181
  .lp2: cmp	dword[ebx],0
186
        cmp     dword[ebx], 0
182
	je	.end_buttons
187
        je      .end_buttons
183
	mov	eax,[ebx+SKIN_BUTTONS.type]
188
        mov     eax, [ebx+SKIN_BUTTONS.type]
184
	dec	eax
189
        dec     eax
185
	jnz	.not_close
190
        jnz     .not_close
Line 211... Line 216...
211
 
216
 
212
sys_putimage_with_check:
217
sys_putimage_with_check:
213
	or	ebx,ebx
218
        or      ebx, ebx
214
	jz	@f
219
        jz      @f
-
 
220
        call    sys_putimage.forced
215
	call	sys_putimage.forced
221
    @@:
Line 216... Line 222...
216
    @@: ret
222
        ret
Line 217... Line 223...
217
 
223
 
218
drawwindow_IV_caption:
224
drawwindow_IV_caption: