diff options
| author | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-12-11 17:30:09 +0000 |
|---|---|---|
| committer | trialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38> | 2008-12-11 17:30:09 +0000 |
| commit | 4602c4fda29f1455ed6693b6af421ec7c7f68eb8 (patch) | |
| tree | 18fb91e995311c2b38a1c304e13af30cf4103ecb /src/ui/configdialog.cpp | |
| parent | f599c04cb6e5b6394c44aa9e6f0b9b04a3f4afdb (diff) | |
| download | qmmp-4602c4fda29f1455ed6693b6af421ec7c7f68eb8.tar.gz qmmp-4602c4fda29f1455ed6693b6af421ec7c7f68eb8.tar.bz2 qmmp-4602c4fda29f1455ed6693b6af421ec7c7f68eb8.zip | |
skin installation dialog
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@675 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/ui/configdialog.cpp')
| -rw-r--r-- | src/ui/configdialog.cpp | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/ui/configdialog.cpp b/src/ui/configdialog.cpp index 95c23ad96..8b7a82591 100644 --- a/src/ui/configdialog.cpp +++ b/src/ui/configdialog.cpp @@ -69,11 +69,13 @@ ConfigDialog::ConfigDialog ( QWidget *parent ) connect (ui.pluginsTab, SIGNAL(currentChanged(int)), SLOT(updateButtons())); connect (ui.fileDialogComboBox, SIGNAL (currentIndexChanged (int)), SLOT(updateDialogButton(int))); connect (ui.fdInformationButton, SIGNAL (clicked()), SLOT(showFileDialogInfo())); + connect (ui.skinInstallButton, SIGNAL (clicked()), SLOT(installSkin())); + connect (ui.skinReloadButton, SIGNAL (clicked()), SLOT(loadSkins())); + connect (ui.listWidget, SIGNAL (itemClicked (QListWidgetItem *)), this, SLOT (changeSkin())); ui.listWidget->setIconSize (QSize (69,29)); m_skin = Skin::getPointer(); readSettings(); m_reader = new SkinReader(this); - m_reader->generateThumbs(); loadSkins(); loadPluginsInfo(); loadFonts(); @@ -152,7 +154,9 @@ void ConfigDialog::changeSkin() void ConfigDialog::loadSkins() { + m_reader->generateThumbs(); m_skinList.clear(); + ui.listWidget->clear(); QFileInfo fileInfo (":/default"); QPixmap preview = Skin::getPixmap ("main", QDir (fileInfo.filePath())); QListWidgetItem *item = new QListWidgetItem (fileInfo.fileName ()); @@ -170,8 +174,6 @@ void ConfigDialog::loadSkins() ui.listWidget->addItem (item); m_skinList << QFileInfo(path); } - connect (ui.listWidget, SIGNAL (itemClicked (QListWidgetItem *)), - this, SLOT (changeSkin())); } void ConfigDialog::findSkins(const QString &path) @@ -624,3 +626,15 @@ void ConfigDialog::showFileDialogInfo() int index = ui.fileDialogComboBox->currentIndex (); FileDialog::registeredFactories()[index]->showAbout(this); } + +void ConfigDialog::installSkin() +{ + QStringList files = FileDialog::getOpenFileNames(this,tr("Select Skin Files"), QDir::homePath(), + tr("Skin files") + " (*.tar.gz *.tgz *.tar.bz2 *.zip *.wsz)"); + foreach(QString path, files) + { + QFile file(path); + file.copy(QDir::homePath() +"/.qmmp/skins/" + QFileInfo(path).fileName()); + } + loadSkins(); +} |
