internal void LoadParameters(bool loadFromFile, string visualElementsManifestPath, string mediumImageResizeMetadataPath, string smallImageResizeMetadataPath, string targetFolderPath) { if (loadFromFile) { var xmlDoc = XDocument.Load(visualElementsManifestPath); try { ShortcutItemImage mediumImage = null; ShortcutItemImage smallImage = null; if (File.Exists(mediumImageResizeMetadataPath)) { mediumImage = ShortcutItemImage.Load(mediumImageResizeMetadataPath); } if (File.Exists(smallImageResizeMetadataPath)) { smallImage = ShortcutItemImage.Load(smallImageResizeMetadataPath); } var parameters = from b in xmlDoc.Descendants("VisualElements") select new ShortcutIconState { BackgroundColor = b.Attribute("BackgroundColor").Value, ForegroundText = b.Attribute("ForegroundText").Value, ShowNameOnSquare150X150Logo = b.Attribute("ShowNameOnSquare150x150Logo").Value == "on", MediumImage = mediumImage ?? new ShortcutItemImage(ShortcutConstantsAndEnums.MediumShortcutOutputSize) { Bytes = ImageUtils.LoadFileToByteArray(targetFolderPath + b.Attribute("Square150x150Logo").Value), X = 0, Y = 0 }, SmallImage = smallImage ?? new ShortcutItemImage(ShortcutConstantsAndEnums.SmallShortcutOutputSize) { Bytes = ImageUtils.LoadFileToByteArray(targetFolderPath + b.Attribute("Square70x70Logo").Value), X = 0, Y = 0 } }; OldState = parameters.Single(); CurrentState = OldState.Clone(); } catch { ResetParameters(); } } else { ResetParameters(); } }
public void ResetParameters() { //defaults OldState = new ShortcutIconState { BackgroundColor = ShortcutConstantsAndEnums.DefaultAccentColor ?? "black", ForegroundText = "light", ShowNameOnSquare150X150Logo = true, MediumImage = new ShortcutItemImage(ShortcutConstantsAndEnums.MediumShortcutOutputSize), SmallImage = new ShortcutItemImage(ShortcutConstantsAndEnums.SmallShortcutOutputSize) }; CurrentState = OldState.Clone(); }
public void UndoChanges() { CurrentState = OldState.Clone(); }