/// <summary> /// Removes a taskbar progress indicator from the player. /// </summary> /// <param name="form">The form whose taskbar progress indicator should be removed.</param> public int Remove(Form form) { if (Player._taskbarProgressEnabled) { if (_base._hasTaskbarProgress && form != null) { lock (_taskbarItems) { for (int index = _taskbarItems.Count - 1; index >= 0; index--) { if (_taskbarItems[index] == form || _taskbarItems[index] == null) { if (_taskbarItems[index] != null) { Player.TaskbarInstance.SetProgressState(_taskbarItems[index].Handle, TaskbarProgressState.NoProgress); } _taskbarItems.RemoveAt(index); } } if (_taskbarItems.Count == 0) { _base._hasTaskbarProgress = false; _base.StopMainTimerCheck(); _taskbarItems = new List <Form>(4); } } } _base._lastError = Player.NO_ERROR; } else { _base._lastError = HResult.MF_E_NOT_AVAILABLE; } return((int)_base._lastError); }