Subversion Repositories Kolibri OS

Rev

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

Rev 7227 Rev 7254
1
//BOX_LIB - Asper
1
//BOX_LIB - Asper
2
#ifndef INCLUDE_BOX_LIB_H
2
#ifndef INCLUDE_BOX_LIB_H
3
#define INCLUDE_BOX_LIB_H
3
#define INCLUDE_BOX_LIB_H
4
 
4
 
5
#ifndef INCLUDE_KOLIBRI_H
5
#ifndef INCLUDE_KOLIBRI_H
6
#include "../lib/kolibri.h"
6
#include "../lib/kolibri.h"
7
#endif
7
#endif
8
 
8
 
9
#ifndef INCLUDE_DLL_H
9
#ifndef INCLUDE_DLL_H
10
#include "../lib/dll.h"
10
#include "../lib/dll.h"
11
#endif
11
#endif
12
 
12
 
13
dword boxlib = #aEdit_box_lib;
13
dword boxlib = #aEdit_box_lib;
14
char aEdit_box_lib[]="/sys/lib/box_lib.obj";
14
char aEdit_box_lib[]="/sys/lib/box_lib.obj";
15
 
15
 
16
dword box_lib_init   = #aboxlib_init;
16
dword box_lib_init   = #aboxlib_init;
17
 
17
 
18
dword edit_box_draw     = #aEdit_box_draw;
18
dword edit_box_draw     = #aEdit_box_draw;
19
dword edit_box_key      = #aEdit_box_key;
19
dword edit_box_key      = #aEdit_box_key;
20
dword edit_box_mouse    = #aEdit_box_mouse;
20
dword edit_box_mouse    = #aEdit_box_mouse;
21
dword edit_box_set_text = #aEdit_box_set_text;
21
dword edit_box_set_text = #aEdit_box_set_text;
22
dword version_ed        = #aVersion_ed;
22
dword version_ed        = #aVersion_ed;
23
 
23
 
24
dword scrollbar_v_draw  = #aScrollbar_v_draw;
24
dword scrollbar_v_draw  = #aScrollbar_v_draw;
25
dword scrollbar_v_mouse = #aScrollbar_v_mouse;
25
dword scrollbar_v_mouse = #aScrollbar_v_mouse;
26
dword scrollbar_h_draw  = #aScrollbar_h_draw;
26
dword scrollbar_h_draw  = #aScrollbar_h_draw;
27
dword scrollbar_h_mouse = #aScrollbar_h_mouse;
27
dword scrollbar_h_mouse = #aScrollbar_h_mouse;
28
dword version_scrollbar = #aVersion_scrollbar;
28
dword version_scrollbar = #aVersion_scrollbar;
29
 
29
 
30
dword PathShow_prepare  = #aPathShow_prepare;
30
dword PathShow_prepare  = #aPathShow_prepare;
31
dword PathShow_draw     = #aPathShow_draw;
31
dword PathShow_draw     = #aPathShow_draw;
32
 
32
 
33
dword progressbar_draw = #aProgressbar_draw;
33
dword progressbar_draw = #aProgressbar_draw;
34
dword progressbar_progress = #aProgressbar_progress;
34
dword progressbar_progress = #aProgressbar_progress;
35
 
35
 
36
dword frame_draw = #aFrame_draw;
36
dword frame_draw = #aFrame_draw;
37
 
37
 
38
$DD 2 dup 0
38
$DD 2 dup 0
39
 
39
 
40
char aEdit_box_draw []    = "edit_box";
40
char aEdit_box_draw []    = "edit_box";
41
char aEdit_box_key  []    = "edit_box_key";
41
char aEdit_box_key  []    = "edit_box_key";
42
char aEdit_box_mouse[]    = "edit_box_mouse";
42
char aEdit_box_mouse[]    = "edit_box_mouse";
43
char aEdit_box_set_text[] = "edit_box_set_text";
43
char aEdit_box_set_text[] = "edit_box_set_text";
44
char aVersion_ed    []    = "version_ed";
44
char aVersion_ed    []    = "version_ed";
45
 
45
 
