diff options
author | Harshit Maurya <hmaurya999@gmail.com> | 2020-04-15 05:43:25 +0530 |
---|---|---|
committer | Harshit Maurya <hmaurya999@gmail.com> | 2020-04-15 05:43:25 +0530 |
commit | d8930a0295aaa3acb35889a1658d8d229a4fd9ce (patch) | |
tree | 0a93abf25172f1e3b98dcbae4e127df0ad27bb9e /src | |
parent | ea65616330059b0cc1de6f9e9545e6d40cf48ac6 (diff) |
WTrackProperty: declare features in an anonymous namespace
Diffstat (limited to 'src')
-rw-r--r-- | src/skin/legacyskinparser.cpp | 5 | ||||
-rw-r--r-- | src/widget/wtrackproperty.cpp | 39 | ||||
-rw-r--r-- | src/widget/wtrackproperty.h | 13 |
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; }; |