Miam-Player  0.8.0
A nice music player
itemviewplugin.h
Go to the documentation of this file.
1 #ifndef ITEMVIEWPLUGIN_H
2 #define ITEMVIEWPLUGIN_H
3 
4 #include "basicplugin.h"
6 
7 #include <QItemSelectionModel>
8 #include <QMenu>
9 
16 {
17  Q_OBJECT
18 public:
19  explicit ItemViewPlugin(QObject *parent = nullptr) : BasicPlugin(parent) {}
20 
21  virtual ~ItemViewPlugin() {}
22 
23  virtual QStringList classesToExtend() = 0;
24 
25  virtual bool hasSubMenu(const QString & /*view*/) const { return false; }
26 
27  virtual QMenu * menu(const QString & /*view*/, QMenu * /*parent*/) { return nullptr; }
28 
29  virtual QAction * action(const QString & /*view*/, QMenu * /*parent*/) { return nullptr; }
30 
31  virtual void setSelectedTracksModel(const QString &view, SelectedTracksModel *) = 0;
32 };
33 QT_BEGIN_NAMESPACE
34 
35 #define ItemViewPlugin_iid "MiamPlayer.ItemViewPlugin"
36 
37 Q_DECLARE_INTERFACE(ItemViewPlugin, ItemViewPlugin_iid)
38 
39 QT_END_NAMESPACE
40 
41 #endif // ITEMVIEWPLUGIN_H
The ItemViewPlugin class.
Definition: itemviewplugin.h:15
virtual QStringList classesToExtend()
Definition: basicplugin.h:32
The SelectedTracksModel class.
Definition: selectedtracksmodel.h:14
virtual QAction * action(const QString &, QMenu *)
Definition: itemviewplugin.h:29
ItemViewPlugin(QObject *parent=nullptr)
Definition: itemviewplugin.h:19
virtual QMenu * menu(const QString &, QMenu *)
Definition: itemviewplugin.h:27
virtual ~ItemViewPlugin()
Definition: itemviewplugin.h:21
The BasicPlugin class is the base class for creating a plugin.
Definition: basicplugin.h:18
#define ItemViewPlugin_iid
Definition: itemviewplugin.h:35
#define MIAMCORE_LIBRARY
Definition: miamcore_global.h:10
virtual bool hasSubMenu(const QString &) const
Definition: itemviewplugin.h:25