aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/Ui/skinned/listwidget.cpp13
-rw-r--r--src/plugins/Ui/skinned/listwidget.h2
-rw-r--r--src/plugins/Ui/skinned/listwidgetdrawer.cpp6
-rw-r--r--src/plugins/Ui/skinned/listwidgetdrawer.h1
4 files changed, 8 insertions, 14 deletions
diff --git a/src/plugins/Ui/skinned/listwidget.cpp b/src/plugins/Ui/skinned/listwidget.cpp
index d1b4bb462..4a7df0263 100644
--- a/src/plugins/Ui/skinned/listwidget.cpp
+++ b/src/plugins/Ui/skinned/listwidget.cpp
@@ -47,7 +47,6 @@ ListWidget::ListWidget(QWidget *parent)
m_metrics = 0;
m_extra_metrics = 0;
m_drop_index = INVALID_INDEX;
- loadColors();
m_menu = new QMenu(this);
m_scroll_direction = NONE;
m_prev_y = 0;
@@ -147,20 +146,11 @@ PlayListModel *ListWidget::model()
return m_model;
}
-void ListWidget::loadColors()
-{
- m_normal.setNamedColor(m_skin->getPLValue("normal"));
- m_current.setNamedColor(m_skin->getPLValue("current"));
- m_normal_bg.setNamedColor(m_skin->getPLValue("normalbg"));
- m_selected_bg.setNamedColor(m_skin->getPLValue("selectedbg"));
-}
-
void ListWidget::paintEvent(QPaintEvent *)
{
QPainter painter(this);
painter.setFont(m_font);
- painter.setBrush(QBrush(m_normal_bg));
- painter.drawRect(-1,-1,width()+1,height()+1);
+ m_drawer.fillBackground(&painter, width(), height());
#if QT_VERSION >= 0x040700
painter.setLayoutDirection(Qt::LayoutDirectionAuto);
#endif
@@ -475,7 +465,6 @@ void ListWidget::scroll(int sc)
void ListWidget::updateSkin()
{
- loadColors();
m_drawer.loadColors();
update();
}
diff --git a/src/plugins/Ui/skinned/listwidget.h b/src/plugins/Ui/skinned/listwidget.h
index 79967e944..3a7e9ac3c 100644
--- a/src/plugins/Ui/skinned/listwidget.h
+++ b/src/plugins/Ui/skinned/listwidget.h
@@ -102,7 +102,6 @@ private:
{
NONE = 0,TOP,DOWN
};
- void loadColors();
/*!
* Returns string with queue number or(and) repeate flag for the item number \b i.
*/
@@ -117,7 +116,6 @@ private:
QFontMetrics *m_metrics;
QFontMetrics *m_extra_metrics;
Skin *m_skin;
- QColor m_normal, m_current, m_normal_bg, m_selected_bg;
int m_anchor_index;
/*!
* Scroll direction that is preforming in current moment.
diff --git a/src/plugins/Ui/skinned/listwidgetdrawer.cpp b/src/plugins/Ui/skinned/listwidgetdrawer.cpp
index 75f4a0f36..775a9ed75 100644
--- a/src/plugins/Ui/skinned/listwidgetdrawer.cpp
+++ b/src/plugins/Ui/skinned/listwidgetdrawer.cpp
@@ -67,6 +67,12 @@ void ListWidgetDrawer::loadColors()
m_selected_bg.setNamedColor(m_skin->getPLValue("selectedbg"));
}
+void ListWidgetDrawer::fillBackground(QPainter *painter, int width, int height)
+{
+ painter->setBrush(m_normal_bg);
+ painter->drawRect(0,0,width,height);
+}
+
void ListWidgetDrawer::drawBackground(QPainter *painter, ListWidgetRow *row)
{
painter->setBrush((row->flags & ListWidgetRow::SELECTED) ? m_selected_bg : m_normal_bg);
diff --git a/src/plugins/Ui/skinned/listwidgetdrawer.h b/src/plugins/Ui/skinned/listwidgetdrawer.h
index 3604b9fd2..8a1e0460e 100644
--- a/src/plugins/Ui/skinned/listwidgetdrawer.h
+++ b/src/plugins/Ui/skinned/listwidgetdrawer.h
@@ -66,6 +66,7 @@ public:
void readSettings();
void loadColors();
+ void fillBackground(QPainter *painter, int width, int height);
void drawBackground(QPainter *painter, ListWidgetRow *row);
void drawSeparator(QPainter *painter, int m_number_width, ListWidgetRow *row, bool rtl);
void drawTrack(QPainter *painter, int m_number_width, ListWidgetRow *row, bool rtl);