Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
8106 maxcodehac 1
// sample writed by maxcodehack
2
#include 
8104 maxcodehac 3
#include 
4
#include 
5
 
8106 maxcodehac 6
#define evReDraw  1
7
#define evKey     2
8
#define evButton  3
9
#define evExit    4
10
#define evDesktop 5
11
#define evMouse   6
12
#define evIPC     7
13
#define evNetwork 8
14
#define evDebug   9
8104 maxcodehac 15
 
8106 maxcodehac 16
#define WIN_W 640
17
#define WIN_H 563
8104 maxcodehac 18
 
8106 maxcodehac 19
char* title = "Boxlib example";
20
int win_bg_color = 0x858585;
21
scrollbar scroll = {15, WIN_W - 26, WIN_H - 29, 0, 0, 2, 115, 15, 0,0x707070,0xD2CED0,0x555555,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1};
8104 maxcodehac 22
 
8106 maxcodehac 23
void draw_window(){
24
        begin_draw();
25
        sys_create_window(215,100,WIN_W,WIN_H,title,win_bg_color,0x34);
26
        scrollbar_v_draw(&scroll);
27
        end_draw();
28
}
8104 maxcodehac 29
 
8106 maxcodehac 30
//// EVENTMASK
31
#define EVM_REDRAW        1
32
#define EVM_KEY           2
33
#define EVM_BUTTON        4
34
#define EVM_EXIT          8
35
#define EVM_BACKGROUND    16
36
#define EVM_MOUSE         32
37
#define EVM_IPC           64
38
#define EVM_STACK         128
39
#define EVM_DEBUG         256
40
#define EVM_STACK2        512
41
#define EVM_MOUSE_FILTER  0x80000000
42
#define EVM_CURSOR_FILTER 0x40000000
43
//// EVENTMASK
8104 maxcodehac 44
 
45
 
8106 maxcodehac 46
int main()
47
{
48
	kolibri_boxlib_init();
49
 
50
	set_event_mask(EVM_REDRAW + EVM_KEY + EVM_BUTTON + EVM_MOUSE + EVM_MOUSE_FILTER);
51
	while(1)
52
	{
53
		switch(get_os_event())
54
		{
55
			case evButton:
56
				if (get_os_button() == 1) exit(0);
57
				break;
58
 
59
			case evKey:
60
				get_key();
61
				break;
62
 
63
			case evReDraw:
64
				draw_window();
65
				break;
66
			case evMouse:
67
				scrollbar_v_mouse(&scroll);
68
				break;
69
		}
70
	}
8104 maxcodehac 71
}