X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=macosx%2FPictureController.h;h=f8742f8f3652ef9d07006635812a8ee38543f834;hb=07cc0ebf6a7141a76fd9b6e2da6cf510def1ebc7;hp=bfc67bb86b087c2f324ccee75b4d8158801b4421;hpb=415ad1e2cfda1e12cfa8d346471ddfbd539271cb;p=handbrake-jp%2Fhandbrake-jp-git.git diff --git a/macosx/PictureController.h b/macosx/PictureController.h index bfc67bb8..f8742f8f 100644 --- a/macosx/PictureController.h +++ b/macosx/PictureController.h @@ -1,27 +1,25 @@ /* $Id: PictureController.h,v 1.6 2005/04/14 20:40:05 titer Exp $ This file is part of the HandBrake source code. - Homepage: . + Homepage: . It may be used under the terms of the GNU General Public License. */ -#include +#import #include "hb.h" -#include "PictureGLView.h" -@interface PictureController : NSObject +#define HB_NUM_HBLIB_PICTURES 10 // hbilb generates 10 preview pictures + +@interface PictureController : NSWindowController { hb_handle_t * fHandle; hb_title_t * fTitle; - bool fHasQE; - uint8_t * fBuffer; - int fBufferSize; - uint8_t * fTexBuf[2]; - int fTexBufSize; + NSMutableDictionary * fPicturePreviews; // NSImages, one for each preview libhb creates, created lazily int fPicture; - IBOutlet HBPictureGLView * fPictureGLView; + IBOutlet NSImageView * fPictureView; + IBOutlet NSBox * fPictureViewArea; IBOutlet NSTextField * fWidthField; IBOutlet NSStepper * fWidthStepper; IBOutlet NSTextField * fHeightField; @@ -37,36 +35,80 @@ IBOutlet NSTextField * fCropRightField; IBOutlet NSStepper * fCropRightStepper; IBOutlet NSPopUpButton * fDeinterlacePopUp; + IBOutlet NSPopUpButton * fDecombPopUp; IBOutlet NSButton * fDetelecineCheck; + IBOutlet NSButton * fVFRCheck; + IBOutlet NSButton * fDeblockCheck; IBOutlet NSPopUpButton * fDenoisePopUp; - IBOutlet NSButton * fPARCheck; - IBOutlet NSButton * fEffectsCheck; + IBOutlet NSPopUpButton * fAnamorphicPopUp; IBOutlet NSButton * fPrevButton; IBOutlet NSButton * fNextButton; IBOutlet NSTextField * fInfoField; - - - int MaxOutputWidth; - int MaxOutputHeight; - - /* widgets in main window */ - IBOutlet NSTextField * fAutoCropMainWindow; - IBOutlet NSTextField * fDeinterlaceLevelMainWindow; - IBOutlet NSTextField * fDetelecineMainWindow; - IBOutlet NSPopUpButton * fVidFrameRatePopUpMainWindow; - IBOutlet NSTextField * fDenoiseMainWindow; - + int MaxOutputWidth; + int MaxOutputHeight; + BOOL autoCrop; + BOOL allowLooseAnamorphic; + int output_width, output_height, output_par_width, output_par_height; + int display_width; + /* used to track the previous state of the keep aspect + ratio checkbox when turning anamorphic on, so it can be + returned to the previous state when anamorphic is turned + off */ + BOOL keepAspectRatioPreviousState; + + struct { + int detelecine; + int vfr; + int deinterlace; + int decomb; + int denoise; + int deblock; + } fPictureFilterSettings; + id delegate; } +- (id)initWithDelegate:(id)del; - (void) SetHandle: (hb_handle_t *) handle; - (void) SetTitle: (hb_title_t *) title; -- (void) Display: (int) anim; +- (void) setInitialPictureFilters; +- (void) displayPreview; - (IBAction) SettingsChanged: (id) sender; - (IBAction) PreviousPicture: (id) sender; - (IBAction) NextPicture: (id) sender; - (IBAction) ClosePanel: (id) sender; +- (BOOL) autoCrop; +- (void) setAutoCrop: (BOOL) setting; + +- (BOOL) allowLooseAnamorphic; +- (void) setAllowLooseAnamorphic: (BOOL) setting; + +- (int) detelecine; +- (void) setDetelecine: (int) setting; +- (int) vfr; +- (void) setVFR: (int) setting; +- (int) deinterlace; +- (void) setDeinterlace: (int) setting; +- (int) decomb; +- (void) setDecomb: (int) setting; +- (int) denoise; +- (void) setDenoise: (int) setting; +- (int) deblock; +- (void) setDeblock: (int) setting; + +- (void)showPanelInWindow: (NSWindow *)fWindow forTitle: (hb_title_t *)title; + ++ (NSImage *) makeImageForPicture: (int)pictureIndex + libhb:(hb_handle_t*)handle + title:(hb_title_t*)title + removeBorders:(BOOL)removeBorders; +- (NSImage *) imageForPicture: (int) pictureIndex; +- (void) purgeImageCache; +@end + +@interface NSObject (PictureControllertDelegateMethod) +- (void)pictureSettingsDidChange; @end