Subversion Repositories Kolibri OS

Rev

Rev 6264 | Rev 6757 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. char *ext[]={
  2. "..",   17,
  3. "<dir>",16, "<DIR>",16,
  4. "txt", 1, "doc", 1, "rtf", 1, "odt", 1, "log", 1, "docx",1,
  5. "htm", 2, "html",2, "mht", 2,
  6. "ini", 3, "js",  3, "conf",3, "inf", 3,
  7. "xlt", 4, "xls", 4, "ods", 4, "xlsx",4,
  8. "cmd", 5, "bat", 5, "py",  5, "sh",  5, "ksh", 5, "com", 5,
  9. "kex", 6, "lua", 6,
  10. "exe", 7, "msi", 7,
  11. "sys", 8, "ocx", 8, "drv", 8, "so",  8,
  12. "inc", 9,
  13. "chr", 10, "mt",  10, "ttf", 10, "fon", 10, "kf",  10,
  14. "asm", 11,
  15. "mp3", 12, "wav", 12, "mid", 12, "midi",12, "ogg", 12, "wma", 12, "flac",12,
  16. "skn", 13,
  17. "avi", 14, "flv", 14, "mpg", 14, "wmv", 14, "mov", 14, "mkv", 14, "mp4", 14, "vob", 14, "webm", 14,
  18. "djvu",15, "pdf", 15, "fb2", 15,
  19. "nes", 18, "smc", 18,
  20. "gif", 19, "bmp", 19, "tga", 19, "pcx", 19, "png", 19, "pnm", 19, "jpg", 19, "xcf", 19, "ai",  19,
  21. "jpeg",19, "raw", 11, "psd", 19, "wbmp",19, "tiff",19, "tif", 19,
  22. "3ds", 20, "asc", 20, "ico", 20, "cur", 20, "ani", 20, "vox", 20,
  23. "img", 21, "ima", 21,
  24. "dll", 22, "obj", 22, "dict",22,
  25. "rar", 23, "zip", 23, "cab", 23, "tar", 23, "ajr", 23, "jar", 23, "7z", 23, "gz", 23, "kexp", 23,
  26. "iso", 24, "cue", 24, "nrg", 24, "mdf", 24,
  27. "grf", 25,
  28. 0,0};
  29.  
  30. void DrawIconByExtension(dword extension, xx, yy, fairing_color)
  31. {
  32.         int i;
  33.         dword icon_n=0;
  34.         if (extension) for (i=0; ext[i]!=0; i+=2;)
  35.         {
  36.                 if (strcmpi(extension, ext[i])==0)
  37.                 {
  38.                         icon_n = ext[i+1];
  39.                         break;
  40.                 }
  41.         }
  42.         ficons_pal[0] = fairing_color;
  43.         PutPaletteImage(icon_n*16*15+#ficons,16,15,xx,yy,8,#ficons_pal);
  44.         if (fairing_color!=0xFFFfff) IconFairing(icon_n, xx, yy, fairing_color);
  45. }
  46.  
  47.  
  48. void IconFairing(dword filenum, x,y, color)
  49. {
  50.         switch(filenum)
  51.         {
  52.                 case 0...1: //file
  53.                 case 3: //íàñòðîéêè
  54.                         RIGHT_PAINT:
  55.                         PutPixel(x+10,y,color);
  56.                         PutPixel(x+11,y+1,color);
  57.                         PutPixel(x+12,y+2,color);
  58.                         PutPixel(x+13,y+3,color);
  59.                         return;
  60.                 case 2: //html
  61.                         DrawBar(x,y,1,7,color);
  62.                         DrawBar(x+1,y,1,6,color);
  63.                         DrawBar(x,y+10,1,5,color);
  64.                         DrawBar(x+1,y+11,1,4,color);
  65.                         GOTO RIGHT_PAINT;
  66.                 case 9: //inc
  67.                         DrawBar(x+13,y,1,3,color);
  68.                         DrawBar(x+14,y,2,4,color);
  69.                         DrawBar(x+15,y,1,15,color);
  70.                         PutPixel(x+3,y+14,color);
  71.                         DrawBar(x+4,y+13,1,2,color);
  72.                         DrawBar(x+5,y+12,10,3,color);
  73.                         PutPixel(x+10,y+11,color);
  74.                         DrawBar(x+11,y+10,1,2,color);
  75.                         DrawBar(x+12,y+9,1,3,color);
  76.                         PutPixel(x+12,y+7,color);
  77.                         DrawBar(x+13,y+6,2,7,color);
  78.                         PutPixel(x+14,y+5,color);
  79.                         return;
  80.                 case 10: //font
  81.                         DrawBar(x+1,y+1,1,13,color);
  82.                         DrawBar(x+2,y+1,1,11,color);
  83.                         DrawBar(x+3,y+1,1,10,color);
  84.                         DrawBar(x+4,y+1,1,9,color);
  85.                         DrawBar(x+5,y+1,1,7,color);
  86.                         DrawBar(x+6,y+1,1,5,color);
  87.                         DrawBar(x+7,y+1,1,4,color);
  88.                         DrawBar(x+8,y+1,1,2,color);
  89.                         DrawBar(x+14,y+1,1,13,color);
  90.                         DrawBar(x+13,y+1,1,11,color);
  91.                         PutPixel(x+9,y+6,color);
  92.                         DrawBar(x+8,y+10,2,1,color);
  93.                         DrawBar(x+7,y+11,2,3,color);
  94.                         return;
  95.                 case 12: //audio
  96.                         PutPixel(x+2,y+9,color);
  97.                         PutPixel(x+1,y+10,color);
  98.                         PutPixel(x+10,y+8,color);
  99.                         PutPixel(x+9,y+9,color);
  100.  
  101.                         PutPixel(x+6,y+13,color);
  102.                         PutPixel(x+5,y+14,color);
  103.                         PutPixel(x+14,y+12,color);
  104.                         PutPixel(x+13,y+13,color);
  105.                         return;
  106.                 case 13: //skin
  107.                         PutPixel(x+15,y,color);
  108.                         return;
  109.                 case 16...17: //folder
  110.                         DrawBar(x,y,1,15,color);
  111.                         DrawBar(x+8,y,8,2,color);
  112.                         IF (filenum==17) PutPixel(x+11,y+1,0x1A7B17); //green arrow part
  113.                         DrawBar(x+1,y+13,15,2,color);
  114.                         PutPixel(x+1,y,color);
  115.                         PutPixel(x+7,y,color);
  116.                         PutPixel(x+15,y+2,color);
  117.                         PutPixel(x+1,y+12,color);
  118.                         PutPixel(x+15,y+12,color);
  119.                         return;
  120.                 case 18:
  121.                         DrawBar(x,y+11,1,2,color);
  122.                         DrawBar(x+15,y+11,1,2,color);
  123.                         DrawBar(x,y+13,16,1,color);
  124.                         return;
  125.                 case 24:
  126.                         DrawBar(x,y,6,1,color);
  127.                         DrawBar(x,y+1,4,1,color);
  128.                         DrawBar(x,y+2,3,1,color);
  129.                         DrawBar(x,y+3,2,2,color);
  130.                        
  131.                         DrawBar(x,y+5,1,5,color);
  132.                        
  133.                         DrawBar(x,y+10,2,2,color);
  134.                         DrawBar(x,y+12,3,1,color);
  135.                         DrawBar(x,y+13,4,1,color);
  136.                         DrawBar(x,y+14,6,1,color);                     
  137.  
  138.                         DrawBar(x+11,y,5,1,color);
  139.                         DrawBar(x+13,y+1,3,1,color);
  140.                         DrawBar(x+14,y+2,2,1,color);
  141.                         DrawBar(x+15,y+3,1,2,color);
  142.                        
  143.                         DrawBar(x+15,y+10,1,2,color);
  144.                         DrawBar(x+14,y+12,2,1,color);
  145.                         DrawBar(x+13,y+13,3,1,color);
  146.                         DrawBar(x+11,y+14,5,1,color);
  147.         }
  148. }
  149.