summaryrefslogtreecommitdiff
path: root/core/multimedia/opieplayer/playlistwidget.cpp
Side-by-side diff
Diffstat (limited to 'core/multimedia/opieplayer/playlistwidget.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/multimedia/opieplayer/playlistwidget.cpp48
1 files changed, 48 insertions, 0 deletions
diff --git a/core/multimedia/opieplayer/playlistwidget.cpp b/core/multimedia/opieplayer/playlistwidget.cpp
index 6580a88..a937d7c 100644
--- a/core/multimedia/opieplayer/playlistwidget.cpp
+++ b/core/multimedia/opieplayer/playlistwidget.cpp
@@ -193,6 +193,14 @@ PlayListWidget::PlayListWidget( QWidget* parent, const char* name, WFlags fl )
scaleButton = new QAction(tr("Scale"), Resource::loadPixmap("opieplayer/scale"), QString::null, 0, this, 0);
scaleButton->addTo(pmView);
+
+ skinsMenu = new QPopupMenu( this );
+ menu->insertItem( tr( "Skins" ), skinsMenu );
+ skinsMenu->isCheckable();
+ connect( skinsMenu, SIGNAL( activated( int ) ) ,
+ this, SLOT( skinsMenuActivated( int ) ) );
+ populateSkinsMenu();
+
QVBox *vbox5 = new QVBox( this ); vbox5->setBackgroundMode( PaletteButton );
QVBox *vbox4 = new QVBox( vbox5 ); vbox4->setBackgroundMode( PaletteButton );
@@ -1350,3 +1358,43 @@ void PlayListWidget::doUnblank() {
h <<-3;// v[1]; // -3 Force on
}
+void PlayListWidget::populateSkinsMenu() {
+ int item = 0;
+ defaultSkinIndex = 0;
+ QString skinName;
+ Config cfg( "OpiePlayer" );
+ cfg.setGroup("Options" );
+ QString skin = cfg.readEntry( "Skin", "default" );
+
+ QDir skinsDir( QPEApplication::qpeDir() + "/pics/opieplayer2/skins" );
+ skinsDir.setFilter( QDir::Dirs );
+ skinsDir.setSorting(QDir::Name );
+ const QFileInfoList *skinslist = skinsDir.entryInfoList();
+ QFileInfoListIterator it( *skinslist );
+ QFileInfo *fi;
+ while ( ( fi = it.current() ) ) {
+ skinName = fi->fileName();
+// qDebug( fi->fileName() );
+ if( skinName != "." && skinName != ".." && skinName !="CVS" ) {
+ item = skinsMenu->insertItem( fi->fileName() ) ;
+ }
+ if( skinName == "default" ) {
+ defaultSkinIndex = item;
+ }
+ if( skinName == skin ) {
+ skinsMenu->setItemChecked( item, TRUE );
+ }
+ ++it;
+ }
+}
+
+void PlayListWidget::skinsMenuActivated( int item ) {
+ for( int i = defaultSkinIndex; i > defaultSkinIndex - skinsMenu->count(); i-- ) {
+ skinsMenu->setItemChecked( i, FALSE );
+ }
+ skinsMenu->setItemChecked( item, TRUE );
+
+ Config cfg( "OpiePlayer" );
+ cfg.setGroup("Options");
+ cfg.writeEntry("Skin", skinsMenu->text( item ) );
+}