Subversion Repositories Kolibri OS

Rev

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

Rev 6053 Rev 6058
Line 1... Line 1...
1
#define MEMSIZE 4096*30
1
#define MEMSIZE 4096*60
Line 2... Line 2...
2
 
2
 
3
#include "../lib/font.h"
3
#include "../lib/font.h"
4
#include "../lib/io.h"
4
#include "../lib/io.h"
5
#include "../lib/gui.h"
5
#include "../lib/gui.h"
Line 11... Line 11...
11
#include "../lib/obj/proc_lib.h"
11
#include "../lib/obj/proc_lib.h"
12
#include "../lib/obj/http.h"
12
#include "../lib/obj/http.h"
13
#include "../lib/patterns/libimg_load_skin.h"
13
#include "../lib/patterns/libimg_load_skin.h"
14
#include "../lib/patterns/simple_open_dialog.h"
14
#include "../lib/patterns/simple_open_dialog.h"
15
#include "../lib/patterns/history.h"
15
#include "../lib/patterns/history.h"
16
 
-
 
17
#include "../browser/http_downloader.h"
16
#include "../lib/patterns/http_downloader.h"
18
#include "parse_address.h"
-
 
Line 19... Line 17...
19
 
17
 
20
char default_dir[] = "/rd/1";
18
char default_dir[] = "/rd/1";
Line 21... Line 19...
21
od_filter filter2 = {0,0};
19
od_filter filter2 = {0,0};
Line 46... Line 44...
46
	OPEN_FILE,
44
	OPEN_FILE,
47
	MAGNIFY_MINUS,
45
	MAGNIFY_MINUS,
48
	MAGNIFY_PLUS,
46
	MAGNIFY_PLUS,
49
	CHANGE_ENCODING,
47
	CHANGE_ENCODING,
50
	RUN_EDIT,
48
	RUN_EDIT,
51
	SHOW_INFO,
-
 
52
	GO_BACK,
49
	GO_BACK,
53
	GO_FORWARD,
50
	GO_FORWARD,
-
 
51
	SANDWICH
54
};
52
};
Line 55... Line 53...
55
 
53
 
56
char address[UML]="http://";
54
char address[UML]="http://";
57
int	mouse_address_box;
55
int	mouse_address_box;
Line 58... Line 56...
58
edit_box address_box = {250,56,34,0xffffff,0x94AECE,0xffffff,0xffffff,0,UML,#address,#mouse_address_box,2,19,19};
56
edit_box address_box = {250,56,34,0xffffff,0x94AECE,0xffffff,0xffffff,0,UML,#address,#mouse_address_box,2,19,19};
59
 
57
 
60
#include "ini.h"
58
#include "ini.h"
-
 
59
#include "gui.h"
61
#include "gui.h"
60
#include "label.h"
-
 
61
#include "link.h"
-
 
62
#include "prepare_page.h"
-
 
63
//#include "special_symbols.h"
Line 62... Line 64...
62
#include "label.h"
64
 
63
#include "prepare_page.h"
65
#define SANDWICH_MENU "Refresh page\nEdit page\nHistory\nAbout"
64
 
66
 
65
void InitDlls()
67
void InitDlls()
Line 96... Line 98...
96
			case evButton:
98
			case evButton:
97
				HandleButtonEvent();
99
				HandleButtonEvent();
98
				break;
100
				break;
99
			case evReDraw:
101
			case evReDraw:
100
				draw_window();
102
				draw_window();
101
				if (menu.list.cur_y) {
103
				if (menu.list.cur_y>=10) && (menu.list.cur_y<20) {
102
					encoding = menu.list.cur_y - 10;
104
					encoding = menu.list.cur_y - 10;
-
 
105
					EventPageRefresh();
-
 
106
					menu.list.cur_y = 0;
-
 
107
				}
-
 
108
				if (menu.list.cur_y>=20) {
-
 
109
					menu.list.cur_y-=20;
103
					debugln("evReDraw: charset changed");
110
					if (menu.list.cur_y==0) EventPageRefresh();
104
					EventOpenAddress(history.current());
111
					if (menu.list.cur_y==1) EventRunEdit();
-
 
112
					if (menu.list.cur_y==2) EventShowHistory();
-
 
113
					if (menu.list.cur_y==3) EventShowInfo();
105
					menu.list.cur_y = 0;
114
					menu.list.cur_y = 0;
106
				}
115
				} 
107
		}
116
		}
108
	}
117
	}
109
}
118
}
Line 137... Line 146...
137
			EventChangeEncoding();
146
			EventChangeEncoding();
138
			break;
147
			break;
139
		case RUN_EDIT:
148
		case RUN_EDIT:
140
			EventRunEdit();
149
			EventRunEdit();
141
			break;
150
			break;
142
		case SHOW_INFO:
151
		case SANDWICH:
143
			EventShowInfo();
152
			EventShowSandwichMenu();
144
			break;
153
			break;
145
	}
154
	}
