// -------------------------------------------------------------------------------------------------------------------- // // This file is part of the HandBrake source code - It may be used under the terms of the GNU General Public License. // // // A class implementing Windows 7 Specific features // // -------------------------------------------------------------------------------------------------------------------- namespace HandBrakeWPF.Utilities { using System.Windows.Shell; /// /// A class implementing Windows 7 Specific features /// public class Win7 { /// /// The Windows Taskbar /// public static TaskbarItemInfo WindowsTaskbar; /// /// Initializes a new instance of the class. /// public Win7() { if (WindowsTaskbar == null) WindowsTaskbar = new TaskbarItemInfo(); } /// /// Gets a value indicating whether is windows seven. /// public bool IsWindowsSeven { get { return true; } } /// /// The get task bar. /// /// /// The . /// public TaskbarItemInfo GetTaskBar() { return WindowsTaskbar; } /// /// Set the Task Bar Percentage. /// /// /// The percentage. /// public void SetTaskBarProgress(int percentage) { // Update the taskbar progress indicator. The normal state shows a green progress bar. Caliburn.Micro.Execute.OnUIThread( () => { WindowsTaskbar.ProgressState = TaskbarItemProgressState.Normal; WindowsTaskbar.ProgressValue = (double)percentage / 100; }); } /// /// Disable Task Bar Progress /// public void SetTaskBarProgressToNoProgress() { Caliburn.Micro.Execute.OnUIThread(() => WindowsTaskbar.ProgressState = TaskbarItemProgressState.None); } } }