dde-dock/frame/util/dockpopupwindow.h
石博文 70253afad8 delay load plugins
Change-Id: Ida0ee8d2f92103272aa64d3ec9873d7230867d07
2016-08-02 09:28:06 +08:00

48 lines
893 B
C++

#ifndef DOCKPOPUPWINDOW_H
#define DOCKPOPUPWINDOW_H
#include "dbus/dbusxmousearea.h"
#include <darrowrectangle.h>
class DockPopupWindow : public Dtk::Widget::DArrowRectangle
{
Q_OBJECT
public:
explicit DockPopupWindow(QWidget *parent = 0);
~DockPopupWindow();
bool model() const;
void setContent(QWidget *content);
public slots:
void show(const QPoint &pos, const bool model = false);
void hide();
signals:
void accept() const;
protected:
void mousePressEvent(QMouseEvent *e);
bool eventFilter(QObject *o, QEvent *e);
private slots:
void globalMouseRelease(int button, int x, int y, const QString &id);
private:
using Dtk::Widget::DArrowRectangle::show;
private:
bool m_model;
QPoint m_lastPoint;
QString m_mouseAreaKey;
QTimer *m_acceptDelayTimer;
DBusXMouseArea *m_mouseInter;
};
#endif // DOCKPOPUPWINDOW_H