Commit 7fef8b87 authored by Felix Paul Kühne's avatar Felix Paul Kühne

* updated all files to yield the playlist instead of finding it

parent c77d5dcd
...@@ -63,24 +63,21 @@ ...@@ -63,24 +63,21 @@
{ {
vlc_value_t val; vlc_value_t val;
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( p_intf );
FIND_ANYWHERE );
if( p_playlist )
{
vlc_mutex_lock( &p_playlist->object_lock );
if( p_playlist->i_size <= 0 )
{
vlc_mutex_unlock( &p_playlist->object_lock );
vlc_object_release( p_playlist );
[o_main intfOpenFileGeneric: (id)sender];
}
else
{
vlc_mutex_unlock( &p_playlist->object_lock );
vlc_object_release( p_playlist );
}
vlc_mutex_lock( &p_playlist->object_lock );
if( p_playlist->i_size <= 0 )
{
vlc_mutex_unlock( &p_playlist->object_lock );
vlc_object_release( p_playlist );
[o_main intfOpenFileGeneric: (id)sender];
}
else
{
vlc_mutex_unlock( &p_playlist->object_lock );
vlc_object_release( p_playlist );
} }
val.i_int = config_GetInt( p_intf, "key-play-pause" ); val.i_int = config_GetInt( p_intf, "key-play-pause" );
var_Set( p_intf->p_libvlc, "key-pressed", val ); var_Set( p_intf->p_libvlc, "key-pressed", val );
} }
...@@ -155,12 +152,7 @@ ...@@ -155,12 +152,7 @@
{ {
vlc_value_t val; vlc_value_t val;
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( p_intf );
FIND_ANYWHERE );
if( p_playlist == NULL )
{
return;
}
var_Get( p_playlist, "random", &val ); var_Get( p_playlist, "random", &val );
val.b_bool = !val.b_bool; val.b_bool = !val.b_bool;
...@@ -185,12 +177,7 @@ ...@@ -185,12 +177,7 @@
{ {
vlc_value_t val; vlc_value_t val;
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( p_intf );
FIND_ANYWHERE );
if( p_playlist == NULL )
{
return;
}
var_Get( p_playlist, "repeat", &val ); var_Get( p_playlist, "repeat", &val );
if (!val.b_bool) if (!val.b_bool)
...@@ -219,12 +206,7 @@ ...@@ -219,12 +206,7 @@
{ {
vlc_value_t val; vlc_value_t val;
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( p_intf );
FIND_ANYWHERE );
if( p_playlist == NULL )
{
return;
}
var_Get( p_playlist, "loop", &val ); var_Get( p_playlist, "loop", &val );
if (!val.b_bool) if (!val.b_bool)
...@@ -345,17 +327,17 @@ ...@@ -345,17 +327,17 @@
} }
else else
{ {
playlist_t * p_playlist = vlc_object_find( VLCIntf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( VLCIntf );
FIND_ANYWHERE );
if( p_playlist && ( [o_title isEqualToString: _NS("Fullscreen")] || if( [o_title isEqualToString: _NS("Fullscreen")] ||
[sender isKindOfClass:[NSButton class]] ) ) [sender isKindOfClass:[NSButton class]] )
{ {
vlc_value_t val; vlc_value_t val;
var_Get( p_playlist, "fullscreen", &val ); var_Get( p_playlist, "fullscreen", &val );
var_Set( p_playlist, "fullscreen", (vlc_value_t)!val.b_bool ); var_Set( p_playlist, "fullscreen", (vlc_value_t)!val.b_bool );
} }
if( p_playlist ) vlc_object_release( (vlc_object_t *)p_playlist );
vlc_object_release( p_playlist );
} }
} }
...@@ -697,14 +679,9 @@ ...@@ -697,14 +679,9 @@
BOOL bEnabled = TRUE; BOOL bEnabled = TRUE;
vlc_value_t val; vlc_value_t val;
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( p_intf );
FIND_ANYWHERE );
if( p_playlist != NULL ) vlc_mutex_lock( &p_playlist->object_lock );
{
vlc_mutex_lock( &p_playlist->object_lock );
}
else return FALSE;
#define p_input p_playlist->p_input #define p_input p_playlist->p_input
......
...@@ -87,12 +87,7 @@ ...@@ -87,12 +87,7 @@
- (BOOL)windowShouldClose:(id)sender - (BOOL)windowShouldClose:(id)sender
{ {
playlist_t * p_playlist = vlc_object_find( VLCIntf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( VLCIntf );
FIND_ANYWHERE );
if( p_playlist == NULL )
{
return NO;
}
playlist_Stop( p_playlist ); playlist_Stop( p_playlist );
vlc_object_release( p_playlist ); vlc_object_release( p_playlist );
......
...@@ -369,8 +369,7 @@ static VLCExtended *_o_sharedInstance = nil; ...@@ -369,8 +369,7 @@ static VLCExtended *_o_sharedInstance = nil;
id o_window = [NSApp keyWindow]; id o_window = [NSApp keyWindow];
NSArray *o_windows = [NSApp orderedWindows]; NSArray *o_windows = [NSApp orderedWindows];
NSEnumerator *o_enumerator = [o_windows objectEnumerator]; NSEnumerator *o_enumerator = [o_windows objectEnumerator];
playlist_t * p_playlist = vlc_object_find( VLCIntf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( VLCIntf );
FIND_ANYWHERE );
vout_thread_t *p_vout = vlc_object_find( VLCIntf, VLC_OBJECT_VOUT, FIND_ANYWHERE ); vout_thread_t *p_vout = vlc_object_find( VLCIntf, VLC_OBJECT_VOUT, FIND_ANYWHERE );
vout_thread_t *p_real_vout; vout_thread_t *p_real_vout;
...@@ -848,8 +847,7 @@ static VLCExtended *_o_sharedInstance = nil; ...@@ -848,8 +847,7 @@ static VLCExtended *_o_sharedInstance = nil;
{ {
/* save the preferences to make sure that our module-changes will up on /* save the preferences to make sure that our module-changes will up on
* next launch again */ * next launch again */
playlist_t * p_playlist = vlc_object_find( VLCIntf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( VLCIntf );
FIND_ANYWHERE );
int returnedValue; int returnedValue;
NSArray * theModules; NSArray * theModules;
theModules = [[NSArray alloc] initWithObjects: @"main", @"headphone", theModules = [[NSArray alloc] initWithObjects: @"main", @"headphone",
......
This diff is collapsed.
This diff is collapsed.
...@@ -135,15 +135,11 @@ ...@@ -135,15 +135,11 @@
else else
{ {
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( p_intf );
FIND_ANYWHERE );
if( p_playlist )
{
p_item = p_playlist->status.p_item;
vlc_object_release( p_playlist );
}
p_item = p_playlist->status.p_item;
vlc_object_release( p_playlist );
[self initPanel:sender]; [self initPanel:sender];
} }
} }
...@@ -173,14 +169,10 @@ ...@@ -173,14 +169,10 @@
{ {
/* make sure that we got the current item and not an outdated one */ /* make sure that we got the current item and not an outdated one */
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( p_intf );
FIND_ANYWHERE );
if( p_playlist ) p_item = p_playlist->status.p_item;
{ vlc_object_release( p_playlist );
p_item = p_playlist->status.p_item;
vlc_object_release( p_playlist );
}
/* check whether our item is valid, because we would crash if not */ /* check whether our item is valid, because we would crash if not */
if(! [self isItemInPlaylist: p_item] ) return; if(! [self isItemInPlaylist: p_item] ) return;
...@@ -287,8 +279,7 @@ ...@@ -287,8 +279,7 @@
- (IBAction)infoOk:(id)sender - (IBAction)infoOk:(id)sender
{ {
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( p_intf );
FIND_ANYWHERE );
vlc_value_t val; vlc_value_t val;
if( [self isItemInPlaylist: p_item] ) if( [self isItemInPlaylist: p_item] )
...@@ -316,15 +307,9 @@ ...@@ -316,15 +307,9 @@
- (BOOL)isItemInPlaylist:(playlist_item_t *)p_local_item - (BOOL)isItemInPlaylist:(playlist_item_t *)p_local_item
{ {
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, playlist_t * p_playlist = pl_Yield( p_intf );
FIND_ANYWHERE );
int i; int i;
if( p_playlist == NULL )
{
return NO;
}
for( i = 0 ; i < p_playlist->i_all_size ; i++ ) for( i = 0 ; i < p_playlist->i_all_size ; i++ )
{ {
if( p_playlist->pp_all_items[i] == p_local_item ) if( p_playlist->pp_all_items[i] == p_local_item )
...@@ -430,7 +415,8 @@ static VLCInfoTreeItem *o_root_item = nil; ...@@ -430,7 +415,8 @@ static VLCInfoTreeItem *o_root_item = nil;
} }
+ (VLCInfoTreeItem *)rootItem { + (VLCInfoTreeItem *)rootItem {
if (o_root_item == nil) o_root_item = [[VLCInfoTreeItem alloc] initWithName:@"main" value: @"" ID: 0 parent:nil]; if( o_root_item == nil )
o_root_item = [[VLCInfoTreeItem alloc] initWithName:@"main" value: @"" ID: 0 parent:nil];
return o_root_item; return o_root_item;
} }
......
...@@ -1277,63 +1277,58 @@ static VLCWizard *_o_sharedInstance = nil; ...@@ -1277,63 +1277,58 @@ static VLCWizard *_o_sharedInstance = nil;
{ {
intf_thread_t * p_intf = VLCIntf; intf_thread_t * p_intf = VLCIntf;
playlist_t * p_playlist = (playlist_t *)vlc_object_find( p_intf, playlist_t * p_playlist = pl_Yield( p_intf );
VLC_OBJECT_PLAYLIST, FIND_ANYWHERE);
if( p_playlist ) int x = 0;
int y = [[o_userSelections objectForKey:@"pathToStrm"] count];
while( x != y )
{ {
int x = 0; /* we need a temp. variable here to work-around a GCC4-bug */
int y = [[o_userSelections objectForKey:@"pathToStrm"] count]; NSString *tempString = [NSString stringWithFormat: \
while( x != y ) @"%@ (%i/%i)", _NS("Streaming/Transcoding Wizard"), \
( x + 1 ), y];
input_item_t *p_input = input_ItemNew( p_playlist, \
[[[o_userSelections objectForKey:@"pathToStrm"] \
objectAtIndex:x] UTF8String], \
[tempString UTF8String] );
vlc_input_item_AddOption( p_input, [[[o_userSelections \
objectForKey:@"opts"] objectAtIndex: x] UTF8String]);
if(! [[o_userSelections objectForKey:@"partExtractFrom"] \
isEqualToString:@""] )
{ {
/* we need a temp. variable here to work-around a GCC4-bug */ vlc_input_item_AddOption( p_input, [[NSString \
NSString *tempString = [NSString stringWithFormat: \ stringWithFormat: @"start-time=%@", [o_userSelections \
@"%@ (%i/%i)", _NS("Streaming/Transcoding Wizard"), \ objectForKey: @"partExtractFrom"]] UTF8String] );
( x + 1 ), y]; }
input_item_t *p_input = input_ItemNew( p_playlist, \
[[[o_userSelections objectForKey:@"pathToStrm"] \
objectAtIndex:x] UTF8String], \
[tempString UTF8String] );
vlc_input_item_AddOption( p_input, [[[o_userSelections \
objectForKey:@"opts"] objectAtIndex: x] UTF8String]);
if(! [[o_userSelections objectForKey:@"partExtractFrom"] \
isEqualToString:@""] )
{
vlc_input_item_AddOption( p_input, [[NSString \
stringWithFormat: @"start-time=%@", [o_userSelections \
objectForKey: @"partExtractFrom"]] UTF8String] );
}
if(! [[o_userSelections objectForKey:@"partExtractTo"] \
isEqualToString:@""] )
{
vlc_input_item_AddOption( p_input, [[NSString \
stringWithFormat: @"stop-time=%@", [o_userSelections \
objectForKey: @"partExtractTo"]] UTF8String] );
}
vlc_input_item_AddOption( p_input, [[NSString stringWithFormat: \ if(! [[o_userSelections objectForKey:@"partExtractTo"] \
@"ttl=%@", [o_userSelections objectForKey:@"ttl"]] \ isEqualToString:@""] )
UTF8String] ); {
vlc_input_item_AddOption( p_input, [[NSString \
stringWithFormat: @"stop-time=%@", [o_userSelections \
objectForKey: @"partExtractTo"]] UTF8String] );
}
playlist_PlaylistAddInput( p_playlist, p_input, PLAYLIST_STOP, PLAYLIST_END ); vlc_input_item_AddOption( p_input, [[NSString stringWithFormat: \
@"ttl=%@", [o_userSelections objectForKey:@"ttl"]] \
UTF8String] );
if( x == 0 ) playlist_PlaylistAddInput( p_playlist, p_input, PLAYLIST_STOP, PLAYLIST_END );
{
/* play the first item and add the others afterwards */
playlist_item_t *p_item = playlist_ItemGetByInput( p_playlist, p_input );
playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, NULL,
p_item );
}
x += 1; if( x == 0 )
{
/* play the first item and add the others afterwards */
playlist_item_t *p_item = playlist_ItemGetByInput( p_playlist, p_input );
playlist_Control( p_playlist, PLAYLIST_VIEWPLAY, NULL,
p_item );
} }
vlc_object_release(p_playlist); x += 1;
} else {
msg_Err( p_intf, "unable to find playlist" );
} }
vlc_object_release( p_playlist );
/* close the window, since we are done */ /* close the window, since we are done */
[o_wizard_window close]; [o_wizard_window close];
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment