Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-gpu
Commits
7fef8b87
Commit
7fef8b87
authored
Sep 17, 2006
by
Felix Paul Kühne
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* updated all files to yield the playlist instead of finding it
parent
c77d5dcd
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
199 additions
and
371 deletions
+199
-371
modules/gui/macosx/controls.m
modules/gui/macosx/controls.m
+23
-46
modules/gui/macosx/embeddedwindow.m
modules/gui/macosx/embeddedwindow.m
+1
-6
modules/gui/macosx/extended.m
modules/gui/macosx/extended.m
+2
-4
modules/gui/macosx/intf.m
modules/gui/macosx/intf.m
+46
-64
modules/gui/macosx/playlist.m
modules/gui/macosx/playlist.m
+74
-179
modules/gui/macosx/playlistinfo.m
modules/gui/macosx/playlistinfo.m
+11
-25
modules/gui/macosx/wizard.m
modules/gui/macosx/wizard.m
+42
-47
No files found.
modules/gui/macosx/controls.m
View file @
7fef8b87
...
...
@@ -63,24 +63,21 @@
{
vlc_value_t
val
;
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
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
);
}
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
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"
);
var_Set
(
p_intf
->
p_libvlc
,
"key-pressed"
,
val
);
}
...
...
@@ -155,12 +152,7 @@
{
vlc_value_t
val
;
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
{
return
;
}
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
var_Get
(
p_playlist
,
"random"
,
&
val
);
val
.
b_bool
=
!
val
.
b_bool
;
...
...
@@ -185,12 +177,7 @@
{
vlc_value_t
val
;
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
{
return
;
}
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
var_Get
(
p_playlist
,
"repeat"
,
&
val
);
if
(
!
val
.
b_bool
)
...
...
@@ -219,12 +206,7 @@
{
vlc_value_t
val
;
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
{
return
;
}
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
var_Get
(
p_playlist
,
"loop"
,
&
val
);
if
(
!
val
.
b_bool
)
...
...
@@ -345,17 +327,17 @@
}
else
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
if
(
p_playlist
&&
(
[
o_title
isEqualToString
:
_NS
(
"Fullscreen"
)]
||
[
sender
isKindOfClass
:[
NSButton
class
]]
)
)
if
(
[
o_title
isEqualToString
:
_NS
(
"Fullscreen"
)]
||
[
sender
isKindOfClass
:[
NSButton
class
]]
)
{
vlc_value_t
val
;
var_Get
(
p_playlist
,
"fullscreen"
,
&
val
);
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 @@
BOOL
bEnabled
=
TRUE
;
vlc_value_t
val
;
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
if
(
p_playlist
!=
NULL
)
{
vlc_mutex_lock
(
&
p_playlist
->
object_lock
);
}
else
return
FALSE
;
vlc_mutex_lock
(
&
p_playlist
->
object_lock
);
#define p_input p_playlist->p_input
...
...
modules/gui/macosx/embeddedwindow.m
View file @
7fef8b87
...
...
@@ -87,12 +87,7 @@
-
(
BOOL
)
windowShouldClose
:(
id
)
sender
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
{
return
NO
;
}
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
playlist_Stop
(
p_playlist
);
vlc_object_release
(
p_playlist
);
...
...
modules/gui/macosx/extended.m
View file @
7fef8b87
...
...
@@ -369,8 +369,7 @@ static VLCExtended *_o_sharedInstance = nil;
id
o_window
=
[
NSApp
keyWindow
];
NSArray
*
o_windows
=
[
NSApp
orderedWindows
];
NSEnumerator
*
o_enumerator
=
[
o_windows
objectEnumerator
];
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
vout_thread_t
*
p_vout
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_VOUT
,
FIND_ANYWHERE
);
vout_thread_t
*
p_real_vout
;
...
...
@@ -848,8 +847,7 @@ static VLCExtended *_o_sharedInstance = nil;
{
/* save the preferences to make sure that our module-changes will up on
* next launch again */
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
int
returnedValue
;
NSArray
*
theModules
;
theModules
=
[[
NSArray
alloc
]
initWithObjects
:
@"main"
,
@"headphone"
,
...
...
modules/gui/macosx/intf.m
View file @
7fef8b87
...
...
@@ -456,25 +456,22 @@ static VLCMain *_o_sharedMainInstance = nil;
o_size_with_playlist
=
[
o_window
frame
].
size
;
p_playlist
=
(
playlist_t
*
)
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
p_playlist
=
pl_Yield
(
p_intf
);
if
(
p_playlist
)
/* Check if we need to start playing */
if
(
p_intf
->
b_play
)
{
/* Check if we need to start playing */
if
(
p_intf
->
b_play
)
{
playlist_LockControl
(
p_playlist
,
PLAYLIST_AUTOPLAY
);
}
var_Create
(
p_playlist
,
"fullscreen"
,
VLC_VAR_BOOL
|
VLC_VAR_DOINHERIT
);
val
.
b_bool
=
VLC_FALSE
;
playlist_LockControl
(
p_playlist
,
PLAYLIST_AUTOPLAY
);
}
var_Create
(
p_playlist
,
"fullscreen"
,
VLC_VAR_BOOL
|
VLC_VAR_DOINHERIT
);
val
.
b_bool
=
VLC_FALSE
;
var_AddCallback
(
p_playlist
,
"fullscreen"
,
FullscreenChanged
,
self
);
var_AddCallback
(
p_playlist
,
"intf-show"
,
ShowController
,
self
);
var_AddCallback
(
p_playlist
,
"fullscreen"
,
FullscreenChanged
,
self
);
var_AddCallback
(
p_playlist
,
"intf-show"
,
ShowController
,
self
);
[
o_embedded_window
setFullscreen
:
var_GetBool
(
p_playlist
,
"fullscreen"
)];
vlc_object_release
(
p_playlist
);
}
[
o_embedded_window
setFullscreen
:
var_GetBool
(
p_playlist
,
"fullscreen"
)];
vlc_object_release
(
p_playlist
);
var_Create
(
p_intf
,
"interaction"
,
VLC_VAR_ADDRESS
);
var_AddCallback
(
p_intf
,
"interaction"
,
InteractCallback
,
self
);
...
...
@@ -741,7 +738,7 @@ static VLCMain *_o_sharedMainInstance = nil;
case
kRemoteButtonVolume_Plus
:
/* there are two events when the plus or minus button is pressed
one when the button is pressed down and one when the button is released */
if
(
pressedDown
)
if
(
pressedDown
)
{
[
o_controls
volumeUp
:
self
];
}
...
...
@@ -749,7 +746,8 @@ static VLCMain *_o_sharedMainInstance = nil;
case
kRemoteButtonVolume_Minus
:
/* there are two events when the plus or minus button is pressed
one when the button is pressed down and one when the button is released */
if
(
pressedDown
)
{
if
(
pressedDown
)
{
[
o_controls
volumeDown
:
self
];
}
break
;
...
...
@@ -763,7 +761,8 @@ static VLCMain *_o_sharedMainInstance = nil;
case
kRemoteButtonLeft_Hold
:
/* simulate an event as long as the user holds the button */
b_left_right_remote_button_hold
=
pressedDown
;
if
(
pressedDown
)
{
if
(
pressedDown
)
{
NSNumber
*
buttonIdentifierNumber
=
[
NSNumber
numberWithInt
:
buttonIdentifier
];
[
self
performSelector
:
@selector
(
triggerMovieStepForRemoteButton
:)
withObject:
buttonIdentifierNumber
];
...
...
@@ -917,11 +916,7 @@ static VLCMain *_o_sharedMainInstance = nil;
-
(
id
)
getPlaylist
{
if
(
o_playlist
)
{
return
o_playlist
;
}
return
nil
;
return
o_playlist
;
}
-
(
id
)
getInfo
...
...
@@ -999,19 +994,15 @@ static VLCMain *_o_sharedMainInstance = nil;
vlc_thread_set_priority
(
p_intf
,
VLC_THREAD_PRIORITY_LOW
);
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
p_playlist
=
pl_Yield
(
p_intf
);
if
(
p_playlist
!=
NULL
)
{
var_AddCallback
(
p_playlist
,
"intf-change"
,
PlaylistChanged
,
self
);
var_AddCallback
(
p_playlist
,
"item-change"
,
PlaylistChanged
,
self
);
var_AddCallback
(
p_playlist
,
"item-append"
,
PlaylistChanged
,
self
);
var_AddCallback
(
p_playlist
,
"item-deleted"
,
PlaylistChanged
,
self
);
var_AddCallback
(
p_playlist
,
"playlist-current"
,
PlaylistChanged
,
self
);
var_AddCallback
(
p_playlist
,
"intf-change"
,
PlaylistChanged
,
self
);
var_AddCallback
(
p_playlist
,
"item-change"
,
PlaylistChanged
,
self
);
var_AddCallback
(
p_playlist
,
"item-append"
,
PlaylistChanged
,
self
);
var_AddCallback
(
p_playlist
,
"item-deleted"
,
PlaylistChanged
,
self
);
var_AddCallback
(
p_playlist
,
"playlist-current"
,
PlaylistChanged
,
self
);
vlc_object_release
(
p_playlist
);
}
vlc_object_release
(
p_playlist
);
while
(
!
p_intf
->
b_die
)
{
...
...
@@ -1073,8 +1064,7 @@ static VLCMain *_o_sharedMainInstance = nil;
vlc_bool_t
b_seekable
=
VLC_FALSE
;
vlc_bool_t
b_chapters
=
VLC_FALSE
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
b_plmul
=
p_playlist
->
i_size
>
1
;
vlc_object_release
(
p_playlist
);
...
...
@@ -1122,8 +1112,7 @@ static VLCMain *_o_sharedMainInstance = nil;
if
(
p_intf
->
p_sys
->
b_fullscreen_update
)
{
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
var_Get
(
p_playlist
,
"fullscreen"
,
&
val
);
[
o_embedded_window
setFullscreen
:
val
.
b_bool
];
vlc_object_release
(
p_playlist
);
...
...
@@ -1146,11 +1135,11 @@ static VLCMain *_o_sharedMainInstance = nil;
{
NSString
*
o_temp
;
vout_thread_t
*
p_vout
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
if
(
p_playlist
==
NULL
||
p_playlist
->
status
.
p_item
==
NULL
)
if
(
p_playlist
->
status
.
p_item
==
NULL
)
{
vlc_object_release
(
p_playlist
);
return
;
}
o_temp
=
[
NSString
stringWithUTF8String
:
...
...
@@ -1344,12 +1333,8 @@ static VLCMain *_o_sharedMainInstance = nil;
if
(
p_intf
->
p_sys
->
p_input
&&
!
p_intf
->
p_sys
->
p_input
->
b_die
)
{
NSString
*
o_temp
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
{
return
;
}
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
o_temp
=
[
NSString
stringWithUTF8String
:
p_playlist
->
status
.
p_item
->
p_input
->
psz_name
];
if
(
o_temp
==
NULL
)
...
...
@@ -1536,12 +1521,9 @@ static VLCMain *_o_sharedMainInstance = nil;
#undef p_input
/* Stop playback */
if
(
(
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
)
)
)
{
playlist_Stop
(
p_playlist
);
vlc_object_release
(
p_playlist
);
}
p_playlist
=
pl_Yield
(
p_intf
);
playlist_Stop
(
p_playlist
);
vlc_object_release
(
p_playlist
);
/* FIXME - Wait here until all vouts are terminated because
libvlc's VLC_CleanUp destroys interfaces before vouts, which isn't
...
...
@@ -1647,7 +1629,7 @@ static VLCMain *_o_sharedMainInstance = nil;
-
(
IBAction
)
intfOpenFile
:(
id
)
sender
{
if
(
!
nib_open_loaded
)
if
(
!
nib_open_loaded
)
{
nib_open_loaded
=
[
NSBundle
loadNibNamed
:
@"Open"
owner
:
self
];
[
o_open
awakeFromNib
];
...
...
@@ -1659,7 +1641,7 @@ static VLCMain *_o_sharedMainInstance = nil;
-
(
IBAction
)
intfOpenFileGeneric
:(
id
)
sender
{
if
(
!
nib_open_loaded
)
if
(
!
nib_open_loaded
)
{
nib_open_loaded
=
[
NSBundle
loadNibNamed
:
@"Open"
owner
:
self
];
[
o_open
awakeFromNib
];
...
...
@@ -1671,7 +1653,7 @@ static VLCMain *_o_sharedMainInstance = nil;
-
(
IBAction
)
intfOpenDisc
:(
id
)
sender
{
if
(
!
nib_open_loaded
)
if
(
!
nib_open_loaded
)
{
nib_open_loaded
=
[
NSBundle
loadNibNamed
:
@"Open"
owner
:
self
];
[
o_open
awakeFromNib
];
...
...
@@ -1683,7 +1665,7 @@ static VLCMain *_o_sharedMainInstance = nil;
-
(
IBAction
)
intfOpenNet
:(
id
)
sender
{
if
(
!
nib_open_loaded
)
if
(
!
nib_open_loaded
)
{
nib_open_loaded
=
[
NSBundle
loadNibNamed
:
@"Open"
owner
:
self
];
[
o_open
awakeFromNib
];
...
...
@@ -1695,7 +1677,7 @@ static VLCMain *_o_sharedMainInstance = nil;
-
(
IBAction
)
showWizard
:(
id
)
sender
{
if
(
!
nib_wizard_loaded
)
if
(
!
nib_wizard_loaded
)
{
nib_wizard_loaded
=
[
NSBundle
loadNibNamed
:
@"Wizard"
owner
:
self
];
[
o_wizard
initStrings
];
...
...
@@ -1713,7 +1695,7 @@ static VLCMain *_o_sharedMainInstance = nil;
{
o_extended
=
[[
VLCExtended
alloc
]
init
];
}
if
(
!
nib_extended_loaded
)
if
(
!
nib_extended_loaded
)
{
nib_extended_loaded
=
[
NSBundle
loadNibNamed
:
@"Extended"
owner
:
self
];
[
o_extended
initStrings
];
...
...
@@ -1729,7 +1711,7 @@ static VLCMain *_o_sharedMainInstance = nil;
{
o_sfilters
=
[[
VLCsFilters
alloc
]
init
];
}
if
(
!
nib_sfilters_loaded
)
if
(
!
nib_sfilters_loaded
)
{
nib_sfilters_loaded
=
[
NSBundle
loadNibNamed
:
@"SFilters"
owner
:
self
];
[
o_sfilters
initStrings
];
...
...
@@ -1742,13 +1724,13 @@ static VLCMain *_o_sharedMainInstance = nil;
-
(
IBAction
)
showBookmarks
:(
id
)
sender
{
/* we need the wizard-nib for the bookmarks's extract functionality */
if
(
!
nib_wizard_loaded
)
if
(
!
nib_wizard_loaded
)
{
nib_wizard_loaded
=
[
NSBundle
loadNibNamed
:
@"Wizard"
owner
:
self
];
[
o_wizard
initStrings
];
}
if
(
!
nib_bookmarks_loaded
)
if
(
!
nib_bookmarks_loaded
)
{
nib_bookmarks_loaded
=
[
NSBundle
loadNibNamed
:
@"Bookmarks"
owner
:
self
];
[
o_bookmarks
showBookmarks
];
...
...
@@ -1759,7 +1741,7 @@ static VLCMain *_o_sharedMainInstance = nil;
-
(
IBAction
)
viewAbout
:(
id
)
sender
{
if
(
!
nib_about_loaded
)
if
(
!
nib_about_loaded
)
{
nib_about_loaded
=
[
NSBundle
loadNibNamed
:
@"About"
owner
:
self
];
[
o_about
showPanel
];
...
...
@@ -1778,7 +1760,7 @@ static VLCMain *_o_sharedMainInstance = nil;
-
(
IBAction
)
checkForUpdate
:(
id
)
sender
{
if
(
!
nib_update_loaded
)
if
(
!
nib_update_loaded
)
{
nib_update_loaded
=
[
NSBundle
loadNibNamed
:
@"Update"
owner
:
self
];
[
o_update
showUpdateWindow
];
...
...
modules/gui/macosx/playlist.m
View file @
7fef8b87
...
...
@@ -114,8 +114,7 @@
}
-
(
void
)
awakeFromNib
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
[
o_outline_view
setTarget
:
self
];
[
o_outline_view
setDelegate
:
self
];
[
o_outline_view
setDataSource
:
self
];
...
...
@@ -151,10 +150,7 @@
{
int
i_return
=
0
;
playlist_item_t
*
p_item
=
NULL
;
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
return
0
;
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
if
(
outlineView
!=
o_outline_view
)
{
vlc_object_release
(
p_playlist
);
...
...
@@ -185,11 +181,7 @@ NSLog( @"%d children for %s", i_return, p_item->p_input->psz_name );
{
playlist_item_t
*
p_return
=
NULL
,
*
p_item
=
NULL
;
NSValue
*
o_value
;
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
return
nil
;
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
if
(
item
==
nil
)
{
...
...
@@ -206,11 +198,13 @@ NSLog( @"%d children for %s", i_return, p_item->p_input->psz_name );
vlc_object_release
(
p_playlist
);
o_value
=
[
o_outline_dict
objectForKey
:[
NSString
stringWithFormat
:
@"%p"
,
p_return
]];
#if 0
NSLog( @"%s", p_return->p_input->psz_name);
#endif
if
(
o_value
==
nil
)
{
o_value
=
[[
NSValue
valueWithPointer
:
p_return
]
retain
];
NSLog
(
@"error missing
value"
);
msg_Err
(
VLCIntf
,
@"missing playlist item's pointer
value"
);
}
return
o_value
;
}
...
...
@@ -219,10 +213,7 @@ NSLog( @"%d children for %s", i_return, p_item->p_input->psz_name );
-
(
BOOL
)
outlineView
:(
NSOutlineView
*
)
outlineView
isItemExpandable
:(
id
)
item
{
int
i_return
=
0
;
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
return
NO
;
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
if
(
item
==
nil
)
{
...
...
@@ -252,16 +243,10 @@ NSLog( @"expandable" );
{
id
o_value
=
nil
;
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
;
playlist_item_t
*
p_item
;
if
(
item
==
nil
||
!
[
item
isKindOfClass
:
[
NSValue
class
]]
)
return
(
@"error"
);
/* Check to see if the playlist is present */
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
return
(
@"error"
);
vlc_object_release
(
p_playlist
);
p_item
=
(
playlist_item_t
*
)[
item
pointerValue
];
if
(
p_item
==
NULL
)
{
...
...
@@ -354,8 +339,7 @@ NSLog( @"expandable" );
-
(
void
)
awakeFromNib
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
vlc_list_t
*
p_list
=
vlc_list_find
(
p_playlist
,
VLC_OBJECT_MODULE
,
FIND_ANYWHERE
);
...
...
@@ -478,10 +462,7 @@ NSLog( @"expandable" );
[[[[
VLCMain
sharedInstance
]
getWizard
]
getPlaylistWizard
]
reloadOutlineView
];
[[[[
VLCMain
sharedInstance
]
getBookmarks
]
getDataTable
]
reloadData
];
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
!
p_playlist
)
return
;
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
if
(
p_playlist
->
i_size
>=
2
)
{
...
...
@@ -504,15 +485,9 @@ NSLog( @"expandable" );
-
(
void
)
playModeUpdated
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
vlc_value_t
val
,
val2
;
if
(
p_playlist
==
NULL
)
{
return
;
}
var_Get
(
p_playlist
,
"loop"
,
&
val2
);
var_Get
(
p_playlist
,
"repeat"
,
&
val
);
if
(
val
.
b_bool
==
VLC_TRUE
)
...
...
@@ -539,14 +514,10 @@ NSLog( @"expandable" );
int
i_row
;
unsigned
int
j
;
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
playlist_item_t
*
p_item
,
*
p_temp_item
;
NSMutableArray
*
o_array
=
[
NSMutableArray
array
];
if
(
p_playlist
==
NULL
)
return
;
p_item
=
p_playlist
->
status
.
p_item
;
if
(
p_item
==
NULL
)
{
...
...
@@ -587,7 +558,7 @@ NSLog( @"expandable" );
[
o_outline_view
selectRow
:
i_row
byExtendingSelection
:
NO
];
[
o_outline_view
scrollRowToVisible
:
i_row
];
vlc_object_release
(
p_playlist
);
vlc_object_release
(
p_playlist
);
/* update our info-panel to reflect the new item */
[[[
VLCMain
sharedInstance
]
getInfo
]
updatePanel
];
...
...
@@ -602,15 +573,9 @@ NSLog( @"expandable" );
checkItemExistence
:(
BOOL
)
b_check
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
playlist_item_t
*
p_temp_item
=
p_item
;
if
(
p_playlist
==
NULL
)
{
return
NO
;
}
if
(
p_node
==
p_item
)
{
vlc_object_release
(
p_playlist
);
...
...
@@ -693,8 +658,7 @@ NSLog( @"expandable" );
-
(
IBAction
)
savePlaylist
:(
id
)
sender
{
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
NSSavePanel
*
o_save_panel
=
[
NSSavePanel
savePanel
];
NSString
*
o_name
=
[
NSString
stringWithFormat
:
@"%@"
,
_NS
(
"Untitled"
)];
...
...
@@ -757,39 +721,35 @@ NSLog( @"expandable" );
-
(
IBAction
)
playItem
:(
id
)
sender
{
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
if
(
p_playlist
!=
NULL
)
{
playlist_item_t
*
p_item
;
playlist_item_t
*
p_node
=
NULL
;
playlist_item_t
*
p_item
;
playlist_item_t
*
p_node
=
NULL
;
p_item
=
[[
o_outline_view
itemAtRow
:[
o_outline_view
selectedRow
]]
pointerValue
];
p_item
=
[[
o_outline_view
itemAtRow
:[
o_outline_view
selectedRow
]]
pointerValue
];
if
(
p_item
)
if
(
p_item
)
{
if
(
p_item
->
i_children
==
-
1
)
{
if
(
p_item
->
i_children
==
-
1
)
{
p_node
=
p_item
->
p_parent
;
p_node
=
p_item
->
p_parent
;
}
else
{
p_node
=
p_item
;
if
(
p_node
->
i_children
>
0
&&
p_node
->
pp_children
[
0
]
->
i_children
==
-
1
)
{
p_item
=
p_node
->
pp_children
[
0
];
}
else
{
p_node
=
p_item
;
if
(
p_node
->
i_children
>
0
&&
p_node
->
pp_children
[
0
]
->
i_children
==
-
1
)
{
p_item
=
p_node
->
pp_children
[
0
];
}
else
{
p_item
=
NULL
;
}
p_item
=
NULL
;
}
playlist_Control
(
p_playlist
,
PLAYLIST_VIEWPLAY
,
p_node
,
p_item
);
}
vlc_object_release
(
p_playlist
);
playlist_Control
(
p_playlist
,
PLAYLIST_VIEWPLAY
,
p_node
,
p_item
);
}
vlc_object_release
(
p_playlist
);
}
/* When called retrieves the selected outlineview row and plays that node or item */
...
...
@@ -798,40 +758,36 @@ NSLog( @"expandable" );
int
i_count
;
NSMutableArray
*
o_to_preparse
;
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
o_to_preparse
=
[
NSMutableArray
arrayWithArray
:[[
o_outline_view
selectedRowEnumerator
]
allObjects
]];
i_count
=
[
o_to_preparse
count
];
if
(
p_playlist
!=
NULL
)
int
i
,
i_row
;
NSNumber
*
o_number
;
playlist_item_t
*
p_item
=
NULL
;
for
(
i
=
0
;
i
<
i_count
;
i
++
)
{
int
i
,
i_row
;
NSNumber
*
o_number
;
playlist_item_t
*
p_item
=
NULL
;
o_number
=
[
o_to_preparse
lastObject
];
i_row
=
[
o_number
intValue
];
p_item
=
[[
o_outline_view
itemAtRow
:
i_row
]
pointerValue
];
[
o_to_preparse
removeObject
:
o_number
];
[
o_outline_view
deselectRow
:
i_row
];
for
(
i
=
0
;
i
<
i_count
;
i
++
)
if
(
p_item
)
{
o_number
=
[
o_to_preparse
lastObject
];
i_row
=
[
o_number
intValue
];
p_item
=
[[
o_outline_view
itemAtRow
:
i_row
]
pointerValue
];
[
o_to_preparse
removeObject
:
o_number
];
[
o_outline_view
deselectRow
:
i_row
];
if
(
p_item
)
if
(
p_item
->
i_children
==
-
1
)
{
if
(
p_item
->
i_children
==
-
1
)
{
playlist_PreparseEnqueue
(
p_playlist
,
p_item
->
p_input
);
}
else
{
msg_Dbg
(
p_intf
,
"preparse of nodes not yet implemented"
);
}
playlist_PreparseEnqueue
(
p_playlist
,
p_item
->
p_input
);
}
else
{
msg_Dbg
(
p_intf
,
"preparse of nodes not yet implemented"
);
}
}
vlc_object_release
(
p_playlist
);
}
vlc_object_release
(
p_playlist
);
[
self
playlistUpdated
];
}
...
...
@@ -839,8 +795,7 @@ NSLog( @"expandable" );
{
NSMenuItem
*
o_mi
=
(
NSMenuItem
*
)
sender
;
NSString
*
o_string
=
[
o_mi
representedObject
];
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
if
(
!
playlist_IsServicesDiscoveryLoaded
(
p_playlist
,
[
o_string
cString
]
)
)
playlist_ServicesDiscoveryAdd
(
p_playlist
,
[
o_string
cString
]
);
else
...
...
@@ -868,13 +823,8 @@ NSLog( @"expandable" );
playlist_t
*
p_playlist
;
intf_thread_t
*
p_intf
=
VLCIntf
;
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
p_playlist
=
pl_Yield
(
p_intf
);
if
(
p_playlist
==
NULL
)
{
return
;
}
o_to_delete
=
[
NSMutableArray
arrayWithArray
:[[
o_outline_view
selectedRowEnumerator
]
allObjects
]];
i_count
=
[
o_to_delete
count
];
...
...
@@ -924,15 +874,9 @@ NSLog( @"expandable" );
-
(
void
)
sortNode
:(
int
)
i_mode
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
playlist_item_t
*
p_item
;
if
(
p_playlist
==
NULL
)
{
return
;
}
if
(
[
o_outline_view
selectedRow
]
>
-
1
)
{
p_item
=
[[
o_outline_view
itemAtRow
:
[
o_outline_view
selectedRow
]]
...
...
@@ -964,13 +908,8 @@ NSLog( @"expandable" );
-
(
input_item_t
*
)
createItem
:(
NSDictionary
*
)
o_one_item
{
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
if
(
p_playlist
==
NULL
)
{
return
NULL
;
}
input_item_t
*
p_input
;
int
i
;
BOOL
b_rem
=
FALSE
,
b_dir
=
FALSE
;
...
...
@@ -1056,12 +995,7 @@ NSLog( @"expandable" );
-
(
void
)
appendArray
:(
NSArray
*
)
o_array
atPos
:(
int
)
i_position
enqueue
:(
BOOL
)
b_enqueue
{
int
i_item
;
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
{
return
;
}
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
for
(
i_item
=
0
;
i_item
<
(
int
)[
o_array
count
];
i_item
++
)
{
...
...
@@ -1100,12 +1034,7 @@ NSLog( @"expandable" );
-
(
void
)
appendNodeArray
:(
NSArray
*
)
o_array
inNode
:(
playlist_item_t
*
)
p_node
atPos
:(
int
)
i_position
enqueue
:(
BOOL
)
b_enqueue
{
int
i_item
;
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
{
return
;
}
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
for
(
i_item
=
0
;
i_item
<
(
int
)[
o_array
count
];
i_item
++
)
{
...
...
@@ -1149,12 +1078,7 @@ NSLog( @"expandable" );
{
intf_thread_t
*
p_intf
=
VLCIntf
;
vlc_value_t
val1
,
val2
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
{
return
;
}
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
switch
(
[
o_loop_popup
indexOfSelectedItem
]
)
{
...
...
@@ -1193,14 +1117,10 @@ NSLog( @"expandable" );
-
(
NSMutableArray
*
)
subSearchItem
:(
playlist_item_t
*
)
p_item
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
playlist_item_t
*
p_selected_item
;
int
i_current
,
i_selected_row
;
if
(
!
p_playlist
)
return
NULL
;
i_selected_row
=
[
o_outline_view
selectedRow
];
if
(
i_selected_row
<
0
)
i_selected_row
=
0
;
...
...
@@ -1264,8 +1184,7 @@ NSLog( @"expandable" );
-
(
IBAction
)
searchItem
:(
id
)
sender
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
id
o_result
;
unsigned
int
i
;
...
...
@@ -1273,9 +1192,6 @@ NSLog( @"expandable" );
b_selected_item_met
=
NO
;
if
(
p_playlist
==
NULL
)
return
;
/*First, only search after the selected item:*
*(b_selected_item_met = NO) */
o_result
=
[
self
subSearchItem
:
p_playlist
->
p_root_category
];
...
...
@@ -1360,12 +1276,7 @@ NSLog( @"expandable" );
int
i_mode
=
0
,
i_type
;
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
(
playlist_t
*
)
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
==
NULL
)
{
return
;
}
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
/* Check whether the selected table column header corresponds to a
sortable table column*/
...
...
@@ -1430,13 +1341,10 @@ NSLog( @"expandable" );
forTableColumn
:(
NSTableColumn
*
)
tableColumn
item
:(
id
)
item
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
id
o_playing_item
;
if
(
!
p_playlist
)
return
;
o_playing_item
=
[
o_outline_dict
objectForKey
:
[
NSString
stringWithFormat
:
@"%p"
,
p_playlist
->
status
.
p_item
]];
...
...
@@ -1468,15 +1376,9 @@ NSLog( @"expandable" );
NSAutoreleasePool
*
ourPool
=
[[
NSAutoreleasePool
alloc
]
init
];
/* simply adds a new node to the end of the playlist */
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
vlc_thread_set_priority
(
p_playlist
,
VLC_THREAD_PRIORITY_LOW
);
if
(
!
p_playlist
)
{
return
;
}
int
ret_v
;
char
*
psz_name
=
NULL
;
playlist_item_t
*
p_item
;
...
...
@@ -1503,10 +1405,10 @@ NSLog( @"expandable" );
-
(
id
)
outlineView
:(
NSOutlineView
*
)
outlineView
child
:(
int
)
index
ofItem
:(
id
)
item
{
id
o_value
=
[
super
outlineView
:
outlineView
child
:
index
ofItem
:
item
];
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
if
(
!
p_playlist
)
return
nil
;
/* FIXME: playlist->i_size doesn't provide the correct number of items anymore
* check the playlist API for the fixed function, once zorglub implemented it -- fpk, 9/17/06 */
if
(
p_playlist
->
i_size
>=
2
)
{
...
...
@@ -1528,7 +1430,7 @@ NSLog( @"expandable" );
[
o_outline_dict
setObject
:
o_value
forKey
:[
NSString
stringWithFormat
:
@"%p"
,
[
o_value
pointerValue
]]];
NSLog
(
@"add
item %p"
,
[
o_value
pointerValue
]
);
msg_Dbg
(
VLCIntf
,
"adding
item %p"
,
[
o_value
pointerValue
]
);
return
o_value
;
}
...
...
@@ -1537,16 +1439,13 @@ NSLog( @"add item %p", [o_value pointerValue] );
-
(
BOOL
)
outlineView
:(
NSOutlineView
*
)
outlineView
writeItems
:(
NSArray
*
)
items
toPasteboard
:(
NSPasteboard
*
)
pboard
{
unsigned
int
i
;
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
/* First remove the items that were moved during the last drag & drop
operation */
[
o_items_array
removeAllObjects
];
[
o_nodes_array
removeAllObjects
];
if
(
!
p_playlist
)
return
NO
;
for
(
i
=
0
;
i
<
[
items
count
]
;
i
++
)
{
id
o_item
=
[
items
objectAtIndex
:
i
];
...
...
@@ -1584,8 +1483,7 @@ NSLog( @"add item %p", [o_value pointerValue] );
-
(
NSDragOperation
)
outlineView
:(
NSOutlineView
*
)
outlineView
validateDrop
:(
id
<
NSDraggingInfo
>
)
info
proposedItem
:(
id
)
item
proposedChildIndex
:(
int
)
index
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
NSPasteboard
*
o_pasteboard
=
[
info
draggingPasteboard
];
if
(
!
p_playlist
)
return
NSDragOperationNone
;
...
...
@@ -1626,28 +1524,25 @@ NSLog( @"add item %p", [o_value pointerValue] );
return
NSDragOperationNone
;
}
}
vlc_object_release
(
p_playlist
);
vlc_object_release
(
p_playlist
);
return
NSDragOperationMove
;
}
/* Drop from the Finder */
else
if
(
[[
o_pasteboard
types
]
containsObject
:
NSFilenamesPboardType
]
)
{
vlc_object_release
(
p_playlist
);
vlc_object_release
(
p_playlist
);
return
NSDragOperationGeneric
;
}
vlc_object_release
(
p_playlist
);
vlc_object_release
(
p_playlist
);
return
NSDragOperationNone
;
}
-
(
BOOL
)
outlineView
:(
NSOutlineView
*
)
outlineView
acceptDrop
:(
id
<
NSDraggingInfo
>
)
info
item
:(
id
)
item
childIndex
:(
int
)
index
{
playlist_t
*
p_playlist
=
vlc_object_find
(
VLCIntf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
VLCIntf
);
NSPasteboard
*
o_pasteboard
=
[
info
draggingPasteboard
];
if
(
!
p_playlist
)
return
NO
;
/* Drag & Drop inside the playlist */
if
(
[[
o_pasteboard
types
]
containsObject
:
@"VLCPlaylistItemPboardType"
]
)
{
...
...
@@ -1733,7 +1628,7 @@ NSLog( @"add item %p", [o_value pointerValue] );
[
o_outline_view
selectRow
:
i_row
byExtendingSelection
:
NO
];
[
o_outline_view
scrollRowToVisible
:
i_row
];
vlc_object_release
(
p_playlist
);
vlc_object_release
(
p_playlist
);
return
YES
;
}
...
...
modules/gui/macosx/playlistinfo.m
View file @
7fef8b87
...
...
@@ -135,15 +135,11 @@
else
{
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
)
{
p_item
=
p_playlist
->
status
.
p_item
;
vlc_object_release
(
p_playlist
);
}
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
p_item
=
p_playlist
->
status
.
p_item
;
vlc_object_release
(
p_playlist
);
[
self
initPanel
:
sender
];
}
}
...
...
@@ -173,14 +169,10 @@
{
/* make sure that we got the current item and not an outdated one */
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
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 */
if
(
!
[
self
isItemInPlaylist
:
p_item
]
)
return
;
...
...
@@ -287,8 +279,7 @@
-
(
IBAction
)
infoOk
:(
id
)
sender
{
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
vlc_value_t
val
;
if
(
[
self
isItemInPlaylist
:
p_item
]
)
...
...
@@ -316,15 +307,9 @@
-
(
BOOL
)
isItemInPlaylist
:(
playlist_item_t
*
)
p_local_item
{
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
int
i
;
if
(
p_playlist
==
NULL
)
{
return
NO
;
}
for
(
i
=
0
;
i
<
p_playlist
->
i_all_size
;
i
++
)
{
if
(
p_playlist
->
pp_all_items
[
i
]
==
p_local_item
)
...
...
@@ -430,7 +415,8 @@ static VLCInfoTreeItem *o_root_item = nil;
}
+
(
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
;
}
...
...
modules/gui/macosx/wizard.m
View file @
7fef8b87
...
...
@@ -1277,63 +1277,58 @@ static VLCWizard *_o_sharedInstance = nil;
{
intf_thread_t
*
p_intf
=
VLCIntf
;
playlist_t
*
p_playlist
=
(
playlist_t
*
)
vlc_object_find
(
p_intf
,
VLC_OBJECT_PLAYLIST
,
FIND_ANYWHERE
);
if
(
p_playlist
)
playlist_t
*
p_playlist
=
pl_Yield
(
p_intf
);
int
x
=
0
;
int
y
=
[[
o_userSelections
objectForKey
:
@"pathToStrm"
]
count
];
while
(
x
!=
y
)
{
int
x
=
0
;
int
y
=
[[
o_userSelections
objectForKey
:
@"pathToStrm"
]
count
];
while
(
x
!=
y
)
/* we need a temp. variable here to work-around a GCC4-bug */
NSString
*
tempString
=
[
NSString
stringWithFormat
:
\
@"%@ (%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 */
NSString
*
tempString
=
[
NSString
stringWithFormat
:
\
@"%@ (%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
:
@""
]
)
{
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
:
@"start-time=%@"
,
[
o_userSelections
\
objectForKey
:
@"partExtractFrom"
]]
UTF8String
]
);
}
vlc_input_item_AddOption
(
p_input
,
[[
NSString
stringWithFormat
:
\
@"ttl=%@"
,
[
o_userSelections
objectForKey
:
@"ttl"
]]
\
UTF8String
]
);
if
(
!
[[
o_userSelections
objectForKey
:
@"partExtractTo"
]
\
isEqualToString
:
@""
]
)
{
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
)
{
/* 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
);
}
playlist_PlaylistAddInput
(
p_playlist
,
p_input
,
PLAYLIST_STOP
,
PLAYLIST_END
);
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
);
}
else
{
msg_Err
(
p_intf
,
"unable to find playlist"
);
x
+=
1
;
}
vlc_object_release
(
p_playlist
);
/* close the window, since we are done */
[
o_wizard_window
close
];
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment