Subversion Repositories Kolibri OS

Rev

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

Rev 7051 Rev 7218
Line 17... Line 17...
17
#define TOOLBAR_ICON_HEIGHT 24
17
#define TOOLBAR_ICON_HEIGHT 24
Line 18... Line 18...
18
 
18
 
Line 19... Line 19...
19
#define DEFAULT_EDITOR "/sys/tinypad"
19
#define DEFAULT_EDITOR "/sys/tinypad"
20
 
20
 
21
#define INTRO_TEXT "This is a plain Text Reader.\nTry to open some text file."
21
#define INTRO_TEXT "This is a plain Text Reader.\nTry to open some text file."
22
#define VERSION "Text Reader v1.2"
22
#define VERSION "Text Reader v1.21"
Line 23... Line 23...
23
#define ABOUT "Idea: Leency, punk_joker
23
#define ABOUT "Idea: Leency, punk_joker
24
Code: Leency, Veliant, KolibriOS Team
24
Code: Leency, Veliant, KolibriOS Team
-
 
25
 
25
 
26
Hotkeys:
26
Hotkeys:
27
Ctrl+O - open file
27
Ctrl+O - open file
28
Ctrl+I - show file properties
28
Ctrl+Up - bigger font
29
Ctrl+Up - bigger font
Line 39... Line 40...
39
llist list;
40
llist list;
Line 40... Line 41...
40
 
41
 
41
proc_info Form;
42
proc_info Form;
Line 42... Line 43...
42
char title[4196];
43
char title[4196];
-
 
44
 
Line 43... Line 45...
43
 
45
bool help_opened = false;
44
byte help_opened = false;
46
int charsets_menu_left = 0;
45
 
47
 
