Example #1
0
 protected override Bitmap GetIconInner(FileSystemInfoEx entry, string key, IconSize size)
 {
     if (key.StartsWith("."))
     {
         throw new Exception("ext item is handled by IconExtractor");
     }
     if (entry is FileInfoEx)
     {
         Bitmap bitmap    = null;
         string extension = PathEx.GetExtension(entry.Name);
         if (IconExtractor.IsJpeg(extension))
         {
             bitmap = IconExtractor.GetExifThumbnail(entry.FullName);
         }
         if (IconExtractor.IsImageIcon(extension))
         {
             try
             {
                 bitmap = new Bitmap(entry.FullName);
             }
             catch
             {
                 bitmap = null;
             }
         }
         if (bitmap != null)
         {
             return(bitmap);
         }
     }
     return(GetBitmap(size, entry.PIDL.Ptr, entry is DirectoryInfoEx, false));
 }