public static RootFolder Import(XDocument opml) { var root = new RootFolder(); var opmlElement = opml.Element("opml"); if (opmlElement != null) { var element = opmlElement.Element("body"); if (element != null) { var topLevel = element.Elements("outline"); foreach (var outlineElement in topLevel) { if (outlineElement.HasElements) { root.AddFolder(new Folder { Name = outlineElement.Attribute("title").Value, Feeds = (from feed in outlineElement.Elements("outline") select new Feed(new Uri(feed.Attribute("xmlUrl").Value), feed.Attribute("title").Value, new Uri(feed.Attribute("htmlUrl").Value) )) }); } else { root.AddFeed( new Feed(new Uri(outlineElement.Attribute("xmlUrl").Value), outlineElement.Attribute("title").Value, new Uri(outlineElement.Attribute("htmlUrl").Value)) ); } } return root; } } return new RootFolder(); }
private void AddContentFolderExecute(string folderName) { RootFolder.AddFolder(folderName); }
public void AddDraggedAndDroppedFiles(PackageFolder folder, string[] fileNames) { if (folder == null) { bool?rememberedAnswer = null; for (var i = 0; i < fileNames.Length; i++) { var file = fileNames[i]; if (File.Exists(file)) { bool movingFile; PackageFolder targetFolder; var guessFolderName = FileHelper.GuessFolderNameFromFile(file); if (rememberedAnswer == null) { // ask user if he wants to move file var answer = UIServices.ConfirmMoveFile( Path.GetFileName(file), guessFolderName, fileNames.Length - i - 1); if (answer.Item1 == null) { // user presses Cancel break; } movingFile = (bool)answer.Item1; if (answer.Item2) { rememberedAnswer = answer.Item1; } } else { movingFile = (bool)rememberedAnswer; } if (movingFile) { if (RootFolder.ContainsFolder(guessFolderName)) { targetFolder = (PackageFolder)RootFolder[guessFolderName]; } else { targetFolder = RootFolder.AddFolder(guessFolderName); } } else { targetFolder = RootFolder; } targetFolder.AddFile(file); } else if (Directory.Exists(file)) { RootFolder.AddPhysicalFolder(file); } } } else { foreach (var file in fileNames) { if (File.Exists(file)) { folder.AddFile(file); } else if (Directory.Exists(file)) { folder.AddPhysicalFolder(file); } } } }
private void AddContentFolderExecute(string folderName) { DiagnosticsClient.TrackEvent("PackageViewModel_AddContentFolderExecute"); RootFolder.AddFolder(folderName); }