mirror of
https://github.com/WB3000/nusdownloader.git
synced 2024-11-16 22:59:22 +01:00
70 lines
2.1 KiB
C#
70 lines
2.1 KiB
C#
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
|
|
using System;
|
|
using System.Runtime.InteropServices;
|
|
|
|
namespace wyDay.Controls
|
|
{
|
|
/// <summary>
|
|
/// Represents the thumbnail progress bar state.
|
|
/// </summary>
|
|
public enum ThumbnailProgressState
|
|
{
|
|
/// <summary>
|
|
/// No progress is displayed.
|
|
/// </summary>
|
|
NoProgress = 0,
|
|
/// <summary>
|
|
/// The progress is indeterminate (marquee).
|
|
/// </summary>
|
|
Indeterminate = 0x1,
|
|
/// <summary>
|
|
/// Normal progress is displayed.
|
|
/// </summary>
|
|
Normal = 0x2,
|
|
/// <summary>
|
|
/// An error occurred (red).
|
|
/// </summary>
|
|
Error = 0x4,
|
|
/// <summary>
|
|
/// The operation is paused (yellow).
|
|
/// </summary>
|
|
Paused = 0x8
|
|
}
|
|
|
|
//Based on Rob Jarett's wrappers for the desktop integration PDC demos.
|
|
[ComImportAttribute()]
|
|
[GuidAttribute("ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf")]
|
|
[InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIUnknown)]
|
|
internal interface ITaskbarList3
|
|
{
|
|
// ITaskbarList
|
|
[PreserveSig]
|
|
void HrInit();
|
|
[PreserveSig]
|
|
void AddTab(IntPtr hwnd);
|
|
[PreserveSig]
|
|
void DeleteTab(IntPtr hwnd);
|
|
[PreserveSig]
|
|
void ActivateTab(IntPtr hwnd);
|
|
[PreserveSig]
|
|
void SetActiveAlt(IntPtr hwnd);
|
|
|
|
// ITaskbarList2
|
|
[PreserveSig]
|
|
void MarkFullscreenWindow(
|
|
IntPtr hwnd,
|
|
[MarshalAs(UnmanagedType.Bool)] bool fFullscreen);
|
|
|
|
// ITaskbarList3
|
|
void SetProgressValue(IntPtr hwnd, UInt64 ullCompleted, UInt64 ullTotal);
|
|
void SetProgressState(IntPtr hwnd, ThumbnailProgressState tbpFlags);
|
|
|
|
// yadda, yadda - there's more to the interface, but we don't need it.
|
|
}
|
|
|
|
[GuidAttribute("56FDF344-FD6D-11d0-958A-006097C9A090")]
|
|
[ClassInterfaceAttribute(ClassInterfaceType.None)]
|
|
[ComImportAttribute()]
|
|
internal class CTaskbarList { }
|
|
} |