Files
qt-creator/src/plugins/coreplugin/progressmanager/progressview.h

51 lines
951 B
C
Raw Normal View History

// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH Qt-GPL-exception-1.0
2008-12-02 14:09:21 +01:00
#pragma once
2008-12-02 12:01:29 +01:00
#include "progressmanager.h"
2008-12-02 12:01:29 +01:00
#include <QWidget>
QT_BEGIN_NAMESPACE
class QVBoxLayout;
QT_END_NAMESPACE
2008-12-02 12:01:29 +01:00
namespace Core {
namespace Internal {
class ProgressView : public QWidget
{
Q_OBJECT
public:
ProgressView(QWidget *parent = nullptr);
~ProgressView() override;
2008-12-02 12:01:29 +01:00
void addProgressWidget(QWidget *widget);
void removeProgressWidget(QWidget *widget);
2008-12-02 12:01:29 +01:00
bool isHovered() const;
void setReferenceWidget(QWidget *widget);
protected:
bool event(QEvent *event) override;
bool eventFilter(QObject *obj, QEvent *event) override;
signals:
void hoveredChanged(bool hovered);
2008-12-02 12:01:29 +01:00
private:
void reposition();
2008-12-02 12:01:29 +01:00
QVBoxLayout *m_layout;
QWidget *m_referenceWidget = nullptr;
bool m_hovered = false;
2008-12-02 12:01:29 +01:00
};
} // namespace Internal
} // namespace Core