46
enum {
48
enum {
47
	OPEN_FILE,
49
	OPEN_FILE,
48
	MAGNIFY_MINUS,
50
	MAGNIFY_MINUS,
49
	MAGNIFY_PLUS,
51
	MAGNIFY_PLUS,
-
 
52
	CHANGE_ENCODING,
50
	CHANGE_ENCODING,
53
	RUN_EDIT,
Line 51... Line 54...
51
	RUN_EDIT,
54
	SHOW_INFO,
Line 52... Line 55...
52
	SHOW_INFO,
55
	SHOW_FILE_PROPERTIES
Line 118... Line 121...
118
	switch(btn)
121
	switch(btn)
119
	{
122
	{
120
		case OPEN_FILE:
123
		case OPEN_FILE:
121
			EventOpenFile();
124
			EventOpenFile();
122
			break;
125
			break;
-
 
126
		case SHOW_FILE_PROPERTIES:
-
 
127
			EventShowFileProperties();
-
 
128
			break;
123
		case MAGNIFY_PLUS:
129
		case MAGNIFY_PLUS:
124
			EventMagnifyPlus();
130
			EventMagnifyPlus();
125
			break;
131
			break;
126
		case MAGNIFY_MINUS:
132
		case MAGNIFY_MINUS:
127
			EventMagnifyMinus();
133
			EventMagnifyMinus();
Line 145... Line 151...
145
		help_opened = false;
151
		help_opened = false;
146
		DrawPage();
152
		DrawPage();
147
		return; 
153
		return; 
148
	}
154
	}
149
	GetKeys();
155
	GetKeys();
150
	if (key_scancode==059) {
156
	if (key_scancode == SCAN_CODE_F1) {
151
		EventShowInfo();
157
		EventShowInfo();
152
		return;
158
		return;
153
	}
159
	}
154
	if (key_modifier & KEY_LCTRL) || (key_modifier & KEY_RCTRL) {
160
	if (key_modifier & KEY_LCTRL) || (key_modifier & KEY_RCTRL) {
155
		switch (key_scancode)
161
		switch (key_scancode)
156
		{
162
		{
157
			case 024:
163
			case SCAN_CODE_KEY_O:
158
				EventOpenFile();
164
				EventOpenFile();
159
				break;
165
				break;
-
 
166
			case SCAN_CODE_KEY_I:
-
 
167
				EventShowFileProperties();
-
 
168
				break;
160
			case SCAN_CODE_UP:
169
			case SCAN_CODE_UP:
161
				EventMagnifyPlus();
170
				EventMagnifyPlus();
162
				break;
171
				break;
163
			case SCAN_CODE_DOWN:
172
			case SCAN_CODE_DOWN:
164
				EventMagnifyMinus();
173
				EventMagnifyMinus();
165
				break;
174
				break;
166
			case 018:
175
			case SCAN_CODE_KEY_E:
167
				EventRunEdit();
176
				EventRunEdit();
168
				break;
177
				break;
169
			case SCAN_CODE_TAB:
178
			case SCAN_CODE_TAB:
170
				EventChangeEncoding();
179
				EventChangeEncoding();
171
				break;
180
				break;
Line 200... Line 209...
200
	OpenDialog_start stdcall (#o_dialog);
209
	OpenDialog_start stdcall (#o_dialog);
201
	OpenFile(#openfile_path);
210
	OpenFile(#openfile_path);
202
	PreparePage();
211
	PreparePage();
203
}
212
}
Line -... Line 213...
-
 
213
 
-
 
214
void EventShowFileProperties()
-
 
215
{
-
 
216
	char ss_param[4096];
-
 
217
	if (!param) return;
-
 
218
	sprintf(#ss_param, "-p %s", #param);
-
 
219
	io.run("/sys/File managers/Eolite", #ss_param);
-
 
220
}
204
 
221
 
205
void EventMagnifyPlus()
222
void EventMagnifyPlus()
206
{
223
{
207
	kfont.size.pt++;
224
	kfont.size.pt++;
208
	if(!kfont.changeSIZE())
225
	if(!kfont.changeSIZE())
Line 226... Line 243...
226
}
243
}
Line 227... Line 244...
227
 
244
 
228
void EventChangeEncoding()
245
void EventChangeEncoding()
229
{
246
{
-
 
247
	menu.selected = encoding + 1;
230
	menu.selected = encoding + 1;
248
	menu.show(Form.left+5 + charsets_menu_left, Form.top+29+skin_height, 130,
231
	menu.show(Form.left+104, Form.top+29+skin_height, 130, "UTF-8\nKOI8-RU\nCP1251\nCP1252\nISO8859-5\nCP866", 10);
249
		"UTF-8\nKOI8-RU\nCP1251\nCP1252\nISO8859-5\nCP866", 10);
Line 232... Line 250...
232
}
250
}
233
 
251
 
234
void EventShowInfo() {
252
void EventShowInfo() {
Line 260... Line 278...
260
	list.ClearList();
278
	list.ClearList();
261
}
279
}
Line 262... Line 280...
262
 
280
 
263
void draw_window()
281
void draw_window()
-
 
282
{
-
 
283
	#define PADDING 6
-
 
284
	#define TOOLBAR_BUTTON_WIDTH 26
264
{
285
	incn x;
265
	DefineAndDrawWindow(Form.left,Form.top,Form.width,Form.height,0x73,0,#title,0);
286
	DefineAndDrawWindow(Form.left,Form.top,Form.width,Form.height,0x73,0,#title,0);
266
	GetProcessInfo(#Form, SelfInfo);
287
	GetProcessInfo(#Form, SelfInfo);
Line 267... Line 288...
267
	if (Form.status_window>2) return;
288
	if (Form.status_window>2) return;
268
 
289
 
Line 269... Line 290...
269
	if (Form.width  < 200) { MoveSize(OLD,OLD,200,OLD); return; }
290
	if (Form.width  < 200) { MoveSize(OLD,OLD,200,OLD); return; }
270
	if (Form.height < 200) { MoveSize(OLD,OLD,OLD,200); return; }
291
	if (Form.height < 200) { MoveSize(OLD,OLD,OLD,200); return; }
Line -... Line 292...
-
 
292
	
271
	
293
	DrawBar(0, 0, Form.cwidth, TOOLBAR_H - 1, 0xe1e1e1);
-
 
294
	DrawBar(0, TOOLBAR_H - 1, Form.cwidth, 1, 0x7F7F7F);
272
	DrawBar(0, 0, Form.cwidth, TOOLBAR_H - 1, 0xe1e1e1);
295
	
273
	DrawBar(0, TOOLBAR_H - 1, Form.cwidth, 1, 0x7F7F7F);
296
	x.n = 0;
274
	
297
	DrawToolbarButton(OPEN_FILE,       x.inc(8));
-
 
298
	DrawToolbarButton(SHOW_FILE_PROPERTIES, x.inc(TOOLBAR_BUTTON_WIDTH + PADDING));
275
	DrawToolbarButton(OPEN_FILE,       8);
299
	DrawToolbarButton(MAGNIFY_PLUS,    x.inc(TOOLBAR_BUTTON_WIDTH + PADDING + PADDING));
276
	DrawToolbarButton(MAGNIFY_PLUS,    42);
300
	DrawToolbarButton(MAGNIFY_MINUS,   x.inc(TOOLBAR_BUTTON_WIDTH - 1));
Line 277... Line 301...
277
	DrawToolbarButton(MAGNIFY_MINUS,   67);
301
	DrawToolbarButton(CHANGE_ENCODING, x.inc(TOOLBAR_BUTTON_WIDTH + PADDING + PADDING));
278
	DrawToolbarButton(CHANGE_ENCODING, 101);
302
		charsets_menu_left = x.n;