summaryrefslogtreecommitdiffstats
path: root/macosx/HBQueueItem.h
blob: bd883c423cb7874b59f1a63f7dfbd97bc26ce698 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/*  HBQueueItem.h $

 This file is part of the HandBrake source code.
 Homepage: <http://handbrake.fr/>.
 It may be used under the terms of the GNU General Public License. */

#import <Cocoa/Cocoa.h>

NS_ASSUME_NONNULL_BEGIN


/// A flag to indicate the item's state
typedef NS_ENUM(NSUInteger, HBQueueItemState) {
    HBQueueItemStateReady,
    HBQueueItemStateWorking,
    HBQueueItemStateCompleted,
    HBQueueItemStateCanceled,
    HBQueueItemStateFailed,
    HBQueueItemStateRescanning
};

@protocol HBQueueItem <NSObject, NSSecureCoding>

/// Current state of the item.
@property (nonatomic) HBQueueItemState state;

/// Whether the item has a file representation on disk or not.
@property (nonatomic, readonly) BOOL hasFileRepresentation;

/// The title of the item.
@property (nonatomic, readonly) NSString *title;
@property (nonatomic, readonly) NSAttributedString *attributedDescription;

@property (nonatomic, readonly) NSImage *image;

@end

NS_ASSUME_NONNULL_END