Subversion Repositories Kolibri OS

Rev

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

Rev 2054 Rev 2098
Line 2... Line 2...
2
//GNU GPL licence.
2
//GNU GPL licence.
Line 3... Line 3...
3
 
3
 
4
 
4
 
-
 
5
//íå âûäåëÿåò, åñëè ïåðåèìåíîâàòü â /rd/1/ -----   ñòðî÷êà 392
Line 5... Line -...
5
//íå âûäåëÿåò, åñëè ïåðåèìåíîâàòü â /rd/1/ -----   ñòðî÷êà 392
-
 
6
//ïðè îòêðûòèè ïðîãðàììû ñ ïàðàìåòðîì âûäåëÿåò ïîñëåäíèé ôàéë â ïàïêå
6
//ïðè îòêðûòèè ïðîãðàììû ñ ïàðàìåòðîì âûäåëÿåò ïîñëåäíèé ôàéë â ïàïêå
7
 
7
//íåìíîãî êðèâàÿ ïðîêðóòêà
8
#codesize  
8
 
9
#include "lib\kolibri.h--"
9
#include "lib\kolibri.h--"
10
#include "lib\memory.h--"
10
#include "lib\memory.h--"
11
#include "lib\edit_box_lib.h--"
11
#include "lib\edit_box_lib.h--"
Line 12... Line 12...
12
#include "lib\file_system.h--" 
12
#include "lib\file_system.h--" 
13
#include "imgs\toolbar.txt"
13
#include "imgs\toolbar.txt"
14
#include "imgs\left_p.txt"
14
#include "imgs\left_p.txt"
15
 
15
 
16
 
16
 
17
//ïåðåìåííûå
17
//ïåðåìåííûå
18
#define title "Eolite File Manager v0.98.9"
18
#define title "Eolite File Manager v0.99"
Line 103... Line 103...
103
	ReadDir(10, devbuf, "/");
103
	ReadDir(10, devbuf, "/");
104
	dev_num=EBX;
104
	dev_num=EBX;
105
	//
105
	//
106
	IF (param[0]<>'')
106
	IF (param[0]<>'')
