Commit b63140fa authored by Jean-Baptiste Kempf's avatar Jean-Baptiste Kempf

Fix Playlist resizing and positionning.

parent 975984c0
......@@ -134,11 +134,6 @@ void PlaylistWidget::setArt( QString url )
}
}
QSize PlaylistWidget::sizeHint() const
{
return QSize( 600 , 300 );
}
PlaylistWidget::~PlaylistWidget()
{
getSettings()->beginGroup("playlistdialog");
......
......@@ -47,7 +47,6 @@ class PlaylistWidget : public QSplitter
public:
PlaylistWidget( intf_thread_t *_p_i, QWidget *parent ) ;
virtual ~PlaylistWidget();
QSize sizeHint() const;
private:
PLSelector *selector;
PLPanel *rightPanel;
......
......@@ -222,7 +222,6 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
if( settings->value( "playlist-visible", 0 ).toInt() ) togglePlaylist();
settings->endGroup();
/* Final sizing and showing */
setMinimumWidth( __MAX( controls->sizeHint().width(),
menuBar()->sizeHint().width() ) );
......@@ -248,11 +247,14 @@ MainInterface::~MainInterface()
msg_Dbg( p_intf, "Destroying the main interface" );
if( playlistWidget )
playlistWidget->savingSettings();
{
if( !isDocked() )
QVLCTools::saveWidgetPosition( p_intf, "Playlist", playlistWidget );
}
settings->beginGroup( "MainWindow" );
// settings->setValue( "playlist-floats", (int)(dockPL->isFloating()) );
settings->setValue( "pl-dock-status", (int)i_pl_dock );
settings->setValue( "playlist-visible", (int)playlistVisible );
settings->setValue( "adv-controls",
getControlsVisibilityStatus() & CONTROLS_ADVANCED );
......@@ -586,8 +588,6 @@ void MainInterface::toggleFSC()
QApplication::postEvent( fullscreenControls, static_cast<QEvent *>(eShow) );
}
//FIXME remove me at the end...
void MainInterface::debug()
{
#ifndef NDEBUG
......@@ -733,46 +733,36 @@ int MainInterface::controlVideo( void *p_window, int i_query, va_list args )
**/
void MainInterface::togglePlaylist()
{
THEDP->playlistDialog();
#if 0
/* CREATION
If no playlist exist, then create one and attach it to the DockPL*/
if( !playlistWidget )
{
playlistWidget = new PlaylistWidget( p_intf, settings, dockPL );
/* Add it to the parent DockWidget */
dockPL->setWidget( playlistWidget );
playlistWidget = new PlaylistWidget( p_intf, this );
/* Add the dock to the main Interface */
addDockWidget( Qt::BottomDockWidgetArea, dockPL );
i_pl_dock = (pl_dock_e)getSettings()
->value( "pl-dock-status", PL_UNDOCKED ).toInt();
if( i_pl_dock == PL_UNDOCKED )
{
playlistWidget->setWindowFlags( Qt::Window );
/* Make the playlist floating is requested. Default is not. */
settings->beginGroup( "MainWindow" );
if( settings->value( "playlist-floats", 1 ).toInt() )
QVLCTools::restoreWidgetPosition( p_intf, "Playlist",
playlistWidget, QSize( 600, 300 ) );
}
else
{
msg_Dbg( p_intf, "we don't want the playlist inside");
dockPL->setFloating( true );
mainLayout->insertWidget( 4, playlistWidget );
}
settings->endGroup();
settings->beginGroup( "playlist" );
dockPL->move( settings->value( "pos", QPoint( 0,0 ) ).toPoint() );
QSize newSize = settings->value( "size", QSize( 400, 300 ) ).toSize();
if( newSize.isValid() )
dockPL->resize( newSize );
settings->endGroup();
dockPL->show();
playlistVisible = true;
playlistWidget->show();
}
else
{
/* toggle the visibility of the playlist */
TOGGLEV( dockPL );
TOGGLEV( playlistWidget );
resize( sizeHint() );
playlistVisible = !playlistVisible;
}
#endif
}
/* Function called from the menu to undock the playlist */
......@@ -782,6 +772,10 @@ void MainInterface::undockPlaylist()
adjustSize();
}
void MainInterface::dockPlaylist( pl_dock_e i_pos )
{
}
void MainInterface::toggleMinimalView()
{
/* HACK for minimalView, see menus.cpp */
......
......@@ -51,12 +51,19 @@ class QMenu;
class QSize;
//class QDockWidet;
enum{
enum {
CONTROLS_HIDDEN = 0x0,
CONTROLS_VISIBLE = 0x1,
CONTROLS_ADVANCED = 0x2
};
typedef enum pl_dock_e {
PL_UNDOCKED,
PL_BOTTOM,
PL_RIGHT,
PL_LEFT
} pl_dock_e;
class MainInterface : public QVLCMW
{
Q_OBJECT;
......@@ -114,12 +121,10 @@ private:
/* Video */
VideoWidget *videoWidget;
// QSize savedVideoSize;
BackgroundWidget *bgWidget;
VisualSelector *visualSelector;
PlaylistWidget *playlistWidget;
// QDockWidget *dockPL;
bool videoIsActive; ///< Having a video now / THEMIM->hasV
bool videoEmbeddedFlag; ///< Want an external Video Window
......@@ -129,6 +134,8 @@ private:
bool b_remainingTime; /* Show elapsed or remaining time */
bool bgWasVisible;
int i_visualmode; ///< Visual Mode
pl_dock_e i_pl_dock;
bool isDocked() { return ( i_pl_dock != PL_UNDOCKED ); }
input_thread_t *p_input; ///< Main input associated to the playlist
......@@ -143,6 +150,7 @@ private:
public slots:
void undockPlaylist();
void dockPlaylist( pl_dock_e i_pos = PL_BOTTOM );
void toggleMinimalView();
void togglePlaylist();
void toggleUpdateSystrayMenu();
......
......@@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>644</width>
<height>784</height>
<height>799</height>
</rect>
</property>
<property name="windowTitle" >
......@@ -489,6 +489,9 @@
<property name="wordWrap" >
<bool>true</bool>
</property>
<property name="buddy" >
<cstring>UDPOutput</cstring>
</property>
</widget>
</item>
<item row="5" column="1" >
......@@ -542,8 +545,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>624</width>
<height>129</height>
<width>628</width>
<height>135</height>
</rect>
</property>
<attribute name="title" >
......
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