X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=macosx%2FController.h;h=dd985a7b1ff61780b450dd7b35327f5fb9ff8216;hb=8a9568248fab1543f7b6fa3644e6e69a954a44bb;hp=4759a1d5b8d5ee4c1534355c144cd4e010551bb5;hpb=918b1621b2902566f3c5bb01cb4da3725c7eb375;p=handbrake-jp%2Fhandbrake-jp-git.git diff --git a/macosx/Controller.h b/macosx/Controller.h index 4759a1d5..dd985a7b 100644 --- a/macosx/Controller.h +++ b/macosx/Controller.h @@ -1,116 +1,304 @@ -/* $Id: Controller.h,v 1.6 2003/10/13 23:09:56 titer Exp $ +/* $Id: Controller.h,v 1.35 2005/08/01 14:29:50 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 +#import -#include "Common.h" -#include "PictureGLView.h" -#include "TargetSizeField.h" +#include "hb.h" -@interface HBController : NSObject +#import "ChapterTitles.h" +#import "PictureController.h" +#import "HBQueueController.h" +#import "MVMenuButton.h" +#import "HBAdvancedController.h" +#import "HBPreferencesController.h" -{ - bool fDie; - - IBOutlet NSWindow * fWindow; - - /* Scan view */ - uint64_t fLastDVDDetection; - IBOutlet NSView * fScanView; - IBOutlet NSMatrix * fScanMatrix; - IBOutlet NSPopUpButton * fDVDPopUp; - IBOutlet NSTextField * fDVDFolderField; - IBOutlet NSButton * fScanBrowseButton; - IBOutlet NSTextField * fScanStatusField; - IBOutlet NSProgressIndicator * fScanProgress; - IBOutlet NSButton * fScanButton; +@class HBOutputPanelController; - IBOutlet NSView * fTempView; +@interface HBController : NSObject - /* Rip view */ - IBOutlet NSView * fRipView; +{ + IBOutlet NSWindow * fWindow; + NSToolbar * toolbar; + + /* Picture panel */ + PictureController * fPictureController; + + /* Advanced options tab */ + HBAdvancedController * fAdvancedOptions; + IBOutlet NSBox * fAdvancedView; + HBPreferencesController * fPreferencesController; + + /* Queue panel */ + HBQueueController * fQueueController; + IBOutlet NSTextField * fQueueStatus; + + /* Output panel */ + HBOutputPanelController *outputPanel; + + /* Source box */ + IBOutlet NSProgressIndicator * fScanIndicator; + NSString * sourceDisplayName; + IBOutlet NSTextField * fSrcDVD2Field; + IBOutlet NSTextField * fSrcTitleField; + IBOutlet NSPopUpButton * fSrcTitlePopUp; + IBOutlet NSTextField * fSrcChapterField; + IBOutlet NSPopUpButton * fSrcChapterStartPopUp; + IBOutlet NSTextField * fSrcChapterToField; + IBOutlet NSPopUpButton * fSrcChapterEndPopUp; + IBOutlet NSTextField * fSrcDuration1Field; + IBOutlet NSTextField * fSrcDuration2Field; + + /* Destination box */ + IBOutlet NSTextField * fDstFormatField; + IBOutlet NSPopUpButton * fDstFormatPopUp; + IBOutlet NSButton * fDstMpgLargeFileCheck; + IBOutlet NSTextField * fDstCodecsField; + IBOutlet NSPopUpButton * fDstCodecsPopUp; + IBOutlet NSTextField * fDstFile1Field; + IBOutlet NSTextField * fDstFile2Field; + IBOutlet NSButton * fDstBrowseButton; + /* Video box */ - IBOutlet NSPopUpButton * fTitlePopUp; - IBOutlet NSPopUpButton * fVideoCodecPopUp; - IBOutlet NSMatrix * fVideoMatrix; - IBOutlet NSTextField * fCustomBitrateField; - IBOutlet HBTargetSizeField * fTargetSizeField; - IBOutlet NSButton * fTwoPassCheck; - IBOutlet NSButton * fCropButton; + IBOutlet NSTextField * fVidRateField; + IBOutlet NSPopUpButton * fVidRatePopUp; + IBOutlet NSTextField * fVidEncoderField; + IBOutlet NSPopUpButton * fVidEncoderPopUp; + IBOutlet NSTextField * fVidQualityField; + IBOutlet NSMatrix * fVidQualityMatrix; + IBOutlet NSButtonCell * fVidTargetCell; + IBOutlet NSTextField * fVidTargetSizeField; + IBOutlet NSButtonCell * fVidBitrateCell; + IBOutlet NSTextField * fVidBitrateField; + IBOutlet NSButtonCell * fVidConstantCell; + IBOutlet NSSlider * fVidQualitySlider; + IBOutlet NSButton * fVidGrayscaleCheck; + IBOutlet NSButton * fVidTwoPassCheck; + IBOutlet NSButton * fVidTurboPassCheck; + + /* Picture Settings box */ + IBOutlet NSTextField * fPicLabelSettings; + IBOutlet NSTextField * fPicLabelSrc; + IBOutlet NSTextField * fPicLabelOutp; + IBOutlet NSTextField * fPicLabelAr; + IBOutlet NSTextField * fPicLabelSrcX; + IBOutlet NSTextField * fPicLabelOutputX; + IBOutlet NSTextField * fPicLabelAutoCrop; + IBOutlet NSTextField * fPicLabelDetelecine; + IBOutlet NSTextField * fPicLabelDeinterlace; + IBOutlet NSTextField * fPicLabelDenoise; + + IBOutlet NSTextField * fPicSrcWidth; + IBOutlet NSTextField * fPicSrcHeight; + IBOutlet NSTextField * fPicSettingWidth; + IBOutlet NSTextField * fPicSettingHeight; + IBOutlet NSTextField * fPicSettingDeinterlace; + IBOutlet NSTextField * fPicSettingARkeep; + IBOutlet NSTextField * fPicSettingPAR; + IBOutlet NSTextField * fPicSettingAutoCrop; + IBOutlet NSTextField * fPicSettingDetelecine; + IBOutlet NSTextField * fPicSettingDenoise; + IBOutlet NSTextField * fPicLabelAnamorphic; + IBOutlet NSTextField * fPicLabelPAROutputX; + IBOutlet NSTextField * fPicSettingPARWidth; + IBOutlet NSTextField * fPicSettingPARHeight; + /* Picture variables */ + int PicOrigOutputWidth; + int PicOrigOutputHeight; + int AutoCropTop; + int AutoCropBottom; + int AutoCropLeft; + int AutoCropRight; + /* Subtitles box */ + IBOutlet NSTextField * fSubField; + IBOutlet NSPopUpButton * fSubPopUp; + IBOutlet NSButton * fSubForcedCheck; + /* Audio box */ - IBOutlet NSPopUpButton * fLanguagePopUp; - IBOutlet NSPopUpButton * fSecondaryLanguagePopUp; - IBOutlet NSPopUpButton * fAudioCodecPopUp; - IBOutlet NSPopUpButton * fAudioBitratePopUp; - - /* Destination box */ - IBOutlet NSPopUpButton * fFileFormatPopUp; - IBOutlet NSTextField * fFileField; - IBOutlet NSButton * fFileBrowseButton; - + IBOutlet NSTextField * fAudLang1Field; + IBOutlet NSPopUpButton * fAudLang1PopUp; + IBOutlet NSTextField * fAudLang2Field; + IBOutlet NSPopUpButton * fAudLang2PopUp; + /* New Audio Mix PopUps */ + IBOutlet NSTextField * fAudTrack1MixLabel; + IBOutlet NSPopUpButton * fAudTrack1MixPopUp; + IBOutlet NSTextField * fAudTrack2MixLabel; + IBOutlet NSPopUpButton * fAudTrack2MixPopUp; + + IBOutlet NSTextField * fAudRateField; + IBOutlet NSPopUpButton * fAudRatePopUp; + IBOutlet NSTextField * fAudBitrateField; + IBOutlet NSPopUpButton * fAudBitratePopUp; + + /* Chapters box */ + IBOutlet NSButton * fCreateChapterMarkers; + IBOutlet NSTableView * fChapterTable; + ChapterTitles * fChapterTitlesDelegate; + /* Bottom */ - IBOutlet NSTextField * fRipStatusField; - IBOutlet NSTextField * fRipInfoField; - IBOutlet NSProgressIndicator * fRipProgress; - IBOutlet NSButton * fSuspendButton; - IBOutlet NSButton * fRipButton; - - /* "Done" alert panel */ - IBOutlet NSPanel * fDonePanel; - - /* Crop & resize panel */ - IBOutlet NSPanel * fPicturePanel; - IBOutlet HBPictureGLView * fPictureGLView; - IBOutlet NSTextField * fWidthField; - IBOutlet NSStepper * fWidthStepper; - IBOutlet NSButton * fDeinterlaceCheck; - IBOutlet NSTextField * fTopField; - IBOutlet NSStepper * fTopStepper; - IBOutlet NSTextField * fBottomField; - IBOutlet NSStepper * fBottomStepper; - IBOutlet NSTextField * fLeftField; - IBOutlet NSStepper * fLeftStepper; - IBOutlet NSTextField * fRightField; - IBOutlet NSStepper * fRightStepper; - IBOutlet NSTextField * fInfoField; - int fPicture; - - HBManager * fManager; - HBList * fTitleList; + IBOutlet NSButton * fPictureButton; + IBOutlet NSTextField * fStatusField; + IBOutlet NSProgressIndicator * fRipIndicator; + BOOL fRipIndicatorShown; + + /* User Preset variables here */ + + IBOutlet NSDrawer * fPresetDrawer; + IBOutlet NSTextField * fPresetNewName; + IBOutlet NSTextField * fPresetNewDesc; + IBOutlet NSPopUpButton * fPresetNewPicSettingsPopUp; + IBOutlet NSTextField * fPresetSelectedDisplay; + + NSString * AppSupportDirectory; + NSString * UserPresetsFile; + NSMutableArray * UserPresets; + NSMutableArray * UserPresetssortedArray; + NSMutableDictionary * chosenPreset; + int curUserPresetChosenNum; + + int presetHbDefault; // this is 1 in "Default" preset key + int presetUserDefault;// this is 2 in "Default" preset key + IBOutlet NSPanel * fAddPresetPanel; + IBOutlet NSTableView * tableView; + IBOutlet NSButton * fPresetsAdd; + IBOutlet NSButton * fPresetsDelete; + IBOutlet MVMenuButton * fPresetsActionButton; + IBOutlet NSMenu * fPresetsActionMenu; + + hb_handle_t * fHandle; + hb_title_t * fTitle; + /* integer to set to determine the previous state + of encode 0==idle, 1==encoding, 2==cancelled*/ + int fEncodeState; + int currentScanCount; + int currentSuccessfulScanCount; + int SuccessfulScan; + NSString * currentSource; + + hb_job_t * fLastKnownCurrentJob; } -- (IBAction) ScanMatrixChanged: (id) sender; -- (IBAction) BrowseDVD: (id) sender; -- (void) BrowseDVDDone: (NSOpenPanel *) sheet +- (void) TranslateStrings; + +- (void) updateUI: (NSTimer *) timer; +- (void) enableUI: (bool) enable; +- (IBAction) showNewScan: (id) sender; +- (IBAction) showScanPanel: (id) sender; +- (IBAction) browseSources: (id) sender; +- (void) browseSourcesDone: (NSOpenPanel *) sheet returnCode: (int) returnCode contextInfo: (void *) contextInfo; -- (IBAction) Scan: (id) sender; + +- (IBAction) titlePopUpChanged: (id) sender; +- (IBAction) chapterPopUpChanged: (id) sender; + +- (IBAction) formatPopUpChanged: (id) sender; +- (IBAction) codecsPopUpChanged: (id) sender; +- (IBAction) encoderPopUpChanged: (id) sender; +- (IBAction) twoPassCheckboxChanged: (id) sender; +- (IBAction) videoFrameRateChanged: (id) sender; +- (IBAction) setEnabledStateOfAudioMixdownControls: (id) sender; +- (IBAction) addAllAudioTracksToPopUp: (id) sender; +- (IBAction) selectAudioTrackInPopUp: (id) sender searchPrefixString: (NSString *) searchPrefixString selectIndexIfNotFound: (int) selectIndexIfNotFound; +- (IBAction) audioTrackPopUpChanged: (id) sender; +- (IBAction) audioTrackPopUpChanged: (id) sender mixdownToUse: (int) mixdownToUse; +- (IBAction) audioTrackMixdownChanged: (id) sender; +- (IBAction) subtitleSelectionChanged: (id) sender; -- (IBAction) TitlePopUpChanged: (id) sender; -- (IBAction) VideoMatrixChanged: (id) sender; -- (IBAction) AudioPopUpChanged: (id) sender; -- (IBAction) BrowseFile: (id) sender; -- (void) BrowseFileDone: (NSSavePanel *) sheet +- (IBAction) browseFile: (id) sender; +- (void) browseFileDone: (NSSavePanel *) sheet returnCode: (int) returnCode contextInfo: (void *) contextInfo; -- (IBAction) ShowPicturePanel: (id) sender; -- (IBAction) ClosePanel: (id) sender; + +- (IBAction) videoMatrixChanged: (id) sender; +- (IBAction) qualitySliderChanged: (id) sender; + +- (IBAction) showPicturePanel: (id) sender; +- (IBAction) calculatePictureSizing: (id) sender; +- (IBAction) openMainWindow: (id) sender; + +- (IBAction) addToQueue: (id) sender; +- (IBAction) showQueueWindow:(id)sender; + +- (IBAction)showPreferencesWindow:(id)sender; + - (IBAction) Rip: (id) sender; -- (void) OverwriteAlertDone: (NSWindow *) sheet +- (void) overWriteAlertDone: (NSWindow *) sheet + returnCode: (int) returnCode contextInfo: (void *) contextInfo; +- (void) updateAlertDone: (NSWindow *) sheet returnCode: (int) returnCode contextInfo: (void *) contextInfo; - (void) _Rip; - (IBAction) Cancel: (id) sender; -- (IBAction) Suspend: (id) sender; -- (IBAction) Resume: (id) sender; +- (void) _Cancel: (NSWindow *) sheet returnCode: (int) returnCode + contextInfo: (void *) contextInfo; +- (IBAction) Pause: (id) sender; + +- (IBAction) calculateBitrate: (id) sender; +- (void) controlTextDidChange: (NSNotification *) notification; + +- (IBAction) openHomepage: (id) sender; +- (IBAction) openForums: (id) sender; +- (IBAction) openUserGuide: (id) sender; -- (IBAction) PreviousPicture: (id) sender; -- (IBAction) NextPicture: (id) sender; -- (IBAction) UpdatePicture: (id) sender; +// Preset Methods Here +- (void) loadPresets; +- (IBAction) customSettingUsed: (id) sender; +- (IBAction) showAddPresetPanel: (id) sender; +- (IBAction) closeAddPresetPanel: (id) sender; +- (NSDictionary *)createPreset; +- (NSDictionary *)createIpodLowPreset; +- (NSDictionary *)createIpodHighPreset; +- (NSDictionary *)createAppleTVPreset; +- (NSDictionary *)createPSThreePreset; +- (NSDictionary *)createPSPPreset; +- (NSDictionary *)createNormalPreset; +- (NSDictionary *)createClassicPreset; +- (NSDictionary *)createQuickTimePreset; +- (NSDictionary *)createFilmPreset; +- (NSDictionary *)createTelevisionPreset; +- (NSDictionary *)createAnimationPreset; +- (NSDictionary *)createBedlamPreset; +- (NSDictionary *)createiPhonePreset; +- (NSDictionary *)createDeuxSixQuatrePreset; +- (NSDictionary *)createBrokePreset; +- (NSDictionary *)createBlindPreset; +- (NSDictionary *)createCRFPreset; -- (void) UpdateIntf: (NSTimer *) timer; -- (void) DetectDrives; +- (IBAction) revertPictureSizeToMax:(id)sender; +- (IBAction)setDefaultPreset:(id)sender; +- (IBAction)selectDefaultPreset:(id)sender; +- (void) savePreset; +- (IBAction)addFactoryPresets:(id)sender; +- (IBAction)deleteFactoryPresets:(id)sender; +- (IBAction)addUserPreset:(id)sender; +- (void)addPreset; +- (IBAction)insertPreset:(id)sender; +- (IBAction)deletePreset:(id)sender; +- (IBAction)getDefaultPresets:(id)sender; +- (IBAction)tableViewSelected:(id)sender; + +// NSTableDataSource methods +- (int)numberOfRowsInTableView:(NSTableView *)aTableView; +- (id)tableView:(NSTableView *)aTableView + objectValueForTableColumn:(NSTableColumn *)aTableColumn + row:(int)rowIndex; +- (void)tableView:(NSTableView *)aTableView + setObjectValue:(id)anObject + forTableColumn:(NSTableColumn *)aTableColumn + row:(int)rowIndex; +// To determine user presets cell display properties +- (void)tableView:(NSTableView *)aTableView + willDisplayCell:(id)aCell forTableColumn:(NSTableColumn *)aTableColumn + row:(int)rowIndex; + +// Growl methods +- (NSDictionary *) registrationDictionaryForGrowl; +-(IBAction)showGrowlDoneNotification:(id)sender; +- (IBAction)showDebugOutputPanel:(id)sender; +- (void)setupToolbar; @end +