/* QueueTask.cs $ This file is part of the HandBrake source code. Homepage: . It may be used under the terms of the GNU General Public License. */ namespace HandBrake.ApplicationServices.Model { using Caliburn.Micro; /// /// The QueueTask. /// public class QueueTask : PropertyChangedBase { #region Constants and Fields /// /// The status. /// private QueueItemStatus status; #endregion #region Constructors and Destructors /// /// Initializes a new instance of the class. /// public QueueTask() { } /// /// Initializes a new instance of the class. /// /// /// The query. /// public QueueTask(string query) { this.Query = query; } #endregion #region Properties /// /// Gets or sets a value indicating whether if this is a user or GUI generated query /// public bool CustomQuery { get; set; } /// /// Gets or sets Destination. /// public string Destination { get; set; } /// /// Gets or sets the job ID. /// public int Id { get; set; } /// /// Gets a value indicating whether or not this instance is empty. /// public bool IsEmpty { get { return this.Id == 0 && string.IsNullOrEmpty(this.Query) && string.IsNullOrEmpty(this.Task.Source) && string.IsNullOrEmpty(this.Task.Destination); } } /// /// Gets or sets the query string. /// public string Query { get; set; } /// /// Gets or sets Source. /// public string Source { get; set; } /// /// Gets or sets Status. /// public QueueItemStatus Status { get { return this.status; } set { this.status = value; this.NotifyOfPropertyChange(() => this.Status); } } /// /// Gets or sets the Encode Task. /// public EncodeTask Task { get; set; } /// /// Gets or sets Title. /// public int Title { get; set; } #endregion } }