aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Ui/skinned/playlistheader.cpp
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-03-09 13:37:45 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2015-03-09 13:37:45 +0000
commit1bc5d8506515c886c2e638e93cff63677e8ca778 (patch)
tree1552195104bf1cbc9f481bf9fe60d26345330d02 /src/plugins/Ui/skinned/playlistheader.cpp
parent8fcd773cbc2d72d0765bfd88971e40f7b47ce247 (diff)
downloadqmmp-1bc5d8506515c886c2e638e93cff63677e8ca778.tar.gz
qmmp-1bc5d8506515c886c2e638e93cff63677e8ca778.tar.bz2
qmmp-1bc5d8506515c886c2e638e93cff63677e8ca778.zip
added feature to add/remove columns
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@4776 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Ui/skinned/playlistheader.cpp')
-rw-r--r--src/plugins/Ui/skinned/playlistheader.cpp39
1 files changed, 36 insertions, 3 deletions
diff --git a/src/plugins/Ui/skinned/playlistheader.cpp b/src/plugins/Ui/skinned/playlistheader.cpp
index 6f4c88711..e4320cc7a 100644
--- a/src/plugins/Ui/skinned/playlistheader.cpp
+++ b/src/plugins/Ui/skinned/playlistheader.cpp
@@ -48,10 +48,10 @@ PlayListHeader::PlayListHeader(QWidget *parent) :
m_manager = QmmpUiSettings::instance()->columnManager();
m_skin = Skin::instance();
m_menu = new QMenu(this);
- m_menu->addAction(QIcon::fromTheme("list-add"), tr("Add column"));
- m_menu->addAction(QIcon::fromTheme("configure"), tr("Edit column"));
+ m_menu->addAction(QIcon::fromTheme("list-add"), tr("Add column"), this, SLOT(addColumn()));
+ m_menu->addAction(QIcon::fromTheme("configure"), tr("Edit column"), this, SLOT(editColumn()));
m_menu->addSeparator();
- m_menu->addAction(QIcon::fromTheme("list-remove"), tr("Remove column"));
+ m_menu->addAction(QIcon::fromTheme("list-remove"), tr("Remove column"), this, SLOT(removeColumn()));
connect(m_skin, SIGNAL(skinChanged()), this, SLOT(updateSkin()));
loadColors();
@@ -126,6 +126,39 @@ void PlayListHeader::updateSkin()
update();
}
+void PlayListHeader::addColumn()
+{
+ int column = findColumn(m_pressed_pos);
+ if(column < 0 && m_pressed_pos.x() > m_rects.last().right())
+ column = m_manager->count();
+ else if(column < 0 && m_pressed_pos.x() < m_rects.first().x())
+ column = 0;
+
+ if(column < 0)
+ return;
+
+ m_manager->insert(column, "Year", "%y");
+
+}
+
+void PlayListHeader::editColumn()
+{
+ int column = findColumn(m_pressed_pos);
+ if(column >= 0)
+ {
+ m_manager->execEditor(0);
+ }
+}
+
+void PlayListHeader::removeColumn()
+{
+ int column = findColumn(m_pressed_pos);
+ if(column >= 0)
+ {
+ m_manager->remove(column);
+ }
+}
+
void PlayListHeader::mousePressEvent(QMouseEvent *e)
{
if(e->button() == Qt::LeftButton)