2016-06-02 09:46:43 +08:00
|
|
|
#ifndef DOCKITEM_H
|
|
|
|
#define DOCKITEM_H
|
|
|
|
|
|
|
|
#include <QFrame>
|
|
|
|
|
2016-06-15 17:44:38 +08:00
|
|
|
//#include "util/docksettings.h"
|
2016-06-06 11:37:09 +08:00
|
|
|
|
2016-06-15 17:44:38 +08:00
|
|
|
class DBusMenuManager;
|
2016-06-02 09:46:43 +08:00
|
|
|
class DockItem : public QWidget
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
2016-06-06 11:37:09 +08:00
|
|
|
public:
|
2016-06-03 16:06:11 +08:00
|
|
|
enum ItemType {
|
|
|
|
Launcher,
|
|
|
|
App,
|
2016-06-06 11:37:09 +08:00
|
|
|
Placeholder,
|
2016-06-03 16:06:11 +08:00
|
|
|
Plugins,
|
|
|
|
};
|
|
|
|
|
2016-06-02 09:46:43 +08:00
|
|
|
public:
|
2016-06-06 11:37:09 +08:00
|
|
|
explicit DockItem(const ItemType type, QWidget *parent = nullptr);
|
2016-06-15 17:44:38 +08:00
|
|
|
// void setDockSide(const DockSettings::DockSide side);
|
2016-06-06 11:37:09 +08:00
|
|
|
|
|
|
|
ItemType itemType() const;
|
2016-06-03 16:06:11 +08:00
|
|
|
|
|
|
|
protected:
|
|
|
|
void paintEvent(QPaintEvent *e);
|
2016-06-15 16:17:51 +08:00
|
|
|
void mousePressEvent(QMouseEvent *e);
|
|
|
|
|
|
|
|
void showContextMenu();
|
|
|
|
virtual void invokedMenuItem(const QString &itemId, const bool checked);
|
|
|
|
virtual const QString contextMenu() const;
|
2016-06-06 11:37:09 +08:00
|
|
|
|
|
|
|
protected:
|
2016-06-15 17:44:38 +08:00
|
|
|
// DockSettings::DockSide m_side;
|
2016-06-06 11:37:09 +08:00
|
|
|
ItemType m_type;
|
2016-06-15 16:17:51 +08:00
|
|
|
|
|
|
|
DBusMenuManager *m_menuManagerInter;
|
2016-06-02 09:46:43 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // DOCKITEM_H
|