Subversion Repositories Kolibri OS

Rev

Rev 3107 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3107 Rev 3286
1
//notify 0.5
1
//notify 0.5
-
 
2
 
2
 
3
#define MEMSIZE 0x3E80
3
#include "..\lib\kolibri.h" 
4
#include "..\lib\kolibri.h" 
4
#include "..\lib\strings.h" 
5
#include "..\lib\strings.h" 
5
 
6
 
6
 
7
 
7
int SCREEN_SIZE_X,
8
int SCREEN_SIZE_X,
8
    SCREEN_SIZE_Y;
9
    SCREEN_SIZE_Y;
9
 
10
 
10
int WIN_Y=0,
11
int WIN_Y=0,
11
    WIN_SIZE_X=300,
12
    WIN_SIZE_X=300,
12
    WIN_SIZE_Y=28;
13
    WIN_SIZE_Y=28;
13
 
14
 
14
	
15
	
15
void main()
16
void main()
16
{   
17
{   
17
	int TEXT_X=4,
18
	int TEXT_X=4,
18
	    TEXT_Y=12;
19
	    TEXT_Y=12;
19
	
20
	
20
	if (!param)
21
	if (!param)
21
	{
22
	{
22
		if (GetSystemLanguage()==4)
23
		if (GetSystemLanguage()==4)
23
			strcpy(#param, "â  ¯à®£à ¬¬  ¯®ª §ë¢ ¥â 㢥¤®¬«¥­¨ï.");
24
			strcpy(#param, "â  ¯à®£à ¬¬  ¯®ª §ë¢ ¥â 㢥¤®¬«¥­¨ï.");
24
		else
25
		else
25
			strcpy(#param, "This program shows notices. Open it with params.");
26
			strcpy(#param, "This program shows notices. Open it with params.");
26
	}
27
	}
27
	
28
	
28
	SCREEN_SIZE_X=GetScreenWidth()+1;
29
	SCREEN_SIZE_X=GetScreenWidth()+1;
29
	if (strlen(#param)*6>WIN_SIZE_X) WIN_SIZE_X=strlen(#param)*6+8;
30
	if (strlen(#param)*6>WIN_SIZE_X) WIN_SIZE_X=strlen(#param)*6+8;
30
	
31
	
31
	TEXT_X=-6*strlen(#param)+WIN_SIZE_X/2;
32
	TEXT_X=-6*strlen(#param)+WIN_SIZE_X/2;
32
	TEXT_Y=WIN_SIZE_Y/2-3;
33
	TEXT_Y=WIN_SIZE_Y/2-3;
33
	
34
	
34
	//èçÿÿÿùíûé êîñòûëü, ðåàëèçóþùèé ìíîãîïîòî÷íîñòü :)
35
	//èçÿÿÿùíûé êîñòûëü, ðåàëèçóþùèé ìíîãîïîòî÷íîñòü :)
35
	while (!GetPixelColor(SCREEN_SIZE_X-1, SCREEN_SIZE_X, WIN_Y)) WIN_Y+=45;
36
	while (!GetPixelColor(SCREEN_SIZE_X-1, SCREEN_SIZE_X, WIN_Y)) WIN_Y+=45;
36
	
37
	
37
 
38
 
38
	loop()
39
	loop()
39
   {
40
   {
40
		WaitEventTimeout(500);
41
		WaitEventTimeout(500);
41
		switch(EAX & 0xFF)
42
		switch(EAX & 0xFF)
42
		{
43
		{
43
		case evButton:
44
		case evButton:
44
			if (GetButtonID()==1) ExitProcess();
45
			if (GetButtonID()==1) ExitProcess();
45
			break;
46
			break;
46
			
47
			
47
		case evKey:
48
		case evKey:
48
			break;
49
			break;
49
         
50
         
50
		case evReDraw:
51
		case evReDraw:
51
			DefineAndDrawWindow(SCREEN_SIZE_X-WIN_SIZE_X,WIN_Y,WIN_SIZE_X, WIN_SIZE_Y, 0x01, 0, 0, 0x01fffFFF);
52
			DefineAndDrawWindow(SCREEN_SIZE_X-WIN_SIZE_X,WIN_Y,WIN_SIZE_X, WIN_SIZE_Y, 0x01, 0, 0, 0x01fffFFF);
52
			DefineButton(0,0, WIN_SIZE_X, WIN_SIZE_Y, 1+BT_HIDE+BT_NOFRAME, 0);
53
			DefineButton(0,0, WIN_SIZE_X, WIN_SIZE_Y, 1+BT_HIDE+BT_NOFRAME, 0);
53
			draw_grid();
54
			draw_grid();
54
			WriteText(TEXT_X-1,TEXT_Y, 0x80, 0,#param); //òåíü
55
			WriteText(TEXT_X-1,TEXT_Y, 0x80, 0,#param); //òåíü
55
			WriteText(TEXT_X+1,TEXT_Y, 0x80, 0,#param);
56
			WriteText(TEXT_X+1,TEXT_Y, 0x80, 0,#param);
56
			WriteText(TEXT_X,TEXT_Y-1, 0x80, 0,#param);
57
			WriteText(TEXT_X,TEXT_Y-1, 0x80, 0,#param);
57
			WriteText(TEXT_X,TEXT_Y+1, 0x80, 0,#param);
58
			WriteText(TEXT_X,TEXT_Y+1, 0x80, 0,#param);
58
			WriteText(TEXT_X-1,TEXT_Y-1, 0x80, 0,#param);
59
			WriteText(TEXT_X-1,TEXT_Y-1, 0x80, 0,#param);
59
			WriteText(TEXT_X+1,TEXT_Y+1, 0x80, 0,#param);
60
			WriteText(TEXT_X+1,TEXT_Y+1, 0x80, 0,#param);
60
			WriteText(TEXT_X-1,TEXT_Y+1, 0x80, 0,#param);
61
			WriteText(TEXT_X-1,TEXT_Y+1, 0x80, 0,#param);
61
			WriteText(TEXT_X+1,TEXT_Y-1, 0x80, 0,#param);
62
			WriteText(TEXT_X+1,TEXT_Y-1, 0x80, 0,#param);
62
			
63
			
63
			WriteText(TEXT_X,TEXT_Y, 0x80, 0xFFFfff,#param);
64
			WriteText(TEXT_X,TEXT_Y, 0x80, 0xFFFfff,#param);
64
			break;
65
			break;
65
		default:
66
		default:
66
			ExitProcess();
67
			ExitProcess();
67
      }
68
      }
68
   }
69
   }
69
}
70
}
70
 
71
 
71
 
72
 
72
 
73
 
73
void draw_grid()
74
void draw_grid()
74
{
75
{
75
	int x, y; 
76
	int x, y; 
76
	
77
	
77
	for (y=0; y<=WIN_SIZE_Y; y++)
78
	for (y=0; y<=WIN_SIZE_Y; y++)
78
	{
79
	{
79
		for (x=0; x<=WIN_SIZE_X; x++)	
80
		for (x=0; x<=WIN_SIZE_X; x++)	
80
		{
81
		{
81
			if (! y&1) && (! x&1) PutPixel(x, y, 0);
82
			if (! y&1) && (! x&1) PutPixel(x, y, 0);
82
			if (  y&1) && (  x&1) PutPixel(x, y, 0);
83
			if (  y&1) && (  x&1) PutPixel(x, y, 0);
83
			//PutPixel(x, y, GetPixelColor(SCREEN_SIZE_X-WIN_SIZE_X+x, SCREEN_SIZE_X, y));
84
			//PutPixel(x, y, GetPixelColor(SCREEN_SIZE_X-WIN_SIZE_X+x, SCREEN_SIZE_X, y));
84
		}
85
		}
85
	}
86
	}
86
}
87
}
87
 
88
 
88
 
89
 
89
 
90
 
90
 
91
 
91
 
92
 
92
stop:
93
stop: