Subversion Repositories Kolibri OS

Rev

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