+
+void PlaylistDialog::createPlMenuBar( QMenuBar *bar, intf_thread_t *p_intf )
+{
+ QMenu *manageMenu = new QMenu();
+ manageMenu->setTitle( qtr("Manage") );
+ manageMenu->addAction( qtr("Open playlist file"), THEDP, SLOT( openPlaylist() ),
+ qtr( "Ctrl+L") );
+ manageMenu->addSeparator();
+ manageMenu->addAction( qtr("Dock playlist"), this, SLOT( dock() ),
+ qtr( "Ctrl+U" ) );
+ bar->addMenu( manageMenu );
+ bar->addMenu( QVLCMenu::SDMenu( p_intf ) );
+}
+
+void PlaylistDialog::dock()
+{
+ hide();
+ QEvent *event = new QEvent( (QEvent::Type)(PLDockEvent_Type) );
+ QApplication::postEvent( p_intf->p_sys->p_mi, event );
+}
+
+
+void PlaylistDialog::dropEvent(QDropEvent *event)
+{
+ const QMimeData *mimeData = event->mimeData();
+ foreach( QUrl url, mimeData->urls() ) {
+ QString s = url.toString();
+ if( s.length() > 0 ) {
+ playlist_Add( THEPL, qtu(s), NULL,
+ PLAYLIST_APPEND, PLAYLIST_END, VLC_TRUE, VLC_FALSE );
+ }
+ }
+ event->acceptProposedAction();
+}
+void PlaylistDialog::dragEnterEvent(QDragEnterEvent *event)
+{
+ event->acceptProposedAction();
+}
+void PlaylistDialog::dragMoveEvent(QDragMoveEvent *event)
+{
+ event->acceptProposedAction();
+}
+void PlaylistDialog::dragLeaveEvent(QDragLeaveEvent *event)
+{
+ event->accept();
+}
+
+