Subversion Repositories Kolibri OS

Rev

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

Rev 6572 Rev 6602
Line 418... Line 418...
418
						case SCAN_CODE_ENTER: //Ctrl+Enter
418
						case SCAN_CODE_ENTER: //Ctrl+Enter
419
								if (!itdir) ShowOpenWithDialog();
419
								if (!itdir) ShowOpenWithDialog();
420
								else Open(1);
420
								else Open(1);
421
								break;
421
								break;
422
						case 030: //Ctrl+A - select all files
422
						case 030: //Ctrl+A - select all files
423
								for (i=0; i
423
								for (i=0; i
424
								{
-
 
425
									selected_offset = file_mas[i]*304 + buf+32 + 7;
-
 
426
									if (!i) if (!strncmp(selected_offset+33, "..", 2)) continue; //do not selec ".." directory
-
 
427
									ESBYTE[selected_offset] = 1;
-
 
428
									selected_count++;
-
 
429
								}
-
 
430
								List_ReDraw();
424
								List_ReDraw();
431
								DrawStatusBar();
425
								DrawStatusBar();
432
								break;
426
								break;
433
						case 022: //Ctrl+U - unselect all files
427
						case 022: //Ctrl+U - unselect all files
434
								for (i=0; i
428
								for (i=0; i
435
								{
-
 
436
									selected_offset = file_mas[i]*304 + buf+32 + 7;
-
 
437
									ESBYTE[selected_offset] = 0;
-
 
438
								}
-
 
439
								selected_count = 0;
429
								selected_count = 0;
440
								List_ReDraw();
430
								List_ReDraw();
441
								DrawStatusBar();
431
								DrawStatusBar();
442
								break;
432
								break;
443
					}
433
					}
Line 467... Line 457...
467
						case SCAN_CODE_DEL:
457
						case SCAN_CODE_DEL:
468
								Del_Form();
458
								Del_Form();
469
								break;
459
								break;
470
						case SCAN_CODE_INS:
460
						case SCAN_CODE_INS:
471
								selected_offset = file_mas[files.cur_y]*304 + buf+32 + 7;
461
								selected_offset = file_mas[files.cur_y]*304 + buf+32 + 7;
472
								if (files.cur_y==0) && (!strncmp(selected_offset+33, "..", 2)) goto _INSERT_END; //do not selec ".." directory
-
 
473
								if (ESBYTE[selected_offset])
462
								if (ESBYTE[selected_offset]) setElementSelectedFlag(files.cur_y, false);
474
								{
-
 
475
									ESBYTE[selected_offset]=0;
-
 
476
									selected_count--;
-
 
477
								}
-
 
478
								else
-
 
479
								{
-
 
480
									ESBYTE[selected_offset] = 1;
463
								else setElementSelectedFlag(files.cur_y, true);
481
									selected_count++;
-
 
482
								}
-
 
483
								_INSERT_END:
464
								_INSERT_END:
484
								files.KeyDown();
465
								files.KeyDown();
485
								List_ReDraw();
466
								List_ReDraw();
486
								DrawStatusBar();
467
								DrawStatusBar();
487
								break;
468
								break;
Line 762... Line 743...
762
 
743
 
763
void Open_Dir(dword dir_path, redraw){
744
void Open_Dir(dword dir_path, redraw){
764
	int errornum, maxcount, i;
745
	int errornum, maxcount, i;
765
	if (redraw!=ONLY_SHOW)
746
	if (redraw!=ONLY_SHOW)
-
 
747
	{
766
	{
748
		selected_count = 0;
767
		if (ESBYTE[dir_path+1]!='\0') ESBYTE[dir_path+strlen(dir_path)-1] = '\0';
749
		if (ESBYTE[dir_path+1]!='\0') ESBYTE[dir_path+strlen(dir_path)-1] = '\0';
768
		if (buf) free(buf);
750
		if (buf) free(buf);
769
		errornum = GetDir(#buf, #files.count, dir_path, DIRS_NOROOT);
751
		errornum = GetDir(#buf, #files.count, dir_path, DIRS_NOROOT);
770
		if (ESBYTE[dir_path+1]!='\0') chrcat(dir_path, '/');
752
		if (ESBYTE[dir_path+1]!='\0') chrcat(dir_path, '/');
Line 834... Line 816...
834
}
816
}
Line 835... Line 817...
835
 
817
 
836
 
818
 
837
void Del_Form()
-
 
838
{
-
 
839
	dword selected_offset2;
819
void Del_Form()
840
	int selected_count = 0;
820
{
841
	byte f_count[128];
821
	byte f_count[128];
842
	int dform_x = files.w - 220 / 2 + files.x;
822
	int dform_x = files.w - 220 / 2 + files.x;
843
	if (!strncmp(#file_name,".",2)) || (!strncmp(#file_name,"..",2)) return;
823
	if (!strncmp(#file_name,".",2)) || (!strncmp(#file_name,"..",2)) return;
844
	else
824
	else
845
	{
825
	{
846
		if (!files.count) return;
826
		if (!files.count) return;
847
		DrawEolitePopup(T_YES, T_NO);
-
 
848
		WriteText(-strlen(T_DELETE_FILE)*3+110+dform_x,175,0x80,system.color.work_text,T_DELETE_FILE);
-
 
849
		for (i=0; i
-
 
850
		{
-
 
851
			selected_offset2 = file_mas[i]*304 + buf+32 + 7;
-
 
852
			if (ESBYTE[selected_offset2]) selected_count++;
827
		DrawEolitePopup(T_YES, T_NO);
853
		}
828
		WriteText(-strlen(T_DELETE_FILE)*3+110+dform_x,175,0x80,system.color.work_text,T_DELETE_FILE);
854
		if (selected_count)
829
		if (selected_count)
855
		{
830
		{
856
			sprintf(#f_count,"%s%d%s",DEL_MORE_FILES_1,selected_count,DEL_MORE_FILES_2);
831
			sprintf(#f_count,"%s%d%s",DEL_MORE_FILES_1,selected_count,DEL_MORE_FILES_2);