public static List<IconMapItem> GetMappedIcons() { string cfgFile = AppConfig.DefaultIconMappingFile; List<IconMapItem> iconMapItems = new List<IconMapItem>(); if (System.IO.File.Exists(cfgFile)) { using (FileStream fileStream = new FileStream(cfgFile, FileMode.Open)) { XmlSerializer serializer = new XmlSerializer(typeof(IconMap)); IconMap result = (IconMap)serializer.Deserialize(fileStream); if (result != null && result.Items != null) { foreach (IconMapItem item in result.Items) { iconMapItems.Add(item); } } else { System.IO.File.Delete(cfgFile); } } } return iconMapItems; }
public static void UpdateIconMapping(IconMap iconMap) { XmlSerializer serializer = new XmlSerializer(typeof(IconMap)); using (XmlWriter writer = XmlWriter.Create(AppConfig.DefaultIconMappingFile, AppConfig.GetXmlWritterSettings())) { writer.WriteWhitespace(""); serializer.Serialize(writer, iconMap, AppConfig.GetXmlSerializerNamespaces()); writer.Close(); } }
public MainWindow() { InitializeComponent(); newButton = new ButtonWrapper(this.BtnNew); deleteButton = new ButtonWrapper(this.BtnDelete); pauseButton = new ButtonWrapper(this.BtnPause); resumeButton = new ButtonWrapper(this.BtnResume); openFileButton = new ButtonWrapper(this.BtnOpen); openFolderButton = new ButtonWrapper(this.BtnOpenFolder); var categories = new List <CategoryWrapper>(); categories.Add(new CategoryWrapper() { IsTopLevel = true, DisplayName = TextResource.GetText("ALL_UNFINISHED"), VectorIcon = "ri-arrow-down-line" }); categories.Add(new CategoryWrapper() { IsTopLevel = true, DisplayName = TextResource.GetText("ALL_FINISHED"), VectorIcon = "ri-check-line" }); categories.AddRange(Config.Instance.Categories.Select(c => new CategoryWrapper(c) { VectorIcon = IconMap.GetVectorNameForCategory(c.Name) })); lvCategory.ItemsSource = categories; lvInProgress.ItemsSource = inProgressList; lvFinished.ItemsSource = finishedList; lvInProgress.SelectionChanged += (sender, args) => { this.SelectionChanged?.Invoke(sender, args); }; lvFinished.SelectionChanged += (sender, args) => { this.SelectionChanged?.Invoke(sender, args); }; lvInProgress.IsVisibleChanged += (_, _) => { if (lvInProgress.Visibility == Visibility.Visible) { InProgressListViewInitialSortIfNotAlreadySorted(); } }; SwitchToFinishedView(); this.Loaded += MainWindow_Loaded; CreateMenuItems(); }
public object Convert(object value, Type targetType, object parameter, string language) { if (value != null && IconMap.TryGetValue(value.GetType(), out (Symbol, string)either)) { if (either.Item2 == null) { return(new SymbolIcon(either.Item1)); } else { return new FontIcon { Glyph = either.Item2 } }; } return(null); }
public object Convert(object?value, Type targetType, object parameter, CultureInfo culture) { var res = IconMap.GetVectorNameForFileType(value as string); return(Application.Current.TryFindResource("color-" + res)); }