X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fgui%2Fmacosx%2Fintf.h;h=6215d8ee734bf122c0502d68580ffff8ba58bea9;hb=2010d13aa87441aedb456a4af539fe76f35914b6;hp=80fc01d7a034aced356f5a45e75882c98f722b83;hpb=f3ccaec1c592a77f34044b0f36cdc47343e9563d;p=vlc diff --git a/modules/gui/macosx/intf.h b/modules/gui/macosx/intf.h index 80fc01d7a0..6215d8ee73 100644 --- a/modules/gui/macosx/intf.h +++ b/modules/gui/macosx/intf.h @@ -1,12 +1,13 @@ /***************************************************************************** * intf.h: MacOS X interface module ***************************************************************************** - * Copyright (C) 2002-2005 the VideoLAN team + * Copyright (C) 2002-2007 the VideoLAN team * $Id$ * * Authors: Jon Lech Johansen * Christophe Massiot * Derk-Jan Hartman + * Felix Kühne * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -20,14 +21,15 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ #include -#include -#include -#include -#include +#include +#include +#include +#include +#include #include @@ -49,6 +51,9 @@ unsigned int CocoaKeyToVLC( unichar i_key ); @"/System/Library/CoreServices/SystemVersion.plist"] \ objectForKey: @"ProductVersion"] floatValue] +/* switch this to 1, if you want to use Obj-C with GC */ +#define GC_ENABLED 0 + /***************************************************************************** * intf_sys_t: description and status of the interface *****************************************************************************/ @@ -71,6 +76,7 @@ struct intf_sys_t vlc_bool_t b_current_title_update; vlc_bool_t b_fullscreen_update; vlc_bool_t b_volume_update; + vlc_bool_t b_intf_show; /* menus handlers */ vlc_bool_t b_input_update; @@ -85,6 +91,7 @@ struct intf_sys_t /***************************************************************************** * VLCMain interface *****************************************************************************/ +@class AppleRemote; @interface VLCMain : NSObject { intf_thread_t *p_intf; /* The main intf object */ @@ -95,8 +102,10 @@ struct intf_sys_t id o_extended; /* VLCExtended */ id o_bookmarks; /* VLCBookmarks */ id o_embedded_list; /* VLCEmbeddedList*/ + id o_interaction_list; /* VLCInteractionList*/ id o_sfilters; /* VLCsFilters */ - /*id o_update; VLCUpdate */ + id o_update; /* VLCUpdate */ + id o_eyetv; /* VLCEyeTVController */ BOOL nib_main_loaded; /* reference to the main-nib */ BOOL nib_open_loaded; /* reference to the open-nib */ BOOL nib_about_loaded; /* reference to the about-nib */ @@ -104,17 +113,19 @@ struct intf_sys_t BOOL nib_extended_loaded; /* reference to the extended-nib */ BOOL nib_bookmarks_loaded; /* reference to the bookmarks-nib */ BOOL nib_sfilters_loaded; /* reference to the sfilters-nib */ - /*BOOL nib_update_loaded; reference to the update-nib */ + BOOL nib_update_loaded; /* reference to the update-nib */ IBOutlet id o_window; /* main window */ IBOutlet id o_playlist_view;/* playlist view */ IBOutlet id o_scrollfield; /* info field */ IBOutlet id o_timefield; /* time field */ IBOutlet id o_timeslider; /* time slider */ + IBOutlet id o_embedded_window; /* Embedded Vout Window */ float f_slider; /* slider value */ float f_slider_old; /* old slider val */ IBOutlet id o_volumeslider; /* volume slider */ + IBOutlet id o_main_pgbar; /* main interface progress bar */ IBOutlet id o_btn_prev; /* btn previous */ IBOutlet id o_btn_rewind; /* btn rewind */ IBOutlet id o_btn_play; /* btn play */ @@ -139,21 +150,13 @@ struct intf_sys_t NSLock * o_msg_lock; /* messages lock */ IBOutlet id o_msgs_btn_crashlog; /* messages open crashlog */ - IBOutlet id o_error; /* error panel */ - IBOutlet id o_err_msg; /* NSTextView */ - IBOutlet id o_err_lbl; - IBOutlet id o_err_bug_lbl; - IBOutlet id o_err_btn_msgs; /* Open Messages */ - IBOutlet id o_err_btn_dismiss; - IBOutlet id o_err_ckbk_surpress; - IBOutlet id o_info_window; /* Info panel */ /* main menu */ IBOutlet id o_mi_about; IBOutlet id o_mi_prefs; - /*IBOutlet id o_mi_checkForUpdate;*/ + IBOutlet id o_mi_checkForUpdate; IBOutlet id o_mi_add_intf; IBOutlet id o_mu_add_intf; IBOutlet id o_mi_services; @@ -226,6 +229,10 @@ struct intf_sys_t IBOutlet id o_mu_videotrack; IBOutlet id o_mi_screen; IBOutlet id o_mu_screen; + IBOutlet id o_mi_aspect_ratio; + IBOutlet id o_mu_aspect_ratio; + IBOutlet id o_mi_crop; + IBOutlet id o_mu_crop; IBOutlet id o_mi_subtitle; IBOutlet id o_mu_subtitle; IBOutlet id o_mi_deinterlace; @@ -246,13 +253,13 @@ struct intf_sys_t IBOutlet id o_mi_bring_atf; IBOutlet id o_mu_help; + IBOutlet id o_mi_help; IBOutlet id o_mi_readme; IBOutlet id o_mi_documentation; - IBOutlet id o_mi_reportabug; IBOutlet id o_mi_website; - IBOutlet id o_mi_license; IBOutlet id o_mi_donation; IBOutlet id o_mi_forum; + IBOutlet id o_mi_errorsAndWarnings; /* dock menu */ IBOutlet id o_dmi_play; @@ -261,13 +268,31 @@ struct intf_sys_t IBOutlet id o_dmi_previous; IBOutlet id o_dmi_mute; + /* vout menu */ + IBOutlet id o_vout_menu; + IBOutlet id o_vmi_play; + IBOutlet id o_vmi_stop; + IBOutlet id o_vmi_prev; + IBOutlet id o_vmi_next; + IBOutlet id o_vmi_volup; + IBOutlet id o_vmi_voldown; + IBOutlet id o_vmi_mute; + IBOutlet id o_vmi_fullscreen; + IBOutlet id o_vmi_snapshot; + bool b_small_window; + bool b_restore_size; + NSRect o_restore_rect; + mtime_t i_end_scroll; NSSize o_size_with_playlist; int i_lastShownVolume; + + AppleRemote * o_remote; + BOOL b_remote_button_hold; /* true as long as the user holds the left,right,plus or minus on the remote control */ } + (VLCMain *)sharedInstance; @@ -281,7 +306,12 @@ struct intf_sys_t - (id)getWizard; - (id)getBookmarks; - (id)getEmbeddedList; -- (void)terminate; +- (id)getInteractionList; +- (id)getMainIntfPgbar; +- (id)getControllerWindow; +- (id)getVoutMenu; +- (id)getEyeTVController; +- (void)applicationWillTerminate:(NSNotification *)notification; - (NSString *)localizedString:(char *)psz; - (char *)delocalizeString:(NSString *)psz; - (NSString *)wrapString: (NSString *)o_in_string toWidth: (int)i_width; @@ -292,6 +322,7 @@ struct intf_sys_t - (void)manage; - (void)manageIntf:(NSTimer *)o_timer; - (void)setupMenus; +- (void)refreshVoutDeviceMenu:(NSNotification *)o_notification; - (void)setScrollField:(NSString *)o_string stopAfter:(int )timeout; - (void)resetScrollField; @@ -316,16 +347,16 @@ struct intf_sys_t - (IBAction)viewAbout:(id)sender; - (IBAction)viewPreferences:(id)sender; -/*- (IBAction)checkForUpdate:(id)sender;*/ -- (IBAction)closeError:(id)sender; +- (IBAction)checkForUpdate:(id)sender; +- (IBAction)viewHelp:(id)sender; - (IBAction)openReadMe:(id)sender; - (IBAction)openDocumentation:(id)sender; -- (IBAction)reportABug:(id)sender; - (IBAction)openWebsite:(id)sender; -- (IBAction)openLicense:(id)sender; - (IBAction)openForum:(id)sender; - (IBAction)openDonate:(id)sender; - (IBAction)openCrashLog:(id)sender; +- (IBAction)viewErrorsAndWarnings:(id)sender; +- (IBAction)showMessagesPanel:(id)sender; - (IBAction)togglePlaylist:(id)sender; - (void)updateTogglePlaylistState;