Subversion Repositories Kolibri OS

Rev

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

Rev 3054 Rev 3058
Line 69... Line 69...
69
}
69
}
Line 70... Line 70...
70
 
70
 
71
 
71
 
-
 
72
struct system_colors
72
struct system_colors
73
{
73
{
74
	dword frame,grab,grab_button,grab_button_text,grab_text,
74
	dword frame,grab,grab_button,grab_button_text,grab_text,work,work_button,work_button_text,work_text,work_graph;
75
	      work,work_button,work_button_text,work_text,work_graph;
Line 75... Line 76...
75
	void get();
76
	void get();
76
};
77
};
Line 261... Line 262...
261
	EAX = 26;
262
	EAX = 26;
262
	EBX = 5;
263
	EBX = 5;
263
	$int 0x40
264
	$int 0x40
264
}
265
}
Line 265... Line 266...
265
 
266
 
266
inline fastcall dword GetSkinHeight()
267
inline fastcall GetSkinHeight()
267
{
268
{
268
	$push ebx
269
	$push ebx
269
	$mov  eax,48
270
	$mov  eax,48
270
	$mov  ebx,4
271
	$mov  ebx,4
Line 311... Line 312...
311
	$mov eax, 55
312
	$mov eax, 55
312
	$mov ebx, 55
313
	$mov ebx, 55
313
	$int 0x40
314
	$int 0x40
314
}
315
}
Line -... Line 316...
-
 
316
 
-
 
317
inline fastcall void debug( EDX)
-
 
318
{
-
 
319
	$push ebx
-
 
320
	$push ecx
-
 
321
	$mov eax, 63
-
 
322
	$mov ebx, 1
-
 
323
next_char:
-
 
324
	$mov ecx, DSDWORD[edx]
-
 
325
	$or	 cl, cl
-
 
326
	$jz  done
-
 
327
	$int 0x40
-
 
328
	$inc edx
-
 
329
	$jmp next_char
-
 
330
done:
-
 
331
	$mov cl, 13
-
 
332
	$int 0x40
-
 
333
	$mov cl, 10
-
 
334
	$int 0x40
-
 
335
	$pop ecx
-
 
336
	$pop ebx
315
 
337
}
Line 316... Line 338...
316
//------------------------------------------------------------------------------
338
//------------------------------------------------------------------------------
317
 
339
 
318
void DefineAndDrawWindow(dword x,y, sizeX,sizeY, byte WindowType,dword WindowAreaColor, EDI)
340
void DefineAndDrawWindow(dword x,y, sizeX,sizeY, byte WindowType,dword WindowAreaColor, EDI, ESI)
319
{
341
{
320
	EAX = 12;              // function 12:tell os about windowdraw
342
	EAX = 12;              // function 12:tell os about windowdraw
Line 437... Line 459...
437
{
459
{
438
	EAX = 8;
460
	EAX = 8;
439
	EDX += BT_DEL;
461
	EDX += BT_DEL;
440
	$int 0x40;
462
	$int 0x40;
441
}
463
}
442
 
-
 
443
 
-
 
444
//------------------------------------------------------------------------------
-
 
445
 
-
 
446
:void DrawRegion(dword x,y,width,height,color1)
-
 
447
{
-
 
448
	DrawBar(x,y,width,1,color1); //¯®«®á  £®à ᢥàåã
-
 
449
	DrawBar(x,y+height,width,1,color1); //¯®«®á  £®à á­¨§ã
-
 
450
	DrawBar(x,y,1,height,color1); //¯®«®á  ¢¥àåã á«¥¢ 
-
 
451
	DrawBar(x+width,y,1,height+1,color1); //¯®«®á  ¢¥àåã á¯à ¢ 
-
 
452
}
-
 
453
 
-
 
454
:void DrawRegion_3D(dword x,y,width,height,color1,color2)
-
 
455
{
-
 
456
	DrawBar(x,y,width+1,1,color1); //¯®«®á  £®à ᢥàåã
-
 
457
	DrawBar(x,y+1,1,height-1,color1); //¯®«®á  á«¥¢ 
-
 
458
	DrawBar(x+width,y+1,1,height,color2); //¯®«®á  á¯à ¢ 
-
 
459
	DrawBar(x,y+height,width,1,color2); //¯®«®á  £®à á­¨§ã
-
 
460
}
-
 
461
 
-
 
462
:void DrawFlatButton(dword x,y,width,height,id,color,text)
-
 
463
{
-
 
464
	DrawRegion_3D(x,y,width,height,0x94AECE,0x94AECE);
-
 
465
	DrawRegion_3D(x+1,y+1,width-2,height-2,0xFFFFFF,0xC7C7C7);
-
 
466
	DrawBar(x+2,y+2,width-3,height-3,color); //§ «¨¢ª 
-
 
467
	IF (id<>0)	DefineButton(x,y,width,height,id+BT_HIDE,0xEFEBEF); //ª­®¯ª 
-
 
468
	//WriteText(-strlen(text)*6+width/2+x+1,height/2-3+y,0x80,0,text,0);
-
 
469
	WriteText(width/2+x+1,height/2-3+y,0x80,0,text,0);
-
 
470
}
-
 
471
 
-
 
472
:void DrawCircle(int x, y, r)
-
 
473
{
-
 
474
	int i;
-
 
475
	float px=0, py=r, ii = r * 3.1415926 * 2;
-
 
476
	FOR (i = 0; i < ii; i++)
-
 
477
	{
-
 
478
        PutPixel(px + x, y - py, 0);
-
 
479
        px = py / r + px;
-
 
480
        py = -px / r + py;
-
 
481
	}
-
 
482
}
-
 
483
 
-
 
484
//------------------------------------------------------------------------------
-
 
485
 
-
 
486
inline fastcall void debug( EDX)
-
 
487
{
-
 
488
	$push ebx
-
 
489
	$push ecx
-
 
490
	$mov eax, 63
-
 
491
	$mov ebx, 1
-
 
492
next_char:
-
 
493
	$mov ecx, DSDWORD[edx]
-
 
494
	$or	 cl, cl
-
 
495
	$jz  done
-
 
496
	$int 0x40
-
 
497
	$inc edx
-
 
498
	$jmp next_char
-
 
499
done:
-
 
500
	$mov cl, 13
-
 
501
	$int 0x40
-
 
502
	$mov cl, 10
-
 
503
	$int 0x40
-
 
504
	$pop ecx
-
 
505
	$pop ebx
-
 
506
}
-