From e677ad6f832ce45e71ec4c83378c6958a96fb309 Mon Sep 17 00:00:00 2001 From: Thomas Frauendorfer Date: Sat, 26 Jan 2008 05:13:42 +0100 Subject: [PATCH] Enable Drag and Drop in playlist --- TODO | 1 + config.pri | 2 ++ {Debian => data/Debian}/README | 0 {Debian => data/Debian}/balance.bmp | Bin {Debian => data/Debian}/cbuttons.bmp | Bin {Debian => data/Debian}/eq_ex.bmp | Bin {Debian => data/Debian}/eqmain.bmp | Bin {Debian => data/Debian}/kjell-fatal.png | Bin {Debian => data/Debian}/kjell-fatal2.png | Bin {Debian => data/Debian}/kjell-fatal3.png | Bin {Debian => data/Debian}/main.bmp | Bin {Debian => data/Debian}/monoster.bmp | Bin {Debian => data/Debian}/nums_ex.bmp | Bin {Debian => data/Debian}/playpaus.bmp | Bin {Debian => data/Debian}/pledit.bmp | Bin {Debian => data/Debian}/pledit.txt | 0 {Debian => data/Debian}/posbar.bmp | Bin {Debian => data/Debian}/shufrep.bmp | Bin {Debian => data/Debian}/text.bmp | Bin {Debian => data/Debian}/titlebar.bmp | Bin {Debian => data/Debian}/viscolor.txt | 0 {Debian => data/Debian}/volume.bmp | Bin lib/playlistmodel.cpp | 8 ++++++-- src/MainDisplay.cpp | 3 +++ src/playlist/playlistview.cpp | 10 ++++++---- 25 files changed, 18 insertions(+), 6 deletions(-) rename {Debian => data/Debian}/README (100%) rename {Debian => data/Debian}/balance.bmp (100%) rename {Debian => data/Debian}/cbuttons.bmp (100%) rename {Debian => data/Debian}/eq_ex.bmp (100%) rename {Debian => data/Debian}/eqmain.bmp (100%) rename {Debian => data/Debian}/kjell-fatal.png (100%) rename {Debian => data/Debian}/kjell-fatal2.png (100%) rename {Debian => data/Debian}/kjell-fatal3.png (100%) rename {Debian => data/Debian}/main.bmp (100%) rename {Debian => data/Debian}/monoster.bmp (100%) rename {Debian => data/Debian}/nums_ex.bmp (100%) rename {Debian => data/Debian}/playpaus.bmp (100%) rename {Debian => data/Debian}/pledit.bmp (100%) rename {Debian => data/Debian}/pledit.txt (100%) rename {Debian => data/Debian}/posbar.bmp (100%) rename {Debian => data/Debian}/shufrep.bmp (100%) rename {Debian => data/Debian}/text.bmp (100%) rename {Debian => data/Debian}/titlebar.bmp (100%) rename {Debian => data/Debian}/viscolor.txt (100%) rename {Debian => data/Debian}/volume.bmp (100%) diff --git a/TODO b/TODO index 91e1c5b..ceaa19b 100644 --- a/TODO +++ b/TODO @@ -18,6 +18,7 @@ Todo: * Manage with faulty skins * make cool effects when switching skin? * Medialib browser + + Make it work again * Keep it very simple * browse by album art * Textbox diff --git a/config.pri b/config.pri index 58a736d..8f33e25 100644 --- a/config.pri +++ b/config.pri @@ -1,2 +1,4 @@ +DEFINES += PROMOE_VERSION="\"\\\"0.1-dev\\\"\"" + DEPENDPATH += $PWD/src $PWD/lib INCLUDEPATH += $$PWD/src $$PWD/lib diff --git a/Debian/README b/data/Debian/README similarity index 100% rename from Debian/README rename to data/Debian/README diff --git a/Debian/balance.bmp b/data/Debian/balance.bmp similarity index 100% rename from Debian/balance.bmp rename to data/Debian/balance.bmp diff --git a/Debian/cbuttons.bmp b/data/Debian/cbuttons.bmp similarity index 100% rename from Debian/cbuttons.bmp rename to data/Debian/cbuttons.bmp diff --git a/Debian/eq_ex.bmp b/data/Debian/eq_ex.bmp similarity index 100% rename from Debian/eq_ex.bmp rename to data/Debian/eq_ex.bmp diff --git a/Debian/eqmain.bmp b/data/Debian/eqmain.bmp similarity index 100% rename from Debian/eqmain.bmp rename to data/Debian/eqmain.bmp diff --git a/Debian/kjell-fatal.png b/data/Debian/kjell-fatal.png similarity index 100% rename from Debian/kjell-fatal.png rename to data/Debian/kjell-fatal.png diff --git a/Debian/kjell-fatal2.png b/data/Debian/kjell-fatal2.png similarity index 100% rename from Debian/kjell-fatal2.png rename to data/Debian/kjell-fatal2.png diff --git a/Debian/kjell-fatal3.png b/data/Debian/kjell-fatal3.png similarity index 100% rename from Debian/kjell-fatal3.png rename to data/Debian/kjell-fatal3.png diff --git a/Debian/main.bmp b/data/Debian/main.bmp similarity index 100% rename from Debian/main.bmp rename to data/Debian/main.bmp diff --git a/Debian/monoster.bmp b/data/Debian/monoster.bmp similarity index 100% rename from Debian/monoster.bmp rename to data/Debian/monoster.bmp diff --git a/Debian/nums_ex.bmp b/data/Debian/nums_ex.bmp similarity index 100% rename from Debian/nums_ex.bmp rename to data/Debian/nums_ex.bmp diff --git a/Debian/playpaus.bmp b/data/Debian/playpaus.bmp similarity index 100% rename from Debian/playpaus.bmp rename to data/Debian/playpaus.bmp diff --git a/Debian/pledit.bmp b/data/Debian/pledit.bmp similarity index 100% rename from Debian/pledit.bmp rename to data/Debian/pledit.bmp diff --git a/Debian/pledit.txt b/data/Debian/pledit.txt similarity index 100% rename from Debian/pledit.txt rename to data/Debian/pledit.txt diff --git a/Debian/posbar.bmp b/data/Debian/posbar.bmp similarity index 100% rename from Debian/posbar.bmp rename to data/Debian/posbar.bmp diff --git a/Debian/shufrep.bmp b/data/Debian/shufrep.bmp similarity index 100% rename from Debian/shufrep.bmp rename to data/Debian/shufrep.bmp diff --git a/Debian/text.bmp b/data/Debian/text.bmp similarity index 100% rename from Debian/text.bmp rename to data/Debian/text.bmp diff --git a/Debian/titlebar.bmp b/data/Debian/titlebar.bmp similarity index 100% rename from Debian/titlebar.bmp rename to data/Debian/titlebar.bmp diff --git a/Debian/viscolor.txt b/data/Debian/viscolor.txt similarity index 100% rename from Debian/viscolor.txt rename to data/Debian/viscolor.txt diff --git a/Debian/volume.bmp b/data/Debian/volume.bmp similarity index 100% rename from Debian/volume.bmp rename to data/Debian/volume.bmp diff --git a/lib/playlistmodel.cpp b/lib/playlistmodel.cpp index 57e6121..7e47e35 100644 --- a/lib/playlistmodel.cpp +++ b/lib/playlistmodel.cpp @@ -155,7 +155,7 @@ PlaylistModel::handle_change (const Xmms::Dict &chg) if (chg.contains ("name")) { s = XClient::stdToQ (chg.get ("name")); } - + if (s != m_name) { return true; } @@ -194,7 +194,7 @@ PlaylistModel::handle_change (const Xmms::Dict &chg) m_client->cache ()->invalidate (m_plist[pos]); beginRemoveRows (idx, pos, pos); m_plist.removeAt (pos); - endRemoveRows (); + endRemoveRows (); break; case XMMS_PLAYLIST_CHANGED_SHUFFLE: case XMMS_PLAYLIST_CHANGED_SORT: @@ -494,6 +494,10 @@ PlaylistModel::headerData (int section, Qt::Orientation orientation, int role) c Qt::ItemFlags PlaylistModel::flags (const QModelIndex &idx) const { + // TODO: For now a workaround to enable drag and drop in promoe + if (!idx.isValid()) { + return 0; + } unsigned int id = m_plist[idx.row ()]; PlaylistModel *fake = const_cast (this); QHash d = fake->m_client->cache ()->get_info (id); diff --git a/src/MainDisplay.cpp b/src/MainDisplay.cpp index 9d0ab93..42072e0 100644 --- a/src/MainDisplay.cpp +++ b/src/MainDisplay.cpp @@ -214,16 +214,19 @@ MainDisplay::SetupToggleButtons (void) m_eq->move(219, 58); if (!s.value ("equalizer/hidden").toBool ()) m_pls->toggleOn (); + m_eq->setEnabled(false); // FIXME: Disabled for now, equalizer is not yet usable connect (m_eq, SIGNAL(clicked()), this, SLOT(toggleEQ())); m_shuffle = new ToggleButton (this, Skin::SHUFFLE_ON_0, Skin::SHUFFLE_ON_1, Skin::SHUFFLE_OFF_0, Skin::SHUFFLE_OFF_1); m_shuffle->move(164, 89); + m_shuffle->setEnabled(false); // FIXME: Disabled button for now, not yet implemented m_repeat = new ToggleButton (this, Skin::REPEAT_ON_0, Skin::REPEAT_ON_1, Skin::REPEAT_OFF_0, Skin::REPEAT_OFF_1); m_repeat->move(210, 89); + m_repeat->setEnabled(false); // FIXME: Disabled button for now, not yet implemented } void diff --git a/src/playlist/playlistview.cpp b/src/playlist/playlistview.cpp index d70974b..af475b7 100644 --- a/src/playlist/playlistview.cpp +++ b/src/playlist/playlistview.cpp @@ -80,9 +80,8 @@ PlaylistView::PlaylistView (QWidget *parent) : QListView (parent) setAttribute (Qt::WA_NoBackground); // TODO make drag and drop work - //setDragEnabled(true); - //setAcceptDrops(true); - //setDropIndicatorShown (true); + setDragEnabled(true); + setAcceptDrops(true); // end DragandDrop setFrameStyle(QFrame::NoFrame); setFocusPolicy (Qt::StrongFocus); @@ -147,12 +146,13 @@ PlaylistView::contextMenuEvent (QContextMenuEvent *e) a = new QAction (tr ("Show file info"), this); a->setShortcut (tr ("Ctrl+Enter")); - // connect (a, SIGNAL (triggered ()), this, SLOT (showMlib ())); + a->setEnabled(false); // FIXME: Disabled for now qm.addAction (a); qm.addSeparator (); a = new QAction (tr ("Add file"), this); a->setShortcut (tr ("Ctrl+F")); + a->setEnabled(false); // FIXME: Disabled for now qm.addAction (a); a = new QAction (tr ("Remove selected"), this); @@ -162,6 +162,8 @@ PlaylistView::contextMenuEvent (QContextMenuEvent *e) qm.addSeparator (); a = new QAction (tr ("Medialib browser"), this); + // connect (a, SIGNAL (triggered ()), this, SLOT (showMlib ())); + a->setEnabled(false); //FIXME: Disabled for now qm.addAction (a); e->accept ();