46
char aboxlib_init[]        = "lib_init";
46
char aboxlib_init[]        = "lib_init";
47
char aScrollbar_v_draw [] = "scrollbar_v_draw";
47
char aScrollbar_v_draw [] = "scrollbar_v_draw";
48
char aScrollbar_v_mouse[] = "scrollbar_v_mouse";
48
char aScrollbar_v_mouse[] = "scrollbar_v_mouse";
49
char aScrollbar_h_draw [] = "scrollbar_h_draw";
49
char aScrollbar_h_draw [] = "scrollbar_h_draw";
50
char aScrollbar_h_mouse[] = "scrollbar_h_mouse";
50
char aScrollbar_h_mouse[] = "scrollbar_h_mouse";
51
char aVersion_scrollbar[] = "version_scrollbar";
51
char aVersion_scrollbar[] = "version_scrollbar";
52
 
52
 
53
char aPathShow_prepare [] = "PathShow_prepare";
53
char aPathShow_prepare [] = "PathShow_prepare";
54
char aPathShow_draw    [] = "PathShow_draw";
54
char aPathShow_draw    [] = "PathShow_draw";
55
 
55
 
56
char aProgressbar_draw  [] = "progressbar_draw";
56
char aProgressbar_draw  [] = "progressbar_draw";
57
char aProgressbar_progress[] = "progressbar_progress";
57
char aProgressbar_progress[] = "progressbar_progress";
58
 
58
 
59
char aFrame_draw[] = "frame_draw";
59
char aFrame_draw[] = "frame_draw";
60
 
60
 
61
 
61
 
62
struct PathShow_data
62
struct PathShow_data
63
{
63
{
64
dword type;
64
dword type;
65
word start_y,
65
word start_y,
66
	start_x,
66
	start_x,
67
	font_size_x,    // 6 - for font 0, 8 - for font 1
67
	font_size_x,    // 6 - for font 0, 8 - for font 1
68
	area_size_x;
68
	area_size_x;
69
dword font_number,  // 0 - monospace, 1 - variable
69
dword font_number,  // 0 - monospace, 1 - variable
70
	background_flag,
70
	background_flag,
71
	font_color,
71
	font_color,
72
	background_color,
72
	background_color,
73
	text_pointer,
73
	text_pointer,
74
	work_area_pointer,
74
	work_area_pointer,
75
	temp_text_length;
75
	temp_text_length;
76
};
76
};
77
/*
77
/*
78
char temp[128];
78
char temp[128];
79
PathShow_data PathShow = {0, 100,20, 6, 200, 0, 1, 0x0, 0xFFFfff, #email_text, #temp, 0};
79
PathShow_data PathShow = {0, 100,20, 6, 200, 0, 1, 0x0, 0xFFFfff, #email_text, #temp, 0};
80
PathShow_prepare stdcall(#PathShow);
80
PathShow_prepare stdcall(#PathShow);
81
PathShow_draw stdcall(#PathShow);
81
PathShow_draw stdcall(#PathShow);
82
*/
82
*/
83
 
83
 
84
struct edit_box{
84
struct edit_box{
85
dword width, 
85
dword width, 
86
	left,
86
	left,
87
	top, 
87
	top, 
88
	color, 
88
	color, 
89
	shift_color, 
89
	shift_color, 
90
	focus_border_color, 
90
	focus_border_color, 
91
	blur_border_color,
91
	blur_border_color,
92
	text_color,
92
	text_color,
93
	max,
93
	max,
94
	text,
94
	text,
95
	mouse_variable,
95
	mouse_variable,
96
	flags,
96
	flags,
97
	size,
97
	size,
98
	pos,
98
	pos,
99
	offset,
99
	offset,
100
	cl_curs_x,
100
	cl_curs_x,
101
	cl_curs_y,
101
	cl_curs_y,
102
	shift,
102
	shift,
103
	shift_old,
103
	shift_old,
104
	ed_height,
104
	ed_height,
105
	ed_char_width;
105
	ed_char_width;
106
};
106
};
107
 
107
 
108
struct scroll_bar
108
struct scroll_bar
109
{
109
{
110
	word size_x,
110
	word size_x,
111
	start_x,
111
	start_x,
112
	size_y,
112
	size_y,
113
	start_y;
113
	start_y;
114
	dword btn_height,
114
	dword btn_height,
115
	type,
115
	type,
116
	max_area,
116
	max_area,
117
	cur_area,
117
	cur_area,
118
	position,
118
	position,
119
	bckg_col,
119
	bckg_col,
120
	frnt_col,
120
	frnt_col,
121
	line_col,
121
	line_col,
122
	redraw;
122
	redraw;
123
	word delta,
123
	word delta,
124
	delta2,
124
	delta2,
125
	r_size_x,
125
	r_size_x,
126
	r_start_x,
126
	r_start_x,
127
	r_size_y,
127
	r_size_y,
128
	r_start_y;
128
	r_start_y;
129
	dword m_pos,
129
	dword m_pos,
130
	m_pos_2,
130
	m_pos_2,
131
	m_keys,
131
	m_keys,
132
	run_size,
132
	run_size,
133
	position2,
133
	position2,
134
	work_size,
134
	work_size,
135
	all_redraw,
135
	all_redraw,
136
	ar_offset;
136
	ar_offset;
137
};
137
};
138
 