146
}
155
}
Line 203... Line 212...
203
void HandleMouseEvent()
212
void HandleMouseEvent()
204
{
213
{
205
	edit_box_mouse stdcall (#address_box);
214
	edit_box_mouse stdcall (#address_box);
206
	mouse.get();
215
	mouse.get();
207
	list.wheel_size = 7;
216
	list.wheel_size = 7;
-
 
217
	link.hover();
208
	if (list.MouseScroll(mouse.vert)) {
218
	if (list.MouseScroll(mouse.vert)) {
209
		DrawPage(); 
219
		DrawPage(); 
210
		return; 
220
		return; 
211
	}
221
	}
212
	scrollbar_v_mouse (#scroll);
222
	scrollbar_v_mouse (#scroll);
Line 277... Line 287...
277
				if (downloader.data_full_size>0)
287
				if (downloader.data_full_size>0)
278
					DrawProgress(STEP_2_COUNT_PAGE_HEIGHT-STEP_1_DOWNLOAD_PAGE*downloader.data_downloaded_size/downloader.data_full_size); 
288
					DrawProgress(STEP_2_COUNT_PAGE_HEIGHT-STEP_1_DOWNLOAD_PAGE*downloader.data_downloaded_size/downloader.data_full_size); 
279
				else
289
				else
280
					DrawProgress(STEP_2_COUNT_PAGE_HEIGHT-STEP_1_DOWNLOAD_PAGE/2);
290
					DrawProgress(STEP_2_COUNT_PAGE_HEIGHT-STEP_1_DOWNLOAD_PAGE/2);
281
			}
291
			}
-
 
292
			strcpy(#address,downloader.url);
-
 
293
			DrawAddressBox();
282
			io.buffer_data = downloader.bufpointer;
294
			io.buffer_data = downloader.bufpointer;
283
		}
295
		}
284
	}
296
	}
Line 285... Line 297...
285
 
297
 
Line 354... Line 366...
354
void EventGoForward()
366
void EventGoForward()
355
{
367
{
356
	if (history.forward()) EventOpenAddress(history.current());
368
	if (history.forward()) EventOpenAddress(history.current());
357
}
369
}
Line -... Line 370...
-
 
370
 
-
 
371
void EventShowSandwichMenu()
-
 
372
{
-
 
373
	menu.selected = 0;
-
 
374
	menu.show(Form.left+Form.cwidth-130,Form.top+TOOLBAR_H+skin_height-10, 130, SANDWICH_MENU, 20);
-
 
375
}
-
 
376
 
-
 
377
void EventPageRefresh()
-
 
378
{
-
 
379
	EventOpenAddress(history.current());
-
 
380
}
358
 
381
 
Line 359... Line 382...
359
/* ------------------------------------------- */
382
/* ------------------------------------------- */
360
 
383
 
Line 373... Line 396...
373
	DrawBar(0, TOOLBAR_H - 1, Form.cwidth, 1, 0x7F7F7F);
396
	DrawBar(0, TOOLBAR_H - 1, Form.cwidth, 1, 0x7F7F7F);
Line 374... Line 397...
374
	
397
	
375
	DrawToolbarButton(GO_BACK,         8);
398
	DrawToolbarButton(GO_BACK,         8);
376
	DrawToolbarButton(GO_FORWARD,      33);
399
	DrawToolbarButton(GO_FORWARD,      33);
377
	DrawToolbarButton(OPEN_FILE,       68);
400
	DrawToolbarButton(OPEN_FILE,       68);
378
	DrawToolbarButton(MAGNIFY_PLUS,    Form.cwidth - 161);
401
	DrawToolbarButton(MAGNIFY_PLUS,    Form.cwidth - 125);
379
	DrawToolbarButton(MAGNIFY_MINUS,   Form.cwidth - 136);
402
	DrawToolbarButton(MAGNIFY_MINUS,   Form.cwidth - 100);
380
	DrawToolbarButton(CHANGE_ENCODING, Form.cwidth - 102);
-
 
381
	DrawToolbarButton(RUN_EDIT,        Form.cwidth - 68);
403
	DrawToolbarButton(CHANGE_ENCODING, Form.cwidth - 64);
Line 382... Line 404...
382
	DrawToolbarButton(SHOW_INFO,       Form.cwidth - 34);
404
	DrawToolbarButton(SANDWICH,        Form.cwidth - 31);
Line 383... Line 405...
383
 
405
 
384
	DrawAddressBox();
406
	DrawAddressBox();
Line 411... Line 433...
411
 
433
 
412
void DrawAddressBox()
434
void DrawAddressBox()
413
{
435
{
414
	address_box.left = 97;
436
	address_box.left = 97;
415
	address_box.top = 11;
437
	address_box.top = 11;
416
	address_box.width = Form.cwidth - address_box.left - 172;
438
	address_box.width = Form.cwidth - address_box.left - 138;
417
	DrawRectangle(address_box.left-4, address_box.top-5, address_box.width+6, 23, 0x8C8C8C);
439
	DrawRectangle(address_box.left-4, address_box.top-5, address_box.width+6, 23, 0x8C8C8C);
418
	DrawWideRectangle(address_box.left-3, address_box.top-3, address_box.width+5, 21, 4, address_box.color);
440
	DrawWideRectangle(address_box.left-3, address_box.top-3, address_box.width+5, 21, 4, address_box.color);
419
	address_box.size = address_box.pos = address_box.shift = address_box.shift_old = strlen(#address);
441
	address_box.size = address_box.pos = address_box.shift = address_box.shift_old = strlen(#address);
420
	address_box.offset = 0;
442
	address_box.offset = 0;