1
0
mirror of https://github.com/KDE/latte-dock.git synced 2025-03-05 12:58:18 +03:00
latte-dock/app/visibilitymanager.h
Michail Vourlakos df08a92d0e support new visibilitymanager in ui
-- small fixes in visibilitymanager and removed
some whitespaces also
2016-12-30 13:46:56 +02:00

67 lines
1.6 KiB
C++

#ifndef VISIBILITYMANAGER_H
#define VISIBILITYMANAGER_H
#include "plasmaquick/containmentview.h"
#include "../liblattedock/dock.h"
#include <QObject>
#include <QTimer>
#include <Plasma/Containment>
namespace Latte {
class VisibilityManagerPrivate;
class VisibilityManager : public QObject {
Q_OBJECT
Q_PROPERTY(Latte::Dock::Visibility mode READ mode WRITE setMode NOTIFY modeChanged)
Q_PROPERTY(bool isHidden READ isHidden WRITE setIsHidden NOTIFY isHiddenChanged)
Q_PROPERTY(bool containsMouse READ containsMouse NOTIFY containsMouseChanged)
Q_PROPERTY(int timerShow READ timerShow WRITE setTimerShow NOTIFY timerShowChanged)
Q_PROPERTY(int timerHide READ timerHide WRITE setTimerHide NOTIFY timerHideChanged)
public:
explicit VisibilityManager(PlasmaQuick::ContainmentView *view);
virtual ~VisibilityManager();
Latte::Dock::Visibility mode() const;
void setMode(Latte::Dock::Visibility mode);
bool isHidden() const;
void setIsHidden(bool isHidden);
bool containsMouse() const;
int timerShow() const;
void setTimerShow(int msec);
int timerHide() const;
void setTimerHide(int msec);
/**
* @brief updateDockGeometry, the window geometry in absolute coordinates.
*/
void updateDockGeometry(const QRect &geometry);
public Q_SLOTS:
void eventReceived(QEvent *);
signals:
void mustBeShown();
void mustBeHide();
void modeChanged();
void isHiddenChanged();
void containsMouseChanged();
void timerShowChanged();
void timerHideChanged();
private:
VisibilityManagerPrivate *const d;
};
}
#endif // VISIBILITYMANAGER_H