OSDN Git Service

LinGui: Internalize all the icons so I don't have to install them in
[handbrake-jp/handbrake-jp-git.git] / macosx / PictureController.h
index 4c13a06..f8742f8 100644 (file)
@@ -1,30 +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: <http://handbrake.m0k.org/>.
+   Homepage: <http://handbrake.fr/>.
    It may be used under the terms of the GNU General Public License. */
 
-#include <Cocoa/Cocoa.h>
+#import <Cocoa/Cocoa.h>
 
 #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 NSPanel         * fPicturePanel;
-
-    IBOutlet HBPictureGLView * fPictureGLView;
-    IBOutlet NSBox           * fPictureGLViewArea;
+    IBOutlet NSImageView     * fPictureView;
+    IBOutlet NSBox           * fPictureViewArea;
     IBOutlet NSTextField     * fWidthField;
     IBOutlet NSStepper       * fWidthStepper;
     IBOutlet NSTextField     * fHeightField;
     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;
@@ -51,7 +48,9 @@
     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
     BOOL    keepAspectRatioPreviousState; 
     
     struct {
-        int    detelecine;
+        int     detelecine;
+        int     vfr;
         int     deinterlace;
+        int     decomb;
         int     denoise;
+        int     deblock;
     } fPictureFilterSettings;
 
     id delegate;
@@ -70,7 +72,8 @@
 
 - (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;
 - (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;
-- (BOOL) loadMyNibFile;
+
++ (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)