OSDN Git Service

MacGui: VFR controls initial implementation
[handbrake-jp/handbrake-jp-git.git] / macosx / PictureController.h
1 /* $Id: PictureController.h,v 1.6 2005/04/14 20:40:05 titer Exp $
2
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. */
6
7 #include <Cocoa/Cocoa.h>
8
9 #include "hb.h"
10 #include "PictureGLView.h"
11
12 @interface PictureController : NSObject
13 {
14     hb_handle_t              * fHandle;
15     hb_title_t               * fTitle;
16
17     bool                       fHasQE;
18     uint8_t                  * fBuffer;
19     int                        fBufferSize;
20     uint8_t                  * fTexBuf[2];
21     int                        fTexBufSize;
22     int                        fPicture;
23
24     IBOutlet NSPanel         * fPicturePanel;
25
26     IBOutlet HBPictureGLView * fPictureGLView;
27     IBOutlet NSBox           * fPictureGLViewArea;
28     IBOutlet NSTextField     * fWidthField;
29     IBOutlet NSStepper       * fWidthStepper;
30     IBOutlet NSTextField     * fHeightField;
31     IBOutlet NSStepper       * fHeightStepper;
32     IBOutlet NSButton        * fRatioCheck;
33     IBOutlet NSMatrix        * fCropMatrix;
34     IBOutlet NSTextField     * fCropTopField;
35     IBOutlet NSStepper       * fCropTopStepper;
36     IBOutlet NSTextField     * fCropBottomField;
37     IBOutlet NSStepper       * fCropBottomStepper;
38     IBOutlet NSTextField     * fCropLeftField;
39     IBOutlet NSStepper       * fCropLeftStepper;
40     IBOutlet NSTextField     * fCropRightField;
41     IBOutlet NSStepper       * fCropRightStepper;
42     IBOutlet NSPopUpButton   * fDeinterlacePopUp;
43         IBOutlet NSButton        * fDetelecineCheck;
44     IBOutlet NSButton        * fVFRCheck;
45     IBOutlet NSButton        * fDeblockCheck;
46         IBOutlet NSPopUpButton   * fDenoisePopUp;
47         IBOutlet NSButton        * fPARCheck;
48     IBOutlet NSButton        * fEffectsCheck;
49     IBOutlet NSButton        * fPrevButton;
50     IBOutlet NSButton        * fNextButton;
51     IBOutlet NSTextField     * fInfoField;
52         
53     int     MaxOutputWidth;
54     int     MaxOutputHeight;
55     BOOL    autoCrop;
56     
57     /* used to track the previous state of the keep aspect
58     ratio checkbox when turning anamorphic on, so it can be
59     returned to the previous state when anamorphic is turned
60     off */
61     BOOL    keepAspectRatioPreviousState; 
62     
63     struct {
64         int     detelecine;
65         int     vfr;
66         int     deinterlace;
67         int     denoise;
68         int     deblock;
69     } fPictureFilterSettings;
70
71     id delegate;
72 }
73 - (id)initWithDelegate:(id)del;
74
75 - (void) SetHandle: (hb_handle_t *) handle;
76 - (void) SetTitle:  (hb_title_t *)  title;
77 - (void) Display: (int) anim;
78
79 - (IBAction) SettingsChanged: (id) sender;
80 - (IBAction) PreviousPicture: (id) sender;
81 - (IBAction) NextPicture: (id) sender;
82 - (IBAction) ClosePanel: (id) sender;
83
84 - (BOOL) autoCrop;
85 - (void) setAutoCrop: (BOOL) setting;
86
87 - (int) detelecine;
88 - (void) setDetelecine: (int) setting;
89 - (int) vfr;
90 - (void) setVFR: (int) setting;
91 - (int) deinterlace;
92 - (void) setDeinterlace: (int) setting;
93 - (int) denoise;
94 - (void) setDenoise: (int) setting;
95 - (int) deblock;
96 - (void) setDeblock: (int) setting;
97
98 - (void)showPanelInWindow: (NSWindow *)fWindow forTitle: (hb_title_t *)title;
99 - (BOOL) loadMyNibFile;
100 @end
101
102 @interface NSObject (PictureControllertDelegateMethod)
103 - (void)pictureSettingsDidChange;
104 @end