private void SourceItem_Expanded(object sender, RoutedEventArgs e) { try { var treeViewItem = sender as TreeViewItem; if (treeViewItem != null) { var source = treeViewItem.Header as ISource; if (source != null) { if (source is FileSystemSource || source is DirectorySource) { sourceController.LoadDirectories(source); } if (source is PodcastSource) { sourceController.LoadPodcast(source, this); } if (source is SpiderSource) { sourceController.LoadSpider(source, this); } if (source is DeviceCatalogSource) { if (source.Children.Count() == 1 && source.Children.FirstOrDefault() is ProxySource) { sourceController.LoadDevices(source, this); } } if (source is YouTubeUserSource) { //if (source.Children.Count() == 1 && source.Children.FirstOrDefault() is ProxySource) //{ sourceController.LoadYouTubeUser(source, this); //} } foreach (var child in source.Children) { var playlistItem = child as PlaylistItemSource; if (playlistItem != null) { if (!string.IsNullOrEmpty(playlistItem.Path) && playlistItem.ImageData == null) { LoadPicture(playlistItem); } } } } } } catch (Exception ex) { log.Error("SourceItem_Expanded", ex); } }
private void sourceLoaded(object sender, SourceLoadedEventArgs args) { try { var source = args.Source; if (source is FileSystemSource || source is DirectorySource) { sourceController.LoadDirectories(args.Source); } if (source is YouTubeVideoSource || (source.Path != null && source.Path.StartsWith("http://www.gutenberg.org"))) // || (source.Path != null && !source.Path.EndsWith(".mp3") && !source.Path.EndsWith(".wav"))) { System.Diagnostics.Process.Start(source.Path); } trackController.Load(source, this); } catch (Exception ex) { logger.Error("MainWindow.SourceLoaded", ex); } }