107
	{
107
	{
-
 
108
		IF (strcmp(#path,#param)==0) copystr("/sys/",#path); //ýòî ïîòîìó ÷òî åñëè çàïóñòèòü Eolite '/rd/1/' áóäåò ïóñòîå îêíî
108
		copystr(#param,#edit_path);
109
		copystr(#param,#edit_path);
109
		Goto_edit_path();
110
		Goto_edit_path();
110
	} ELSE Open_Dir(#path,2); //áûë ëè çàïóñê ñ ïàðàìåòðîì
111
	} ELSE Open_Dir(#path,2); //áûë ëè çàïóñê ñ ïàðàìåòðîì
111
	loop()
112
	loop()
112
	{
113
	{
Line 144... Line 145...
144
 
145
 
145
					//êîë¸ñèêî ìûøè
146
					//êîë¸ñèêî ìûøè
146
					IF (m.vert==65535) IF (curbtn==0) FileList_ReDraw(-3); ELSE FileList_ReDraw(-1);
147
					IF (m.vert==65535) IF (curbtn==0) FileList_ReDraw(-3); ELSE FileList_ReDraw(-1);
147
					IF (m.vert==1) IF (curbtn==but_num-1) FileList_ReDraw(3); ELSE FileList_ReDraw(1);
148
					IF (m.vert==1) IF (curbtn==but_num-1) FileList_ReDraw(3); ELSE FileList_ReDraw(1);
148
					//ñêðîëë
149
					//ñêðîëë
149
					if (m.x>=Form.width-21) && (m.x<=Form.width-6) while (m.lkm)
150
					if (m.x>=Form.width-21) && (m.x<=Form.width-6) && (m.y>56) while (m.lkm)
150
					{
151
					{
151
						IF (scroll_size/2+57>m.y) || (m.y<0) || (m.y>4000) m.y=scroll_size/2+57; //åñëè êóðñîð íàä îêíîì
152
						IF (scroll_size/2+57>m.y) || (m.y<0) || (m.y>4000) m.y=scroll_size/2+57; //åñëè êóðñîð íàä îêíîì
152
						id=za_kadrom; //ñîõðàíÿåì ñòàðîå êîëè÷åñòâî
153
						id=za_kadrom; //ñîõðàíÿåì ñòàðîå êîëè÷åñòâî
153
						j= scroll_size/2;
154
						j= scroll_size/2;
Line 163... Line 164...
163
				id=GetButtonID();
164
				id=GetButtonID();
164
				IF (id==1) ExitProcess();
165
				IF (id==1) ExitProcess();
165
				IF (del_active==1) {IF (id==301) || (id==302) Del_File(302-id); break;}
166
				IF (del_active==1) {IF (id==301) || (id==302) Del_File(302-id); break;}
166
				switch(id) 
167
				switch(id) 
167
				{
168
				{
168
					CASE 21: GoBack(); break;//Íàçàä
169
					CASE 21: //Íàçàä
-
 
170
							GoBack();
-
 
171
							break;
-
 
172
					CASE 23: //up!
169
					CASE 23: IF (strcmp(#path,"/")<>0) Dir_Up(); break;//up!
173
							IF (strcmp(#path,"/")<>0) Dir_Up();
-
 
174
							break;
170
					CASE 24: key=24; //cut
175
					CASE 24: //cut
-
 
176
							key=24; 
-
 
177
					CASE 25: //copy
171
					CASE 25: goto CTRLC_MARK; //copy
178
							goto CTRLC_MARK;
172
					CASE 26: Paste(); break;//paste
179
					CASE 26: //paste
-
 
180
							Paste();
-
 
181
							break;
173
					CASE 27: Goto_edit_path(); break; //goto edit_path
182
					CASE 27: //goto edit_path
-
 
183
							Goto_edit_path();
-
 
184
							break; 
174
					CASE 31...33: //sort
185
					CASE 31...33: //sort
175
							IF (sort_num==id-30) break;
186
							IF (sort_num==id-30) break;
176
							IF(sort_num==1)DrawBar(onLeft(192,168)/2+210,45,6,9,0xE4DFE1);
187
							IF(sort_num==1)DrawBar(onLeft(192,168)/2+210,45,6,9,0xE4DFE1);
177
							IF(sort_num==2)DrawBar(onLeft(115,0),45,6,9,0xE4DFE1);
188
							IF(sort_num==2)DrawBar(onLeft(115,0),45,6,9,0xE4DFE1);
178
							IF(sort_num==3)DrawBar(onLeft(44,0),45,6,9,0xE4DFE1);
189
							IF(sort_num==3)DrawBar(onLeft(44,0),45,6,9,0xE4DFE1);
Line 240... Line 251...
240
				{
251
				{
241
						case 209...217:
252
						case 209...217:
242
								id=key-110;
253
								id=key-110;
243
								IF (id-100>=dev_num) break;
254
								IF (id-100>=dev_num) break;
244
								GOTO DEVICE_MARK;
255
								GOTO DEVICE_MARK;
245
						case   8: GoBack(); break; //Íàçàä
256
						case   8: //Íàçàä
-
 
257
								GoBack();
-
 
258
								break; 
-
 
259
						case 004: //Ctrl+D ðèñ íà ðàá ñòîë ðàñòÿíóòü
-
 
260
								copystr("\\S__", #temp);
-
 
261
								copystr(#file_path, #temp+strlen(#temp));
-
 
262
								RunProgram("/sys/media/kiv", #temp);
-
 
263
								WriteDebug(#temp);
-
 
264
								break;
-
 
265
						case 014: //Ctrl+N íîâîå îêíî
-
 
266
								IF (Form.left==98) MoveSize(Form.left-20,Form.top-20,OLD,OLD);
246
						case 014: MoveSize(80,80,OLD,OLD); RunProgram("/sys/File Managers/Eolite", #path); break; //íîâîå îêíî
267
								RunProgram("/sys/File Managers/Eolite", #path);
-
 
268
								break; 
247
						case 024: //Ctrl+X cut
269
						case 024: //Ctrl+X cut
248
						case 003: //Ctrl+C copy
270
						case 003: //Ctrl+C copy
249
								CTRLC_MARK:
271
								CTRLC_MARK:
250
								IF (isdir) break; //ïàïêè ïîêà ÷òî êîïèðîâàòü íå óìååì
272
								IF (isdir) break; //ïàïêè ïîêà ÷òî êîïèðîâàòü íå óìååì
251
								copystr(#file_path,#copy_file); //âû÷èñëÿåì êàêîé ôàéë êîïèðîâàòü
273
								copystr(#file_path,#copy_file); //âû÷èñëÿåì êàêîé ôàéë êîïèðîâàòü
Line 339... Line 361...
339
	IF (Form.height==GetSkinWidth()+3) return; //íè÷åãî íå äåëàòü åñëè îêíî ñõëîïíóòî â çàãîëîâîê
361
	IF (Form.height==GetSkinWidth()+3) return; //íè÷åãî íå äåëàòü åñëè îêíî ñõëîïíóòî â çàãîëîâîê
340
	  IF (Form.height<280) MoveSize(OLD,OLD,OLD,280);
362
	  IF (Form.height<280) MoveSize(OLD,OLD,OLD,280);
341
	  IF (Form.width<480) MoveSize(OLD,OLD,480,OLD);
363
	  IF (Form.width<480) MoveSize(OLD,OLD,480,OLD);
342
	//toolbar buttons
364
	//toolbar buttons
343
	PutPaletteImage(#toolbar,246,39,0,0,#toolbar_pal);
365
	PutPaletteImage(#toolbar,246,39,0,0,#toolbar_pal);
-
 
366
	FOR (j=0; j<3; j++) DefineButton(toolbar_buttons_x[j]+2,5+2,31-5,29-5,21+j+BT_HIDE,0xE4DFE1);
344
	FOR (j=0; j<6; j++) DefineButton(toolbar_buttons_x[j],5,31,29,21+j+BT_HIDE,0xE4DFE1);
367
	FOR (j=3; j<6; j++) DefineButton(toolbar_buttons_x[j],5,31,29,21+j+BT_HIDE,0xE4DFE1);
345
	//ïîëîñà àäðåñà
368
	//ïîëîñà àäðåñà
346
	edit1.width=Form.width-314;
369
	edit1.width=Form.width-314;
347
	DrawBar(246,0,onLeft(246,60),12,0xE4DFE1); //ôîí íàä ïîëîñîé àäðåñà
370
	DrawBar(246,0,onLeft(246,60),12,0xE4DFE1); //ôîí íàä ïîëîñîé àäðåñà
348
	DrawBar(246,29,onLeft(246,60),10,0xE4DFE1); //ôîí ïîä ïîëîñîé àäðåñà
371
	DrawBar(246,29,onLeft(246,60),10,0xE4DFE1); //ôîí ïîä ïîëîñîé àäðåñà
349
	DrawRegion_3D(246,12,onLeft(66,246),16,0x94AECE,0x94AECE);	//îáîäîê
372
	DrawRegion_3D(246,12,onLeft(66,246),16,0x94AECE,0x94AECE);	//îáîäîê
Line 421... Line 444...
421
		{
444
		{
422
			IF(but_num+za_kadrom+curbtn_>=count) //18+0+33>=41
445
			IF(but_num+za_kadrom+curbtn_>=count) //18+0+33>=41
423
			{
446
			{
424
				//WriteDebug("1");
447
				//WriteDebug("1");
425
				za_kadrom=count-but_num;
448
				za_kadrom=count-but_num;
-
 
449
				//WriteDebug(IntToStr(curbtn));
-
 
450
				//WriteDebug(IntToStr(curbtn_));
426
				curbtn=curbtn_-za_kadrom+curbtn;
451
				curbtn=curbtn_-za_kadrom+curbtn;
427
				}
452
				}
428
			ELSE
453
			ELSE
429
			{
454
			{
430
				//WriteDebug("2");
-
 
431
				za_kadrom+=curbtn_+curbtn-but_num+1;
455
				za_kadrom+=curbtn_+curbtn-but_num+1;
432
				//curbtn=but_num-1;
-
 
433
				curbtn=but_num-1;
456
				curbtn=but_num-1;
434
			}
457
			}
435
			IF (curbtn<0) || (curbtn>but_num)
458
			IF (curbtn<0) || (curbtn>but_num)
436
			{
459
			{
-
 
460
				//WriteDebug(IntToStr(curbtn));
437
				//ShowMessage("Bug found! Tell it Leency!");
461
				//ShowMessage("Bug found! Tell it Leency!");
438
				curbtn=but_num-1;
462
				curbtn=but_num-1;
439
			}
463
			}
440
			List_ReDraw();
464
			List_ReDraw();
441
			//WriteDebug(IntToStr(curbtn)); //=0
465
			//WriteDebug(IntToStr(curbtn)); //=0