summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorHarshit Maurya <hmaurya999@gmail.com>2020-04-15 05:43:25 +0530
committerHarshit Maurya <hmaurya999@gmail.com>2020-04-15 05:43:25 +0530
commitd8930a0295aaa3acb35889a1658d8d229a4fd9ce (patch)
tree0a93abf25172f1e3b98dcbae4e127df0ad27bb9e /src
parentea65616330059b0cc1de6f9e9545e6d40cf48ac6 (diff)
WTrackProperty: declare features in an anonymous namespace
Diffstat (limited to 'src')
-rw-r--r--src/skin/legacyskinparser.cpp5
-rw-r--r--src/widget/wtrackproperty.cpp39
-rw-r--r--src/widget/wtrackproperty.h13
3 files changed, 33 insertions, 24 deletions
diff --git a/src/skin/legacyskinparser.cpp b/src/skin/legacyskinparser.cpp
index dc88ef4739..9a2e652f2f 100644
--- a/src/skin/legacyskinparser.cpp
+++ b/src/skin/legacyskinparser.cpp
@@ -1039,7 +1039,10 @@ QWidget* LegacySkinParser::parseTrackProperty(const QDomElement& node) {
if (!pPlayer)
return NULL;
- WTrackProperty* p = new WTrackProperty(pSafeChannelStr, m_pConfig, m_pParent, m_pLibrary->trackCollections());
+ WTrackProperty* p = new WTrackProperty(m_pParent,
+ m_pConfig,
+ m_pLibrary->trackCollections(),
+ pSafeChannelStr);
setupLabelWidget(node, p);
connect(pPlayer, SIGNAL(newTrackLoaded(TrackPointer)),
diff --git a/src/widget/wtrackproperty.cpp b/src/widget/wtrackproperty.cpp
index 49d27f23c4..b657b5db19 100644
--- a/src/widget/wtrackproperty.cpp
+++ b/src/widget/wtrackproperty.cpp
@@ -5,25 +5,28 @@
#include "widget/wtrackproperty.h"
#include "util/dnd.h"
-WTrackProperty::WTrackProperty(const char* group,
- UserSettingsPointer pConfig,
- QWidget* pParent,
- TrackCollectionManager* pTrackCollectionManager)
+namespace {
+const WTrackMenu::Features trackMenuFeatures =
+ WTrackMenu::Feature::Playlist |
+ WTrackMenu::Feature::Crate |
+ WTrackMenu::Feature::Metadata |
+ WTrackMenu::Feature::Reset |
+ WTrackMenu::Feature::BPM |
+ WTrackMenu::Feature::Color |
+ WTrackMenu::Feature::FileBrowser |
+ WTrackMenu::Feature::Properties;
+}
+
+WTrackProperty::WTrackProperty(QWidget* pParent,
+ UserSettingsPointer pConfig,
+ TrackCollectionManager* pTrackCollectionManager,
+ const char* group)
: WLabel(pParent),
m_pGroup(group),
- m_pConfig(pConfig) {
+ m_pConfig(pConfig),
+ m_pTrackMenu(make_parented<WTrackMenu>(
+ this, pConfig, pTrackCollectionManager, trackMenuFeatures)) {
setAcceptDrops(true);
-
- // Setup context menu
- WTrackMenu::Features flags = WTrackMenu::Feature::Playlist |
- WTrackMenu::Feature::Crate |
- WTrackMenu::Feature::Metadata |
- WTrackMenu::Feature::Reset |
- WTrackMenu::Feature::BPM |
- WTrackMenu::Feature::Color |
- WTrackMenu::Feature::FileBrowser |
- WTrackMenu::Feature::Properties;
- m_pMenu = new WTrackMenu(this, pConfig, pTrackCollectionManager, flags);
}
void WTrackProperty::setup(const QDomNode& node, const SkinContext& context) {
@@ -85,8 +88,8 @@ void WTrackProperty::dropEvent(QDropEvent *event) {
void WTrackProperty::contextMenuEvent(QContextMenuEvent *event) {
if (m_pCurrentTrack) {
- m_pMenu->loadTrack(m_pCurrentTrack->getId());
+ m_pTrackMenu->loadTrack(m_pCurrentTrack->getId());
// Create the right-click menu
- m_pMenu->popup(event->globalPos());
+ m_pTrackMenu->popup(event->globalPos());
}
}
diff --git a/src/widget/wtrackproperty.h b/src/widget/wtrackproperty.h
index ebb650e58b..0af0a90673 100644
--- a/src/widget/wtrackproperty.h
+++ b/src/widget/wtrackproperty.h
@@ -8,6 +8,7 @@
#include "preferences/usersettings.h"
#include "skin/skincontext.h"
#include "track/track.h"
+#include "util/parented_ptr.h"
#include "widget/trackdroptarget.h"
#include "widget/wlabel.h"
#include "widget/wtrackmenu.h"
@@ -15,11 +16,13 @@
class WTrackProperty : public WLabel, public TrackDropTarget {
Q_OBJECT
public:
- WTrackProperty(const char* group,
- UserSettingsPointer pConfig,
+ WTrackProperty(
QWidget* pParent,
- TrackCollectionManager* pTrackCollectionManager);
- ~WTrackProperty() override{};
+ UserSettingsPointer pConfig,
+ TrackCollectionManager* pTrackCollectionManager,
+ const char* group);
+
+ ~WTrackProperty() override = default;
void setup(const QDomNode& node, const SkinContext& context) override;
void contextMenuEvent(QContextMenuEvent * event) override;
@@ -47,7 +50,7 @@ signals:
TrackPointer m_pCurrentTrack;
QString m_property;
- WTrackMenu *m_pMenu;
+ const parented_ptr<WTrackMenu> m_pTrackMenu;
};