/// <summary> /// The generate source menu. /// </summary> /// <returns> /// The System.Collections.Generic.IEnumerable`1[T -> HandBrakeWPF.Model.SourceMenuItem]. /// </returns> private IList<SourceMenuItem> GenerateSourceMenu() { List<SourceMenuItem> menuItems = new List<SourceMenuItem>(); SourceMenuItem folderScan = new SourceMenuItem { Image = new Image { Source = new BitmapImage(new Uri("pack://application:,,,/HandBrake;component/Views/Images/folder.png")), Width = 16, Height = 16 }, Text = "Open Folder", Command = new SourceMenuCommand(this.FolderScan), IsDrive = false, InputGestureText = "Ctrl + R" }; SourceMenuItem fileScan = new SourceMenuItem { Image = new Image { Source = new BitmapImage(new Uri("pack://application:,,,/HandBrake;component/Views/Images/Movies.png")), Width = 16, Height = 16 }, Text = "Open File", Command = new SourceMenuCommand(this.FileScan), IsDrive = false, InputGestureText = "Ctrl + F" }; SourceMenuItem titleSpecific = new SourceMenuItem { Text = "Title Specific Scan" }; SourceMenuItem folderScanTitle = new SourceMenuItem { Image = new Image { Source = new BitmapImage(new Uri("pack://application:,,,/HandBrake;component/Views/Images/folder.png")), Width = 16, Height = 16 }, Text = "Open Folder", Command = new SourceMenuCommand(this.FolderScanTitleSpecific), IsDrive = false }; SourceMenuItem fileScanTitle = new SourceMenuItem { Image = new Image { Source = new BitmapImage(new Uri("pack://application:,,,/HandBrake;component/Views/Images/Movies.png")), Width = 16, Height = 16 }, Text = "Open File", Command = new SourceMenuCommand(this.FileScanTitleSpecific), IsDrive = false }; titleSpecific.Children.Add(folderScanTitle); titleSpecific.Children.Add(fileScanTitle); menuItems.Add(folderScan); menuItems.Add(fileScan); menuItems.Add(titleSpecific); // Drives menuItems.AddRange( from item in GeneralUtilities.GetDrives() let driveInformation = item select new SourceMenuItem { Image = new Image { Source = new BitmapImage(new Uri("pack://application:,,,/HandBrake;component/Views/Images/disc_small.png")), Width = 16, Height = 16 }, Text = string.Format("{0} ({1})", item.RootDirectory, item.VolumeLabel), Command = new SourceMenuCommand(() => this.ProcessDrive(driveInformation)), Tag = item, IsDrive = true }); return menuItems; }
/// <summary> /// The generate source menu. /// </summary> /// <returns> /// The System.Collections.Generic.IEnumerable`1[T -> HandBrakeWPF.Model.SourceMenuItem]. /// </returns> private IList<SourceMenuItem> GenerateSourceMenu() { List<SourceMenuItem> menuItems = new List<SourceMenuItem>(); SourceMenuItem folderScan = new SourceMenuItem { IsOpenFolder = true, Text = "Open Folder", Command = new SourceMenuCommand(this.FolderScan), IsDrive = false, InputGestureText = "Ctrl + R" }; SourceMenuItem fileScan = new SourceMenuItem { IsOpenFolder = false, Text = "Open File", Command = new SourceMenuCommand(this.FileScan), IsDrive = false, InputGestureText = "Ctrl + F" }; SourceMenuItem titleSpecific = new SourceMenuItem { Text = "Title Specific Scan" }; SourceMenuItem folderScanTitle = new SourceMenuItem { IsOpenFolder = true, Text = "Open Folder", Command = new SourceMenuCommand(this.FolderScanTitleSpecific), IsDrive = false }; SourceMenuItem fileScanTitle = new SourceMenuItem { IsOpenFolder = false, Text = "Open File", Command = new SourceMenuCommand(this.FileScanTitleSpecific), IsDrive = false }; titleSpecific.Children.Add(folderScanTitle); titleSpecific.Children.Add(fileScanTitle); menuItems.Add(folderScan); menuItems.Add(fileScan); menuItems.Add(titleSpecific); // Drives menuItems.AddRange( from item in GeneralUtilities.GetDrives() let driveInformation = item select new SourceMenuItem { Text = string.Format("{0} ({1})", item.RootDirectory, item.VolumeLabel), Command = new SourceMenuCommand(() => this.ProcessDrive(driveInformation)), Tag = item, IsDrive = true }); return menuItems; }