- (void)awakeFromNib
{
- [o_info_window setExcludedFromWindowsMenu: TRUE];
+ [o_info_window setExcludedFromWindowsMenu: YES];
+ [o_info_window setFloatingPanel: NO];
[o_info_window setTitle: _NS("Media Information")];
[o_uri_lbl setStringValue: _NS("Location")];
[o_info_window setInitialFirstResponder: o_uri_txt];
[o_info_window setDelegate: self];
- /* We may be awoken from nib way after initialiwation
+ /* We may be awoken from nib way after initialisation
* Update ourselves */
[self updatePanelWithItem:p_item];
}
if( _p_item != p_item )
{
if( p_item ) vlc_gc_decref( p_item );
+ [o_saveMetaData_btn setEnabled: NO];
if( _p_item ) vlc_gc_incref( _p_item );
p_item = _p_item;
}
}
else
{
- /* fill uri info */
- char * psz_url = input_item_GetURI( p_item );
- [o_uri_txt setStringValue: [NSString stringWithUTF8String: psz_url ? psz_url : "" ]];
-
if( !input_item_IsPreparsed( p_item ) )
{
playlist_t * p_playlist = pl_Yield( VLCIntf );
pl_Release( VLCIntf );
}
+ /* fill uri info */
+ char * psz_url = input_item_GetURI( p_item );
+ [o_uri_txt setStringValue: [NSString stringWithUTF8String: psz_url ? psz_url : "" ]];
free( psz_url );
+ /* fill title info */
+ char * psz_title = input_item_GetTitle( p_item );
+ if( !psz_title )
+ psz_title = input_item_GetName( p_item );
+ [o_title_txt setStringValue: [NSString stringWithUTF8String: psz_title ? : "" ]];
+ free( psz_title );
+
#define SET( foo, bar ) \
char *psz_##foo = input_item_Get##bar ( p_item ); \
[self setMeta: psz_##foo forLabel: o_##foo##_txt]; \
FREENULL( psz_##foo );
/* fill the other fields */
- SET( title, Title );
SET( author, Artist );
SET( collection, Album );
SET( seqNum, TrackNum );
NSImage *o_image;
psz_meta = input_item_GetArtURL( p_item );
if( psz_meta && !strncmp( psz_meta, "file://", 7 ) )
- o_image = [[NSImage alloc] initWithContentsOfURL: [NSURL URLWithString: [NSString stringWithUTF8String: psz_meta]]];
+ o_image = [[NSImage alloc] initWithContentsOfFile: [NSString stringWithUTF8String: psz_meta+7]];
else
o_image = [[NSImage imageNamed: @"noart.png"] retain];
[o_image_well setImage: o_image];
error:
pl_Release( VLCIntf );
NSRunAlertPanel(_NS("Error while saving meta"),
- _NS("Impossible to save the meta data."),
+ _NS("VLC was unable to save the meta data."),
_NS("OK"), nil, nil);
}
- (input_item_t *)item
{
- vlc_gc_incref( p_item );
+ if( p_item ) vlc_gc_incref( p_item );
return p_item;
}