From d48f97db9c620418063cdb22a6083f91d59e2d6c Mon Sep 17 00:00:00 2001 From: Benjamin Pracht Date: Mon, 15 Mar 2004 23:15:48 +0000 Subject: [PATCH] Applies part of patch from Tom Maguire. Adds controls for 1min/5min forward / backward, and add menu items for them in the control menu. It might make it a bit uinclear. Please make any comment. --- THANKS | 1 + .../English.lproj/MainMenu.nib/classes.nib | 10 +++ .../English.lproj/MainMenu.nib/info.nib | 7 +- .../English.lproj/MainMenu.nib/objects.nib | Bin 52882 -> 55818 bytes modules/gui/macosx/controls.h | 4 ++ modules/gui/macosx/controls.m | 62 ++++++++++++++++++ modules/gui/macosx/intf.h | 4 ++ modules/gui/macosx/intf.m | 21 +++++- 8 files changed, 103 insertions(+), 6 deletions(-) diff --git a/THANKS b/THANKS index 9da69ea3d2..0a315dbd2e 100644 --- a/THANKS +++ b/THANKS @@ -87,3 +87,4 @@ Watanabe Go - fix for non-ASCII filenames Xavier Maillard - audio converters Xavier Marchesini - Win32 fixes Yves Duret - RPM packages +Bob Maguire - addition of some controls to the OSX interface diff --git a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib index 8c1f8170e5..f55c9427ef 100644 --- a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib +++ b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/classes.nib @@ -22,13 +22,18 @@ { ACTIONS = { backward = id; + backward1Min = id; + backward5Min = id; faster = id; forward = id; + forward1Min = id; + forward5Min = id; loop = id; mute = id; next = id; pause = id; play = id; + position = id; prev = id; random = id; repeat = id; @@ -101,6 +106,8 @@ "o_mi_audiotrack" = id; "o_mi_bring_atf" = id; "o_mi_bwd" = id; + "o_mi_bwd1m" = id; + "o_mi_bwd5m" = id; "o_mi_channels" = id; "o_mi_chapter" = id; "o_mi_clear" = id; @@ -117,6 +124,8 @@ "o_mi_floatontop" = id; "o_mi_fullscreen" = id; "o_mi_fwd" = id; + "o_mi_fwd1m" = id; + "o_mi_fwd5m" = id; "o_mi_half_window" = id; "o_mi_hide" = id; "o_mi_hide_others" = id; @@ -137,6 +146,7 @@ "o_mi_paste" = id; "o_mi_play" = id; "o_mi_playlist" = id; + "o_mi_position" = id; "o_mi_prefs" = id; "o_mi_previous" = id; "o_mi_program" = id; diff --git a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib index e7fc769ec5..9c998bbc16 100644 --- a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib +++ b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/info.nib @@ -3,13 +3,13 @@ IBDocumentLocation - 561 168 505 541 0 0 1024 746 + 494 131 505 541 0 0 1024 746 IBEditorPositions 1617 410 345 104 149 0 0 800 578 29 - 73 518 419 44 0 0 800 578 + 17 579 419 44 0 0 1024 746 915 212 486 103 130 0 0 1024 746 @@ -19,9 +19,8 @@ IBOpenObjects - 1530 + 29 21 - 915 IBSystem Version 7D24 diff --git a/extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib b/extras/MacOSX/Resources/English.lproj/MainMenu.nib/objects.nib index a0d57594319264c040a1ca667ae395540ee18d0a..d99f4860033f7008380ba1b71be97843ade269d2 100644 GIT binary patch literal 55818 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 literal 52882 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 J)D*ik{ukK#HB0~i diff --git a/modules/gui/macosx/controls.h b/modules/gui/macosx/controls.h index aea4624d7c..18fe288c67 100644 --- a/modules/gui/macosx/controls.h +++ b/modules/gui/macosx/controls.h @@ -48,6 +48,10 @@ - (IBAction)forward:(id)sender; - (IBAction)backward:(id)sender; +- (IBAction)forward1Min:(id)sender; +- (IBAction)backward1Min:(id)sender; +- (IBAction)forward5Min:(id)sender; +- (IBAction)backward5Min:(id)sender; - (IBAction)volumeUp:(id)sender; - (IBAction)volumeDown:(id)sender; diff --git a/modules/gui/macosx/controls.m b/modules/gui/macosx/controls.m index 6ab7a8fc9d..72efa55505 100644 --- a/modules/gui/macosx/controls.m +++ b/modules/gui/macosx/controls.m @@ -256,6 +256,37 @@ vlc_value_t time; time.i_time = 10 * 1000000; var_Set( p_input, "time-offset", time ); + vout_OSDMessage( p_intf, _( "Jump +10 Seconds" ) ); + vlc_object_release( p_input ); + } +} + +- (IBAction)forward1Min:(id)sender +{ + intf_thread_t * p_intf = [NSApp getIntf]; + input_thread_t * p_input = vlc_object_find( p_intf, VLC_OBJECT_INPUT, + FIND_ANYWHERE ); + if( p_input != NULL ) + { + vlc_value_t time; + time.i_time = 60 * 1000000; + var_Set( p_input, "time-offset", time ); + vout_OSDMessage( p_intf, _( "Jump +1 Minute" ) ); + vlc_object_release( p_input ); + } +} + +- (IBAction)forward5Min:(id)sender +{ + intf_thread_t * p_intf = [NSApp getIntf]; + input_thread_t * p_input = vlc_object_find( p_intf, VLC_OBJECT_INPUT, + FIND_ANYWHERE ); + if( p_input != NULL ) + { + vlc_value_t time; + time.i_time = 300 * 1000000; + var_Set( p_input, "time-offset", time ); + vout_OSDMessage( p_intf, _( "Jump +5 Minutes" ) ); vlc_object_release( p_input ); } } @@ -270,6 +301,37 @@ vlc_value_t time; time.i_time = -10 * 1000000; var_Set( p_input, "time-offset", time ); + vout_OSDMessage( p_intf, _( "Jump -10 Seconds" ) ); + vlc_object_release( p_input ); + } +} + +- (IBAction)backward1Min:(id)sender +{ + intf_thread_t * p_intf = [NSApp getIntf]; + input_thread_t * p_input = vlc_object_find( p_intf, VLC_OBJECT_INPUT, + FIND_ANYWHERE ); + if( p_input != NULL ) + { + vlc_value_t time; + time.i_time = -60 * 1000000; + var_Set( p_input, "time-offset", time ); + vout_OSDMessage( p_intf, _( "Jump -1 Minute" ) ); + vlc_object_release( p_input ); + } +} + +- (IBAction)backward5Min:(id)sender +{ + intf_thread_t * p_intf = [NSApp getIntf]; + input_thread_t * p_input = vlc_object_find( p_intf, VLC_OBJECT_INPUT, + FIND_ANYWHERE ); + if( p_input != NULL ) + { + vlc_value_t time; + time.i_time = -300 * 1000000; + var_Set( p_input, "time-offset", time ); + vout_OSDMessage( p_intf, _( "Jump -5 Minutes" ) ); vlc_object_release( p_input ); } } diff --git a/modules/gui/macosx/intf.h b/modules/gui/macosx/intf.h index 184203b7f8..0ab06f054f 100644 --- a/modules/gui/macosx/intf.h +++ b/modules/gui/macosx/intf.h @@ -170,6 +170,10 @@ struct intf_sys_t IBOutlet id o_mi_loop; IBOutlet id o_mi_fwd; IBOutlet id o_mi_bwd; + IBOutlet id o_mi_fwd1m; + IBOutlet id o_mi_bwd1m; + IBOutlet id o_mi_fwd5m; + IBOutlet id o_mi_bwd5m; IBOutlet id o_mi_program; IBOutlet id o_mu_program; IBOutlet id o_mi_title; diff --git a/modules/gui/macosx/intf.m b/modules/gui/macosx/intf.m index 6ebab401fc..18349dee8e 100644 --- a/modules/gui/macosx/intf.m +++ b/modules/gui/macosx/intf.m @@ -411,6 +411,18 @@ unsigned int VLCModifiersToCocoa( unsigned int i_key ) i_key = config_GetInt( p_intf, "key-jump-10sec" ); [o_mi_bwd setKeyEquivalent: [NSString stringWithFormat:@"%C", VLCKeyToCocoa( i_key )]]; [o_mi_bwd setKeyEquivalentModifierMask: VLCModifiersToCocoa(i_key)]; + i_key = config_GetInt( p_intf, "key-jump+1min" ); + [o_mi_fwd1m setKeyEquivalent: [NSString stringWithFormat:@"%C", VLCKeyToCocoa( i_key )]]; + [o_mi_fwd1m setKeyEquivalentModifierMask: VLCModifiersToCocoa(i_key)]; + i_key = config_GetInt( p_intf, "key-jump-1min" ); + [o_mi_bwd1m setKeyEquivalent: [NSString stringWithFormat:@"%C", VLCKeyToCocoa( i_key )]]; + [o_mi_bwd1m setKeyEquivalentModifierMask: VLCModifiersToCocoa(i_key)]; + i_key = config_GetInt( p_intf, "key-jump+5min" ); + [o_mi_fwd5m setKeyEquivalent: [NSString stringWithFormat:@"%C", VLCKeyToCocoa( i_key )]]; + [o_mi_fwd5m setKeyEquivalentModifierMask: VLCModifiersToCocoa(i_key)]; + i_key = config_GetInt( p_intf, "key-jump-5min" ); + [o_mi_bwd5m setKeyEquivalent: [NSString stringWithFormat:@"%C", VLCKeyToCocoa( i_key )]]; + [o_mi_bwd5m setKeyEquivalentModifierMask: VLCModifiersToCocoa(i_key)]; i_key = config_GetInt( p_intf, "key-vol-up" ); [o_mi_vol_up setKeyEquivalent: [NSString stringWithFormat:@"%C", VLCKeyToCocoa( i_key )]]; [o_mi_vol_up setKeyEquivalentModifierMask: VLCModifiersToCocoa(i_key)]; @@ -488,8 +500,13 @@ unsigned int VLCModifiersToCocoa( unsigned int i_key ) [o_mi_random setTitle: _NS("Random")]; [o_mi_repeat setTitle: _NS("Repeat One")]; [o_mi_loop setTitle: _NS("Repeat All")]; - [o_mi_fwd setTitle: _NS("Step Forward")]; - [o_mi_bwd setTitle: _NS("Step Backward")]; + [o_mi_fwd setTitle: _NS("Forward 10 Seconds")]; + [o_mi_bwd setTitle: _NS("Backward 10 Seconds")]; + [o_mi_fwd1m setTitle: _NS("Forward 1 Minute")]; + [o_mi_bwd1m setTitle: _NS("Backward 1 Minute")]; + [o_mi_fwd5m setTitle: _NS("Forward 5 Minutes")]; + [o_mi_bwd5m setTitle: _NS("Backward 5 Minutes")]; + [o_mi_program setTitle: _NS("Program")]; [o_mu_program setTitle: _NS("Program")]; [o_mi_title setTitle: _NS("Title")]; -- 2.39.2