Rev 2035 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2035 | Rev 2054 | ||
---|---|---|---|
Line 11... | Line 11... | ||
11 | #include "lib\edit_box_lib.h--" |
11 | #include "lib\edit_box_lib.h--" |
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" |
Line 15... | Line -... | ||
15 | - | ||
16 | // |
- | |
17 | #define NOTIFY_PATH "@notify" |
- | |
18 | #define INI_PATH "/sys/File managers/Eolite.ini" |
- | |
Line 19... | Line 15... | ||
19 | 15 | ||
20 | 16 | ||
21 | //ïåðåìåííûå |
17 | //ïåðåìåííûå |
22 | #define title "Eolite File Manager v0.98.9" |
18 | #define title "Eolite File Manager v0.98.9" |
Line 57... | Line 53... | ||
57 | #include "include\sorting.h--" |
53 | #include "include\sorting.h--" |
58 | #include "include\icons_f.h--" |
54 | #include "include\icons_f.h--" |
59 | #include "include\ini.h--" |
55 | #include "include\ini.h--" |
Line -... | Line 56... | ||
- | 56 | ||
- | 57 | ||
- | 58 | void Devices() |
|
- | 59 | { |
|
- | 60 | //on load |
|
- | 61 | /*devbuf= malloc(3112); //áóôåð ãäå-òî íà 10 äåâàéñîâ â ëåâîé ïàíåëè |
|
- | 62 | ReadDir(10, devbuf, "/"); |
|
- | 63 | dev_num=EBX; |
|
- | 64 | */ |
|
- | 65 | ||
- | 66 | byte dev_icon; dword drive_name[30]; char dev_name[4]; |
|
- | 67 | DrawBar(2,41,190,15,0x00699C); //ñèíèé ïðÿìîóãîëüíèê - ñâåðõó |
|
- | 68 | DrawBar(2,56,15,onTop(21,41),0x00699C); //ñèíèé ïðÿìîóãîëüíèê - ñëåâà |
|
- | 69 | DrawBar(177,56,15,onTop(21,41),0x00699C); //ñèíèé ïðÿìîóãîëüíèê - ñïðàâà |
|
- | 70 | //ñïèñîê äèñêîâ |
|
- | 71 | Tip(56, "Goto:", 0, ""); |
|
- | 72 | for (i=0;i |
|
- | 73 | { |
|
- | 74 | DrawBar(17,i*16+74,160,17,0xFFFFFF); //áåëîå |
|
- | 75 | DefineButton(17,i*16+74,159,16,100+i+BT_HIDE,0xFFFFFF); //ñîçäà¸ì êíîïêè, à ïîòîì âûâîäèì íàçâàíèÿ äèñêîâ |
|
- | 76 | copystr("Unknown drive",#drive_name); //èçíà÷àëüíî íåèçâåñíûé íîñèòåëü |
|
- | 77 | dev_icon=3; //ïî-óìîë÷àíèþ óñòðîéñòâî âûãëÿäèò êàê æåñòÿê |
|
- | 78 | copystr(i*304+ devbuf+72, #dev_name); |
|
- | 79 | IF (dev_name[0]=='r') { dev_icon=0; copystr("RAM-disk /rd/1",#drive_name); } |
|
- | 80 | IF (dev_name[0]=='c') { dev_icon=1; copystr("CD-drive /",#drive_name); } |
|
- | 81 | IF (dev_name[0]=='f') { dev_icon=2; copystr("Floppy disk /",#drive_name); } |
|
- | 82 | IF (dev_name[0]=='h') copystr("Hard disk drive /",#drive_name); |
|
- | 83 | IF (dev_name[0]=='b') copystr("SATA disk drive /",#drive_name); |
|
- | 84 | // |
|
- | 85 | IF (dev_icon<>0) copystr(#dev_name,#drive_name+strlen(#drive_name)); |
|
- | 86 | copystr("/",#drive_name+strlen(#drive_name)); |
|
- | 87 | // |
|
- | 88 | WriteText(45,i*16+79,0x80,0,#drive_name,0); |
|
- | 89 | PutImage(dev_icon*14*13*3+#devices,14,13,21,i*16+76); |
|
- | 90 | } |
|
- | 91 | Actions(); //ôóíêöèè ôàéëîâ è ïàïîê |
|
60 | 92 | } |
|
61 | 93 | ||
62 | void main() |
94 | void main() |
63 | word key, id; |
95 | word key, id; |
64 | mouse m; |
96 | mouse m; |
65 | int pressed_y; |
97 | int pressed_y; |
- | 98 | { |
|
66 | { |
99 | GetIni(1); |
67 | GetIni(1); |
100 | // |
68 | load_editbox_lib(); |
101 | load_editbox_lib(); |
69 | devbuf= malloc(3112); //áóôåð ãäå-òî íà 10 äåâàéñîâ â ëåâîé ïàíåëè |
102 | devbuf= malloc(3112); //áóôåð ãäå-òî íà 10 äåâàéñîâ â ëåâîé ïàíåëè |
- | 103 | ReadDir(10, devbuf, "/"); |
|
70 | ReadDir(10, devbuf, "/"); |
104 | dev_num=EBX; |
71 | dev_num=EBX; |
105 | // |
72 | IF (param[0]<>'') |
106 | IF (param[0]<>'') |
73 | { |
107 | { |
74 | copystr(#param,#edit_path); |
108 | copystr(#param,#edit_path); |
Line 234... | Line 268... | ||
234 | break; |
268 | break; |
235 | case 177: //down |
269 | case 177: //down |
236 | FileList_ReDraw(1); |
270 | FileList_ReDraw(1); |
237 | break; |
271 | break; |
238 | case 180: //home |
272 | case 180: //home |
- | 273 | za_kadrom=0; |
|
- | 274 | curbtn=0; |
|
239 | FileList_ReDraw(-za_kadrom-curbtn); |
275 | List_ReDraw(); |
240 | break; |
276 | break; |
241 | case 181: //end |
277 | case 181: //end |
242 | FileList_ReDraw(count-za_kadrom-curbtn+but_num-1); |
278 | za_kadrom=count-but_num; |
- | 279 | curbtn=but_num-1; |
|
- | 280 | List_ReDraw(); |
|
243 | break; |
281 | break; |
244 | case 183: //Page Down |
282 | case 183: //Page Down |
245 | FileList_ReDraw(but_num-1); |
283 | FileList_ReDraw(but_num-1); |
246 | break; |
284 | break; |
247 | case 184: //Page Up |
285 | case 184: //Page Up |
Line 275... | Line 313... | ||
275 | for (i=curbtn+za_kadrom+1; i |
313 | for (i=curbtn+za_kadrom+1; i |
276 | { |
314 | { |
277 | copystr(file_mas[i]*304+buf+72,#temp); |
315 | copystr(file_mas[i]*304+buf+72,#temp); |
278 | AL=DSBYTE[#temp]; |
316 | AL=DSBYTE[#temp]; |
279 | IF(AL>='A')&&(AL<='Z')DSBYTE[#temp]=AL|0x20; |
317 | IF(AL>='A')&&(AL<='Z')DSBYTE[#temp]=AL|0x20; |
- | 318 | IF (temp[0]==key) |
|
- | 319 | { |
|
280 | IF (temp[0]==key) {FileList_ReDraw(i-curbtn-za_kadrom); break;} |
320 | FileList_ReDraw(i-curbtn-za_kadrom); |
- | 321 | break; |
|
- | 322 | } |
|
281 | } |
323 | } |
282 | } |
324 | } |
283 | BREAK; |
325 | BREAK; |
284 | case evReDraw: draw_window(); |
326 | case evReDraw: draw_window(); |
285 | } |
327 | } |
Line 289... | Line 331... | ||
289 | 331 | ||
290 | 332 | ||
291 | inline fastcall void draw_window() |
333 | inline fastcall void draw_window() |
292 | { |
334 | { |
293 | WindowRedrawStatus(1); |
335 | WindowRedrawStatus(1); |
294 | DefineAndDrawWindow(100,100,600,410,0x73,0x10E4DFE1,0,0,title); |
336 | DefineAndDrawWindow(98,90,560,481,0x73,0x10E4DFE1,0,0,title); |
295 | WindowRedrawStatus(2); |
337 | WindowRedrawStatus(2); |
296 | Form.GetInfo(SelfInfo); |
338 | Form.GetInfo(SelfInfo); |
297 | IF (Form.height==GetSkinWidth()+3) return; //íè÷åãî íå äåëàòü åñëè îêíî ñõëîïíóòî â çàãîëîâîê |
339 | IF (Form.height==GetSkinWidth()+3) return; //íè÷åãî íå äåëàòü åñëè îêíî ñõëîïíóòî â çàãîëîâîê |
Line 373... | Line 415... | ||
373 | Line_ReDraw(0xFFFFFF, curbtn); //áåëàÿ ïîëîñà |
415 | Line_ReDraw(0xFFFFFF, curbtn); //áåëàÿ ïîëîñà |
374 | curbtn+=curbtn_; |
416 | curbtn+=curbtn_; |
375 | Line_ReDraw(videlenie, curbtn); //âûäåëåíèå |
417 | Line_ReDraw(videlenie, curbtn); //âûäåëåíèå |
376 | return; |
418 | return; |
377 | } |
419 | } |
378 | //WriteDebug(IntToStr(curbtn)); =0 |
- | |
379 | //WriteDebug(IntToStr(za_kadrom)); =0 |
- | |
380 | //WriteDebug(IntToStr(count)); =41 |
- | |
381 | ELSE |
420 | else |
382 | { |
421 | { |
383 | IF(but_num+za_kadrom+curbtn_>=count) //18+0+33>=41 |
422 | IF(but_num+za_kadrom+curbtn_>=count) //18+0+33>=41 |
384 | { |
423 | { |
- | 424 | //WriteDebug("1"); |
|
385 | za_kadrom=count-but_num; //41-18=23 |
425 | za_kadrom=count-but_num; |
386 | //curbtn=but_num+curbtn_-count; //11=33-18 |
426 | curbtn=curbtn_-za_kadrom+curbtn; |
387 | } |
427 | } |
388 | ELSE |
428 | ELSE |
389 | { |
429 | { |
- | 430 | //WriteDebug("2"); |
|
390 | za_kadrom+=curbtn_+curbtn-but_num+1; |
431 | za_kadrom+=curbtn_+curbtn-but_num+1; |
391 | //curbtn=but_num-1; |
432 | //curbtn=but_num-1; |
- | 433 | curbtn=but_num-1; |
|
392 | } |
434 | } |
- | 435 | IF (curbtn<0) || (curbtn>but_num) |
|
- | 436 | { |
|
- | 437 | //ShowMessage("Bug found! Tell it Leency!"); |
|
393 | curbtn=but_num-1; |
438 | curbtn=but_num-1; |
- | 439 | } |
|
394 | List_ReDraw(); |
440 | List_ReDraw(); |
- | 441 | //WriteDebug(IntToStr(curbtn)); //=0 |
|
- | 442 | //WriteDebug(IntToStr(za_kadrom)); //=0 |
|
- | 443 | //WriteDebug(IntToStr(but_num)); //=41 |
|
- | 444 | //WriteDebug(IntToStr(count)); //=41 |
|
- | 445 | ||
- | 446 | /*WriteDebug(""); |
|
- | 447 | WriteDebug(#path); |
|
- | 448 | WriteDebug("Number of files:"); WriteDebug(IntToStr(count)); |
|
- | 449 | WriteDebug("but_num:"); WriteDebug(IntToStr(but_num)); |
|
- | 450 | WriteDebug("curbtn"); WriteDebug(IntToStr(curbtn)); |
|
- | 451 | WriteDebug("ra_kadrom:"); WriteDebug(IntToStr(za_kadrom));*/ |
|
395 | } |
452 | } |
396 | } |
453 | } |
397 | } |
454 | } |
Line 620... | Line 677... | ||
620 | } |
677 | } |
621 | Line_ReDraw(videlenie,curbtn); |
678 | Line_ReDraw(videlenie,curbtn); |
622 | } |
679 | } |
Line 623... | Line -... | ||
623 | - | ||
624 | - | ||
625 | void Devices() |
- | |
626 | { |
- | |
627 | byte dev_icon; dword drive_name[30]; char dev_name[4]; |
- | |
628 | DrawBar(2,41,190,15,0x00699C); //ñèíèé ïðÿìîóãîëüíèê - ñâåðõó |
- | |
629 | DrawBar(2,56,15,onTop(21,41),0x00699C); //ñèíèé ïðÿìîóãîëüíèê - ñëåâà |
- | |
630 | DrawBar(177,56,15,onTop(21,41),0x00699C); //ñèíèé ïðÿìîóãîëüíèê - ñïðàâà |
- | |
631 | //ñïèñîê äèñêîâ |
- | |
632 | Tip(56, "Goto:", 0, ""); |
- | |
633 | for (i=0;i |
- | |
634 | { |
- | |
635 | DrawBar(17,i*16+74,160,17,0xFFFFFF); //áåëîå |
- | |
636 | DefineButton(17,i*16+74,159,16,100+i+BT_HIDE,0xFFFFFF); //ñîçäà¸ì êíîïêè, à ïîòîì âûâîäèì íàçâàíèÿ äèñêîâ |
- | |
637 | copystr("Unknown drive",#drive_name); //èçíà÷àëüíî íåèçâåñíûé íîñèòåëü |
- | |
638 | dev_icon=3; //ïî-óìîë÷àíèþ óñòðîéñòâî âûãëÿäèò êàê æåñòÿê |
- | |
639 | copystr(i*304+ devbuf+72, #dev_name); |
- | |
640 | IF (dev_name[0]=='r') { dev_icon=0; copystr("RAM-disk /rd/1",#drive_name); } |
- | |
641 | IF (dev_name[0]=='c') { dev_icon=1; copystr("CD-drive /",#drive_name); } |
- | |
642 | IF (dev_name[0]=='f') { dev_icon=2; copystr("Floppy disk /",#drive_name); } |
- | |
643 | IF (dev_name[0]=='h') copystr("Hard disk drive /",#drive_name); |
- | |
644 | IF (dev_name[0]=='b') copystr("SATA disk drive /",#drive_name); |
- | |
645 | // |
- | |
646 | IF (dev_icon<>0) copystr(#dev_name,#drive_name+strlen(#drive_name)); |
- | |
647 | copystr("/",#drive_name+strlen(#drive_name)); |
- | |
648 | // |
- | |
649 | WriteText(45,i*16+79,0x80,0,#drive_name,0); |
- | |
650 | PutImage(dev_icon*14*13*3+#devices,14,13,21,i*16+76); |
- | |
651 | } |
- | |
652 | Actions(); //ôóíêöèè ôàéëîâ è ïàïîê |
- | |
653 | } |
- | |
654 | 680 | ||
655 | 681 | ||
656 | void Actions() |
682 | void Actions() |
657 | { |
683 | { |
658 | int actions_y=dev_num*16; |
684 | int actions_y=dev_num*16; |
Line 680... | Line 706... | ||
680 | DrawBar(17,show_actions*51+actions_y+108,160,onTop(show_actions*51+actions_y+108,6),0x00699C); //ñèíåå â êîíöå |
706 | DrawBar(17,show_actions*51+actions_y+108,160,onTop(show_actions*51+actions_y+108,6),0x00699C); //ñèíåå â êîíöå |
681 | } |
707 | } |
Line 682... | Line -... | ||
682 | - | ||
683 | - | ||
684 | - | ||
685 | /*WriteDebug(""); |
- | |
686 | WriteDebug(#path); |
- | |
687 | WriteDebug("Number of files:"); WriteDebug(IntToStr(count)); |
- | |
688 | WriteDebug("but_num:"); WriteDebug(IntToStr(but_num)); |
- | |
689 | WriteDebug("curbtn"); WriteDebug(IntToStr(curbtn)); |
- | |
690 | WriteDebug("ra_kadrom:"); WriteDebug(IntToStr(za_kadrom));*/ |
- | |
691 | 708 | ||
692 | 709 | ||
693 | 710 | ||
694 | void Goto_edit_path() |
711 | void Goto_edit_path() |
695 | { |
712 | { |