X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=macosx%2FPictureController.h;h=24631c386a280f889ba463cfca4634e8391d91e8;hb=533776bbad20db93fe964bc69975f108b2a30888;hp=973a0e2ffa7a3e37e52e1de33b64ead8e968bec5;hpb=adae3dd4a6b0ea755db109a4a7b6c248ecb40981;p=handbrake-jp%2Fhandbrake-jp-git.git diff --git a/macosx/PictureController.h b/macosx/PictureController.h index 973a0e2f..24631c38 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; @@ -36,30 +34,79 @@ IBOutlet NSStepper * fCropLeftStepper; IBOutlet NSTextField * fCropRightField; IBOutlet NSStepper * fCropRightStepper; - IBOutlet NSButton * fDeinterlaceCheck; - IBOutlet NSButton * fPARCheck; - IBOutlet NSButton * fEffectsCheck; + IBOutlet NSPopUpButton * fDeinterlacePopUp; + IBOutlet NSPopUpButton * fDecombPopUp; + IBOutlet NSButton * fDetelecineCheck; + IBOutlet NSButton * fDeblockCheck; + IBOutlet NSTextField * fDeblockField; + IBOutlet NSSlider * fDeblockSlider; + IBOutlet NSPopUpButton * fDenoisePopUp; + IBOutlet NSPopUpButton * fAnamorphicPopUp; IBOutlet NSButton * fPrevButton; IBOutlet NSButton * fNextButton; IBOutlet NSTextField * fInfoField; - - - int MaxOutputWidth; - int MaxOutputHeight; - - /* widgets in main window */ - IBOutlet NSTextField * fAutoCropMainWindow; + 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 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; +- (IBAction) deblockSliderChanged: (id) sender; +- (int) detelecine; +- (void) setDetelecine: (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