Subversion Repositories Kolibri OS

Rev

Rev 2031 | Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1.  
  2. #include "imgs\icons.txt"
  3. dword Put_icon(dword extension, yy)
  4. {
  5.         dword ftype="", fnum=0; //åøè íåèçâåñíûé ôàéë
  6.  
  7.         IF (!strcmp(extension,"htm")) || (!strcmp(extension,"html")) {fnum = 2; ftype="Web-page";}
  8.         IF (!strcmp(extension,"ini")) || (!strcmp(extension,"conf")) {fnum = 3; ftype="Config";}
  9.         IF (!strcmp(extension,"xlt")) || (!strcmp(extension,"xls")) ||
  10.                 (!strcmp(extension,"ods")) || (!strcmp(extension,"xlsx")) {fnum = 4; ftype="Table";}
  11.         IF (!strcmp(extension,"cmd")) || (!strcmp(extension,"bat")) || (!strcmp(extension,"sh")) {fnum = 5; ftype="Script";}
  12.         IF (!strcmp(extension,"com")) {fnum = 5; ftype="DOS Exec";}
  13.         IF (!strcmp(extension,"kex")) {fnum = 6; ftype="Program";}
  14.         IF (!strcmp(extension,"exe")) || (!strcmp(extension,"msi")) {fnum = 7; ftype="Win32 Exec";}
  15.         IF (!strcmp(extension,"sys")) || (!strcmp(extension,"ocx")) ||
  16.        (!strcmp(extension,"drv")) || (!strcmp(extension,"so")) fnum = 8;
  17.         IF (!strcmp(extension,"inc"))  fnum = 9;
  18.         IF (!strcmp(extension,"chr")) || (!strcmp(extension,"mt")) ||
  19.            (!strcmp(extension,"ttf")) || (!strcmp(extension,"fon")) {fnum = 10; ftype="Font";}
  20.         IF (!strcmp(extension,"asm")) {fnum = 11; ftype="Source";}
  21.         IF (!strcmp(extension,"skn")) {fnum = 13; ftype="Skin";}
  22.         IF (!strcmp(extension,"djvu")) || (!strcmp(extension,"pdf")) {fnum = 15; ftype="Book";}
  23.         IF (!strcmp(extension,"nes")) {fnum = 18; ftype="Cartridge";}
  24.         IF (!strcmp(extension,"img")) || (!strcmp(extension,"ima")) {fnum = 21; ftype="Image";}
  25.         IF (!strcmp(extension,"dll")) || (!strcmp(extension,"obj")) {fnum = 22; ftype="Library";}
  26.         IF (!strcmp(extension,"iso")) || (!strcmp(extension,"cue")) ||
  27.            (!strcmp(extension,"nrg")) || (!strcmp(extension,"mdf")) {fnum = 24; ftype="Disc image";}
  28.        
  29.         //text
  30.         IF (!strcmp(extension,"txt")) || (!strcmp(extension,"doc")) ||
  31.            (!strcmp(extension,"rtf")) || (!strcmp(extension,"odt")) ||
  32.            (!strcmp(extension,"docx")) {fnum = 1; ftype="Text";}
  33.         //èçîáðàæåíèÿ
  34.         IF (!strcmp(extension,"gif")) || (!strcmp(extension,"bmp")) ||
  35.            (!strcmp(extension,"tga")) || (!strcmp(extension,"pcx")) ||
  36.            (!strcmp(extension,"png")) || (!strcmp(extension,"jpg")) ||
  37.            (!strcmp(extension,"jpeg")) || (!strcmp(extension,"raw")) {fnum = 19; ftype="Image";}
  38.         //ïèêòîãðàììû
  39.         IF (!strcmp(extension,"ico")) || (!strcmp(extension,"cur")) {fnum = 20; ftype="Icon";}
  40.         //àðõèâû
  41.         IF (!strcmp(extension,"rar")) || (!strcmp(extension,"zip")) ||
  42.            (!strcmp(extension,"cab")) || (!strcmp(extension,"tar")) ||
  43.            (!strcmp(extension,"ajr")) || (!strcmp(extension,"jar")) ||
  44.            (!strcmp(extension,"7z")) ||(!strcmp(extension,"gz")) {fnum = 23; ftype="Archive";}
  45.         //audio
  46.         IF (!strcmp(extension,"mp3")) {fnum = 12; ftype="Music";}
  47.         IF (!strcmp(extension,"wav")) || (!strcmp(extension,"mid")) ||
  48.            (!strcmp(extension,"midi")) || (!strcmp(extension,"ogg")) ||
  49.            (!strcmp(extension,"wma")) {fnum = 12; ftype="Audio";}
  50.         //video
  51.         IF (!strcmp(extension,"avi")) || (!strcmp(extension,"flv")) || (!strcmp(extension,"mpg")) ||
  52.        (!strcmp(extension,"wmv")) || (!strcmp(extension,"mov"))  || (!strcmp(extension,"mkv")) ||
  53.           (!strcmp(extension,"mp4")) {fnum = 14; ftype="Video";}       
  54.         //ïàïêè
  55.         IF (!strcmp(extension,"<DIR>")) { fnum=16;  WriteText(onLeft(145,0),yy+4,0x80,0,extension,0);}
  56.         IF (!strcmp(extension,"..")) fnum=17;
  57.         //
  58.         PutPaletteImage(fnum*16*15+#ficons,16,15,195,yy,#ficons_pal);
  59.         WriteText(onLeft(160,0),yy+4,0x80,0,ftype,0);
  60.         return fnum;
  61. }
  62.  
  63.  
  64.  
  65. void IconFairing(int filenum, y)
  66. {
  67.         switch(filenum)
  68.         {
  69.                 case 0...1: //ôàéëèê
  70.                         DrawBar(195,y,2,15,videlenie);
  71.                         RIGHT_PAINT:
  72.                         DrawBar(209,y,2,15,videlenie);
  73.                         DrawBar(205,y,4,1,videlenie);
  74.                         DrawBar(206,y+1,3,1,videlenie);
  75.                         DrawBar(207,y+2,2,1,videlenie);
  76.                         PutPixel(208,y+3,videlenie);
  77.                         return;
  78.                 case 2: //html
  79.                         DrawBar(195,y,1,9,videlenie);
  80.                         DrawBar(196,y,1,7,videlenie);
  81.                         DrawBar(195,y+12,1,3,videlenie);
  82.                         DrawBar(196,y+13,1,2,videlenie);
  83.                         GOTO RIGHT_PAINT;
  84.                 case 3: //íàñòðîéêè
  85.                         DrawBar(195,y,2,7,videlenie);
  86.                         DrawBar(195,y+7,1,2,videlenie);
  87.                         DrawBar(195,y+12,1,3,videlenie);
  88.                         PutPixel(196,y+14,videlenie);
  89.                         GOTO RIGHT_PAINT;
  90.                 case 9: //inc
  91.                         DrawBar(195,y,1,12,videlenie);
  92.                         DrawBar(196,y,1,11,videlenie);
  93.                         DrawBar(197,y,1,10,videlenie);
  94.                         DrawBar(198,y,1,5,videlenie);
  95.                         DrawBar(199,y,1,4,videlenie);
  96.                         DrawBar(200,y,1,3,videlenie);
  97.                         DrawBar(201,y,1,2,videlenie);
  98.                         DrawBar(202,y,1,3,videlenie);
  99.                         DrawBar(203,y,1,2,videlenie);
  100.                         PutPixel(204,y,videlenie);
  101.                         PutPixel(205,y+4,videlenie);
  102.                         PutPixel(206,y+3,videlenie);
  103.                         PutPixel(207,y,videlenie);
  104.                         PutPixel(207,y+2,videlenie);
  105.                         DrawBar(208,y,1,3,videlenie);
  106.                         DrawBar(209,y,2,4,videlenie);
  107.                         DrawBar(210,y,1,15,videlenie);
  108.                         PutPixel(198,y+14,videlenie);
  109.                         DrawBar(199,y+13,1,2,videlenie);
  110.                         DrawBar(200,y+12,10,3,videlenie);
  111.                         PutPixel(205,y+11,videlenie);
  112.                         DrawBar(206,y+10,1,2,videlenie);
  113.                         DrawBar(207,y+9,1,3,videlenie);
  114.                         PutPixel(207,y+7,videlenie);
  115.                         DrawBar(208,y+6,2,7,videlenie);
  116.                         PutPixel(209,y+5,videlenie);
  117.                         return;
  118.                 case 11: //asm
  119.                         DrawBar(195,y,1,15,videlenie);
  120.                         return;
  121.                 case 13: //skin
  122.                         PutPixel(210,y,videlenie);
  123.                         return;
  124.                 case 14...15: //video, book
  125.                         DrawBar(195,y,1,15,videlenie);
  126.                         DrawBar(210,y,1,15,videlenie);
  127.                         return;
  128.                 case 16...17: //ïàïêà
  129.                         DrawBar(195,y,1,15,videlenie);
  130.                         DrawBar(203,y,8,2,videlenie);
  131.                         IF (filenum==17) PutPixel(206,y+1,0x1A7B17); //çåë¸íàÿ òî÷êà ñòðåëêè
  132.                         DrawBar(196,y+13,15,2,videlenie);
  133.                         PutPixel(196,y,videlenie); //.òî÷êè
  134.                         PutPixel(202,y,videlenie);
  135.                         PutPixel(210,y+2,videlenie);
  136.                         PutPixel(196,y+12,videlenie);
  137.                         PutPixel(210,y+12,videlenie);
  138.                         return;
  139.                 case 18: //êàðòðèäæ
  140.                         DrawBar(195,y,16,2,videlenie);
  141.                         DrawBar(195,y+11,1,2,videlenie);
  142.                         DrawBar(210,y+11,1,2,videlenie);
  143.                         DrawBar(195,y+13,16,2,videlenie);
  144.                         return;
  145.                 case 19: //èçîáðàæåíèå
  146.                 case 20: //èçîáðàæåíèå
  147.                         DrawBar(195,y+14,16,1,videlenie);
  148.                         return;
  149.                 case 21: //äèñêåòà
  150.                         PutPixel(195,y,videlenie);
  151.                         PutPixel(210,y,videlenie);
  152.                         return;
  153.                 case 22: //áèáëèîòåêà
  154.                         DrawBar(195,y,16,1,videlenie); //ñâåðõó ñëåâà
  155.                         DrawBar(195,y+1,3,1,videlenie);
  156.                         DrawBar(195,y+2,2,1,videlenie);
  157.                         PutPixel(195,y+3,videlenie);
  158.                         PutPixel(210,y+11,videlenie); //ñïðàâà ñïðàâà
  159.                         DrawBar(209,y+12,2,1,videlenie);
  160.                         DrawBar(208,y+13,3,1,videlenie);
  161.                         DrawBar(207,y+14,4,1,videlenie);
  162.                         return;
  163.                 case 23: //àðõèâ
  164.                         PutPixel(195,y+3,videlenie);
  165.                         PutPixel(195,y+11,videlenie);
  166.                         PutPixel(210,y+3,videlenie);
  167.                         PutPixel(210,y+11,videlenie);
  168.  
  169.                         DrawBar(195,y,7,1,videlenie);
  170.                         DrawBar(204,y,7,1,videlenie);
  171.                         DrawBar(195,y+14,7,1,videlenie);
  172.                         DrawBar(204,y+14,7,1,videlenie);
  173.  
  174.                         DrawBar(195,y+1,5,1,videlenie);
  175.                         DrawBar(206,y+1,5,1,videlenie);
  176.                         DrawBar(195,y+13,5,1,videlenie);
  177.                         DrawBar(206,y+13,5,1,videlenie);
  178.  
  179.                         DrawBar(195,y+2,3,1,videlenie);
  180.                         DrawBar(208,y+2,3,1,videlenie);
  181.                         DrawBar(195,y+12,3,1,videlenie);
  182.                         DrawBar(208,y+12,3,1,videlenie);
  183.                         return;
  184.                 case 24: //îáðàç
  185.                         DrawBar(195,y,6,1,videlenie);
  186.                         DrawBar(195,y+1,4,1,videlenie);
  187.                         DrawBar(195,y+2,3,1,videlenie);
  188.                         DrawBar(195,y+3,2,2,videlenie);
  189.                        
  190.                         DrawBar(195,y+5,1,5,videlenie);
  191.                        
  192.                         DrawBar(195,y+10,2,2,videlenie);
  193.                         DrawBar(195,y+12,3,1,videlenie);
  194.                         DrawBar(195,y+13,4,1,videlenie);
  195.                         DrawBar(195,y+14,6,1,videlenie);                       
  196.  
  197.                        
  198.                         DrawBar(195+11,y,5,1,videlenie);
  199.                         DrawBar(195+13,y+1,3,1,videlenie);
  200.                         DrawBar(195+14,y+2,2,1,videlenie);
  201.                         DrawBar(195+15,y+3,1,2,videlenie);
  202.                        
  203.                         DrawBar(195+15,y+10,1,2,videlenie);
  204.                         DrawBar(195+14,y+12,2,1,videlenie);
  205.                         DrawBar(195+13,y+13,3,1,videlenie);
  206.                         DrawBar(195+11,y+14,5,1,videlenie);                    
  207.  
  208.                         return;
  209.         }
  210. }
  211.