3 This file is part of the HandBrake source code.
4 Homepage: <http://handbrake.m0k.org/>.
5 It may be used under the terms of the GNU General Public License. */
8 #include <Cocoa/Cocoa.h>
13 // HB_OUTLINE_QUEUE turns on an outline view for the queue.
14 #define HB_OUTLINE_QUEUE 0
17 @interface HBQueueController : NSObject
20 HBController *fHBController;
21 NSViewAnimation *fAnimation;
22 BOOL fCurrentJobHidden; // YES when fCurrentJobPane has been shifted out of view (see showCurrentJobPane)
23 BOOL fShowsJobsAsGroups;
26 NSMutableArray *fEncodes;
27 IBOutlet NSOutlineView *fOutlineView;
30 // +---------------fQueueWindow----------------+
31 // |+-------------fCurrentJobPane-------------+|
35 // |+-----------------------------------------+|
36 // |+---------------fQueuePane----------------+|
44 // |+-----------------------------------------+|
45 // +-------------------------------------------+
47 IBOutlet NSWindow *fQueueWindow;
49 // fCurrentJobPane - visible only when processing a job
50 IBOutlet NSView *fCurrentJobPane;
51 IBOutlet NSImageView *fJobIconView;
52 IBOutlet NSTextField *fJobDescTextField;
53 IBOutlet NSProgressIndicator *fProgressBar;
54 IBOutlet NSTextField *fProgressTextField;
56 // fQueuePane - always visible; fills entire window when fCurrentJobPane is hidden
57 IBOutlet NSView *fQueuePane;
58 IBOutlet NSTableView *fTaskView;
59 IBOutlet NSTextField *fQueueCountField;
63 - (void)setHandle: (hb_handle_t *)handle;
64 - (void)setHBController: (HBController *)controller;
65 - (void)updateQueueUI;
66 - (void)updateCurrentJobUI;
68 - (IBAction)showQueueWindow: (id)sender;
69 - (IBAction)removeSelectedJob: (id)sender;
70 - (IBAction)cancelCurrentJob: (id)sender;
71 - (IBAction)showDetail: (id)sender;
72 - (IBAction)hideDetail: (id)sender;
73 - (IBAction)showJobsAsGroups: (id)sender;
74 - (IBAction)showJobsAsPasses: (id)sender;
75 - (IBAction)toggleStartPause: (id)sender;