[vlc-devel] commit: macosx: Never try to find an input anywhere, but get the playlist input using pl_CurrentInput. (Pierre d'Herbemont )
git version control
git at videolan.org
Sun Jul 13 16:25:41 CEST 2008
vlc | branch: master | Pierre d'Herbemont <pdherbemont at videolan.org> | Sun Jul 13 12:52:15 2008 +0200| [fcc30d464b150e5d01a8028a9edc5af66b81b630]
macosx: Never try to find an input anywhere, but get the playlist input using pl_CurrentInput.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fcc30d464b150e5d01a8028a9edc5af66b81b630
---
modules/gui/macosx/bookmarks.m | 83 +++++++++++++--------------------------
modules/gui/macosx/controls.m | 8 +--
2 files changed, 31 insertions(+), 60 deletions(-)
diff --git a/modules/gui/macosx/bookmarks.m b/modules/gui/macosx/bookmarks.m
index 69df666..5c562b0 100644
--- a/modules/gui/macosx/bookmarks.m
+++ b/modules/gui/macosx/bookmarks.m
@@ -117,11 +117,9 @@ static VLCBookmarks *_o_sharedInstance = nil;
- (IBAction)add:(id)sender
{
/* add item to list */
- intf_thread_t * p_intf = VLCIntf;
- input_thread_t * p_input = (input_thread_t *)vlc_object_find( p_intf,
- VLC_OBJECT_INPUT, FIND_ANYWHERE );
- if( !p_input )
- return;
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
+
+ if( !p_input ) return;
seekpoint_t bookmark;
vlc_value_t pos;
@@ -129,7 +127,7 @@ static VLCBookmarks *_o_sharedInstance = nil;
bookmark.i_byte_offset = 0;
bookmark.i_time_offset = 0;
- var_Get(p_intf, "position", &pos);
+ var_Get( VLCIntf, "position", &pos);
bookmark.psz_name = _("Untitled");
input_Control( p_input, INPUT_GET_BYTE_POSITION, &bookmark.i_byte_offset );
var_Get( p_input, "time", &pos );
@@ -144,9 +142,7 @@ static VLCBookmarks *_o_sharedInstance = nil;
- (IBAction)clear:(id)sender
{
/* clear table */
- intf_thread_t * p_intf = VLCIntf;
- input_thread_t *p_input = (input_thread_t *)vlc_object_find( p_intf,
- VLC_OBJECT_INPUT, FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
if( !p_input )
return;
@@ -163,9 +159,7 @@ static VLCBookmarks *_o_sharedInstance = nil;
/* put values to the sheet's fields and show sheet */
/* we take the values from the core and not the table, because we cannot
* really trust it */
- intf_thread_t * p_intf = VLCIntf;
- input_thread_t * p_input = (input_thread_t *)vlc_object_find( p_intf,
- VLC_OBJECT_INPUT, FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
seekpoint_t **pp_bookmarks;
int i_bookmarks;
int row;
@@ -214,12 +208,9 @@ static VLCBookmarks *_o_sharedInstance = nil;
- (IBAction)edit_ok:(id)sender
{
/* save field contents and close sheet */
-
- intf_thread_t * p_intf = VLCIntf;
- seekpoint_t **pp_bookmarks;
+ seekpoint_t **pp_bookmarks;
int i_bookmarks, i;
- input_thread_t *p_input = (input_thread_t *)vlc_object_find( p_intf,
- VLC_OBJECT_INPUT, FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
if( !p_input )
{
@@ -258,7 +249,7 @@ static VLCBookmarks *_o_sharedInstance = nil;
if( input_Control( p_input, INPUT_CHANGE_BOOKMARK, pp_bookmarks[i], i )
!= VLC_SUCCESS )
{
- msg_Warn( p_intf, "Unable to change the bookmark");
+ msg_Warn( VLCIntf, "Unable to change the bookmark");
vlc_object_release( p_input );
return;
}
@@ -274,9 +265,6 @@ static VLCBookmarks *_o_sharedInstance = nil;
- (IBAction)extract:(id)sender
{
/* extract */
-
- intf_thread_t * p_intf = VLCIntf;
-
if( [o_tbl_dataTable numberOfSelectedRows] < 2 )
{
NSBeginAlertSheet(_NS("Invalid selection"), _NS("OK"),
@@ -284,9 +272,7 @@ static VLCBookmarks *_o_sharedInstance = nil;
_NS("Two bookmarks have to be selected."));
return;
}
- input_thread_t *p_input =
- (input_thread_t *)vlc_object_find( p_intf, VLC_OBJECT_INPUT,
- FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
if( !p_input )
{
NSBeginCriticalAlertSheet(_NS("No input found"), _NS("OK"),
@@ -319,16 +305,16 @@ static VLCBookmarks *_o_sharedInstance = nil;
x = (x + 1);
}
- msg_Dbg(p_intf, "got the bookmark-indexes");
+ msg_Dbg( VLCIntf, "got the bookmark-indexes");
if( input_Control( p_input, INPUT_GET_BOOKMARKS, &pp_bookmarks,
&i_bookmarks ) != VLC_SUCCESS )
{
vlc_object_release( p_input );
- msg_Err(p_intf, "already defined bookmarks couldn't be retrieved");
+ msg_Err( VLCIntf, "already defined bookmarks couldn't be retrieved");
return;
}
- msg_Dbg(p_intf, "calling wizard");
+ msg_Dbg( VLCIntf, "calling wizard");
char *psz_uri = input_item_GetURI( input_GetItem( p_input ) );
[[[VLCMain sharedInstance] getWizard] initWithExtractValuesFrom:
@@ -339,15 +325,12 @@ static VLCBookmarks *_o_sharedInstance = nil;
ofItem: [NSString stringWithUTF8String: psz_uri]];
free( psz_uri );
vlc_object_release( p_input );
- msg_Dbg(p_intf, "released input");
+ msg_Dbg( VLCIntf, "released input");
}
- (IBAction)goToBookmark:(id)sender
{
- intf_thread_t * p_intf = VLCIntf;
- input_thread_t *p_input =
- (input_thread_t *)vlc_object_find( p_intf, VLC_OBJECT_INPUT,
- FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
if( !p_input ) return;
@@ -359,10 +342,7 @@ static VLCBookmarks *_o_sharedInstance = nil;
- (IBAction)remove:(id)sender
{
/* remove selected item */
- intf_thread_t * p_intf = VLCIntf;
- input_thread_t *p_input =
- (input_thread_t *)vlc_object_find( p_intf, VLC_OBJECT_INPUT,
- FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
if( !p_input ) return;
@@ -392,9 +372,7 @@ static VLCBookmarks *_o_sharedInstance = nil;
- (int)numberOfRowsInTableView:(NSTableView *)theDataTable
{
/* return the number of bookmarks */
- intf_thread_t * p_intf = VLCIntf;
- input_thread_t * p_input = (input_thread_t *)vlc_object_find( p_intf,
- VLC_OBJECT_INPUT, FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
seekpoint_t **pp_bookmarks;
int i_bookmarks;
@@ -415,53 +393,48 @@ static VLCBookmarks *_o_sharedInstance = nil;
(NSTableColumn *)theTableColumn row: (int)row
{
/* return the corresponding data as NSString */
- intf_thread_t * p_intf = VLCIntf;
- input_thread_t * p_input = (input_thread_t *)vlc_object_find( p_intf,
- VLC_OBJECT_INPUT, FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
seekpoint_t **pp_bookmarks;
int i_bookmarks;
char *toBeReturned;
int i_toBeReturned = 0;
-
+ id ret;
+
if( !p_input ) return @"";
else if( input_Control( p_input, INPUT_GET_BOOKMARKS, &pp_bookmarks,
&i_bookmarks ) != VLC_SUCCESS )
{
- vlc_object_release( p_input );
- return @"";
+ ret = @"";
}
else
{
if ([[theTableColumn identifier] isEqualToString: @"description"])
{
toBeReturned = pp_bookmarks[row]->psz_name;
- vlc_object_release( p_input );
- return [NSString stringWithUTF8String: toBeReturned];
+ ret = [NSString stringWithUTF8String: toBeReturned];
}
else if ([[theTableColumn identifier] isEqualToString: @"size_offset"])
{
i_toBeReturned = pp_bookmarks[row]->i_byte_offset;
- vlc_object_release( p_input );
- return [[NSNumber numberWithInt: i_toBeReturned] stringValue];
+ ret = [[NSNumber numberWithInt: i_toBeReturned] stringValue];
}
else if ([[theTableColumn identifier] isEqualToString: @"time_offset"])
{
i_toBeReturned = pp_bookmarks[row]->i_time_offset;
- vlc_object_release( p_input );
- return [[NSNumber numberWithInt: (i_toBeReturned / 1000000)]
+ ret = [[NSNumber numberWithInt: (i_toBeReturned / 1000000)]
stringValue];
}
else
{
/* may not happen, just in case */
- vlc_object_release( p_input );
- msg_Err(p_intf, "unknown table column identifier (%s) while "
+ msg_Err( VLCIntf, "unknown table column identifier (%s) while "
"updating the bookmark table", [[theTableColumn identifier]
UTF8String] );
- return @"unknown identifier";
+ ret = @"unknown identifier";
}
}
-
+ vlc_object_release( p_input );
+ return ret;
}
/*****************************************************************************
diff --git a/modules/gui/macosx/controls.m b/modules/gui/macosx/controls.m
index f5ea68a..bbd35e2 100644
--- a/modules/gui/macosx/controls.m
+++ b/modules/gui/macosx/controls.m
@@ -811,8 +811,7 @@
}
else if( sender == o_specificTime_ok_btn )
{
- input_thread_t * p_input = (input_thread_t *)vlc_object_find( VLCIntf, \
- VLC_OBJECT_INPUT, FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
if( p_input )
{
unsigned int timeInSec = 0;
@@ -841,14 +840,13 @@
input_Control( p_input, INPUT_SET_TIME, (int64_t)(timeInSec * 1000000));
vlc_object_release( p_input );
}
-
+
[NSApp endSheet: o_specificTime_win];
[o_specificTime_win close];
}
else
{
- input_thread_t * p_input = (input_thread_t *)vlc_object_find( VLCIntf, \
- VLC_OBJECT_INPUT, FIND_ANYWHERE );
+ input_thread_t * p_input = pl_CurrentInput( VLCIntf );
if( p_input )
{
/* we can obviously only do that if an input is available */
More information about the vlc-devel
mailing list