using ControlzEx; using MaterialDesignThemes.Wpf; using System; using System.Globalization; using System.Windows.Data; using System.Windows.Markup; namespace Gestor.Application.Converters { public class MimeIconConverter : MarkupExtension, IValueConverter { public MimeIconConverter() { } public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { char chr; PackIcon packIcon; PackIcon packIcon1; PackIcon packIcon2; PackIcon packIcon3; PackIcon packIcon4; if (value == null) { PackIcon packIcon5 = new PackIcon(); packIcon5.set_Kind(1529); return packIcon5; } string lower = value.ToString().ToLower(); if (lower != null) { int length = lower.Length; if (length == 4) { chr = lower[2]; if (chr == 'a') { if (lower == ".rar") { packIcon1 = new PackIcon(); packIcon1.set_Kind(301); return packIcon1; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } else { switch (chr) { case 'd': { if (lower == ".pdf") { PackIcon packIcon6 = new PackIcon(); packIcon6.set_Kind(1580); return packIcon6; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'e': case 'f': case 'g': case 'h': case 'j': case 'k': { packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'i': { if (lower == ".zip") { break; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'l': { if (lower == ".xls") { packIcon2 = new PackIcon(); packIcon2.set_Kind(1563); return packIcon2; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'm': { if (lower == ".bmp") { packIcon3 = new PackIcon(); packIcon3.set_Kind(2102); return packIcon3; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'n': { if (lower == ".png") { packIcon3 = new PackIcon(); packIcon3.set_Kind(2102); return packIcon3; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'o': { if (lower == ".doc") { packIcon4 = new PackIcon(); packIcon4.set_Kind(1605); return packIcon4; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'p': { if (lower == ".jpg") { packIcon3 = new PackIcon(); packIcon3.set_Kind(2102); return packIcon3; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } default: { if (chr == 'x') { if (lower == ".txt") { PackIcon packIcon7 = new PackIcon(); packIcon7.set_Kind(3399); return packIcon7; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } else { packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } } } } packIcon1 = new PackIcon(); packIcon1.set_Kind(301); return packIcon1; } else if (length == 5) { chr = lower[2]; switch (chr) { case 'l': { if (lower == ".xlsx") { packIcon2 = new PackIcon(); packIcon2.set_Kind(1563); return packIcon2; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'm': case 'n': { packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'o': { if (lower == ".docx") { packIcon4 = new PackIcon(); packIcon4.set_Kind(1605); return packIcon4; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } case 'p': { if (lower == ".jpge") { break; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } default: { if (chr == 's') { if (lower != ".json") { packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } PackIcon packIcon8 = new PackIcon(); packIcon8.set_Kind(2156); return packIcon8; } else { packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } } } } else { packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } packIcon3 = new PackIcon(); packIcon3.set_Kind(2102); return packIcon3; } packIcon = new PackIcon(); packIcon.set_Kind(1529); return packIcon; } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { return null; } public override object ProvideValue(IServiceProvider serviceProvider) { return this; } } }