Give the SkinChooser some love.
This commit is contained in:
parent
fcf2c543ee
commit
6e88190239
2 changed files with 20 additions and 6 deletions
|
@ -47,6 +47,8 @@ SkinList::SkinList (QWidget *parent) : QListWidget (parent)
|
||||||
path.append (QDir::homePath());
|
path.append (QDir::homePath());
|
||||||
path.append ("/.xmms2/clients/promoe/skins/");
|
path.append ("/.xmms2/clients/promoe/skins/");
|
||||||
QDir d;
|
QDir d;
|
||||||
|
|
||||||
|
new SkinChooserItem (QIcon (":CleanAMP/main.bmp"), "CleanAMP (default)", ":CleanAMP/", this);
|
||||||
|
|
||||||
d.setPath (path);
|
d.setPath (path);
|
||||||
d.setFilter (QDir::Dirs);
|
d.setFilter (QDir::Dirs);
|
||||||
|
@ -57,7 +59,7 @@ SkinList::SkinList (QWidget *parent) : QListWidget (parent)
|
||||||
QDir dir (fileInfo.filePath());
|
QDir dir (fileInfo.filePath());
|
||||||
QPixmap p = Skin::getPixmap ("main.bmp", dir);
|
QPixmap p = Skin::getPixmap ("main.bmp", dir);
|
||||||
if (!p.isNull()) {
|
if (!p.isNull()) {
|
||||||
new QListWidgetItem (QIcon (p), dir.dirName(), this);
|
new SkinChooserItem (QIcon (p), dir.dirName(), dir.absolutePath(), this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -68,13 +70,11 @@ void
|
||||||
SkinList::changeSkin (QListWidgetItem *item)
|
SkinList::changeSkin (QListWidgetItem *item)
|
||||||
{
|
{
|
||||||
Skin *skin = Skin::getInstance ();
|
Skin *skin = Skin::getInstance ();
|
||||||
|
SkinChooserItem *it = dynamic_cast<SkinChooserItem*> (item);
|
||||||
|
|
||||||
QSettings settings;
|
QSettings settings;
|
||||||
|
|
||||||
qDebug ("change skin to %s", qPrintable (item->text()));
|
skin->setSkin (it->getPath ());
|
||||||
|
settings.setValue ("skin/path", it->getPath ());
|
||||||
skin->setSkin (QDir::homePath()+"/.xmms2/clients/promoe/skins/"+item->text());
|
|
||||||
|
|
||||||
settings.setValue ("skin/path", QDir::homePath()+"/.xmms2/clients/promoe/skins/"+item->text());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,20 @@ class SkinList : public QListWidget
|
||||||
void changeSkin (QListWidgetItem *item);
|
void changeSkin (QListWidgetItem *item);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class SkinChooserItem : public QListWidgetItem
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
SkinChooserItem (QIcon i, QString n, QString p, QListWidget *parent) :
|
||||||
|
QListWidgetItem (i, n, parent) {
|
||||||
|
m_path = p;
|
||||||
|
}
|
||||||
|
~SkinChooserItem () {}
|
||||||
|
QString getPath (void) { return m_path; }
|
||||||
|
private:
|
||||||
|
QString m_path;
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
class SkinChooser : public QMainWindow
|
class SkinChooser : public QMainWindow
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue