dde-dock/frame/item/appitem.h
石博文 3d2a1e76c3 add plugins
Change-Id: Ib35a19191b8169993ca5e04cc9d5654b8519a56e
2016-08-02 09:28:06 +08:00

49 lines
997 B
C++

#ifndef APPITEM_H
#define APPITEM_H
#include "dockitem.h"
#include "dbus/dbusdockentry.h"
#include "dbus/dbusclientmanager.h"
class AppItem : public DockItem
{
Q_OBJECT
public:
explicit AppItem(const QDBusObjectPath &entry, QWidget *parent = nullptr);
const QString appId() const;
private:
void paintEvent(QPaintEvent *e);
void mouseReleaseEvent(QMouseEvent *e);
void mousePressEvent(QMouseEvent *e);
void mouseMoveEvent(QMouseEvent *e);
void resizeEvent(QResizeEvent *e);
void invokedMenuItem(const QString &itemId, const bool checked);
const QString contextMenu() const;
void startDrag();
void initClientManager();
private slots:
void updateTitle();
void updateIcon();
private:
DBusDockEntry *m_itemEntry;
bool m_draging;
WindowDict m_titles;
QString m_id;
QPixmap m_icon;
static QPoint MousePressPos;
static DBusClientManager *ClientInter;
// static uint ActiveWindowId;
};
#endif // APPITEM_H