138
 
139
struct progress_bar
139
struct progress_bar
140
{
140
{
141
  dword
141
  dword
142
	value,
142
	value,
143
	left,
143
	left,
144
	top,
144
	top,
145
	width,
145
	width,
146
	height,
146
	height,
147
	style,
147
	style,
148
	min,
148
	min,
149
	max,
149
	max,
150
	back_color,
150
	back_color,
151
	progress_color,
151
	progress_color,
152
	frame_color;
152
	frame_color;
153
};
153
};
154
 
154
 
155
struct frame
155
struct frame
156
{
156
{
157
	dword type;
157
	dword type;
158
	word size_x; //start_x, size_x => Mario, WTF? Is this so complex to use x/y/w/h ?                  
158
	word size_x; //start_x, size_x => Mario, WTF? Is this so complex to use x/y/w/h ?                  
159
	word start_x;                 
159
	word start_x;                 
160
	word size_y;                  
160
	word size_y;                  
161
	word start_y;                
161
	word start_y;                
162
	dword ext_col;            
162
	dword ext_col;            
163
	dword int_col;            
163
	dword int_col;            
164
	dword draw_text_flag;  // 0-not,1-yes
164
	dword flags;  // see FR_FLAGS
165
	dword text_pointer;          
165
	dword text_pointer;          
166
	dword text_position;   //  0-up,1-bottom
166
	dword text_position;   //  0-up,1-bottom
167
	dword font_number;     //  0-monospace,1-variable
167
	dword font_number;     //  0-monospace,1-variable
168
	dword font_size_y;           
168
	dword font_size_y;           
169
	dword font_color;            
169
	dword font_color;            
170
	dword font_backgr_color;
170
	dword font_backgr_color;
171
};
171
};
-
 
172
 
-
 
173
// FR_FLAGS = [x][yyy][z]
-
 
174
// z        -  Caption
-
 
175
// yyy      -  BorderStyle
-
 
176
// x        -  BackStyle
-
 
177
#define FR_CAPTION 00001b // [z]
-
 
178
#define FR_DOUBLE  00000b // [yyy]
-
 
179
#define FR_RAISED  00010b // [yyy]
-
 
180
#define FR_SUNKEN  00100b // [yyy]
-
 
181
#define FR_ETCHED  00110b // [yyy]
-
 
182
#define FR_RIDGED  01000b // [yyy]
-
 
183
#define FR_FILLED  10000b // [x]
172
 
184
 
173
:frame frame123 = { 0, 260, 10, 60, 16, NULL, 0xFFFfff, 1, NULL, 0, 1, 12, 0x000111, 0xCCCccc };
185
:frame frame123 = { 0, 260, 10, 60, 16, NULL, 0xFFFfff, 1, NULL, 0, 1, 12, 0x000111, 0xCCCccc };
174
:void DrawFrame(dword x,y,w,h,text)
186
:void DrawFrame(dword x,y,w,h,text)
175
{
187
{
176
	frame123.font_color = system.color.work_text;
188
	frame123.font_color = system.color.work_text;
177
	frame123.ext_col = system.color.work_graph;
189
	frame123.ext_col = system.color.work_graph;
178
	frame123.int_col = system.color.work_light;
190
	frame123.int_col = system.color.work_light;
179
	frame123.font_backgr_color = system.color.work;
191
	frame123.font_backgr_color = system.color.work;
180
 
192
 
181
	frame123.start_x = x;
193
	frame123.start_x = x;
182
	frame123.start_y = y;
194
	frame123.start_y = y;
183
	frame123.size_x = w;
195
	frame123.size_x = w;
184
	frame123.size_y = h;
196
	frame123.size_y = h;
185
	frame123.text_pointer = text;
197
	frame123.text_pointer = text;
-
 
198
	if (!text) frame123.flags=0; else frame123.flags=FR_CAPTION;
186
	frame_draw stdcall (#frame123);
199
	frame_draw stdcall (#frame123);
187
}
200
}
188
 
201
 
189
 
202
 
190
#endif
203
#endif