38 lines
664 B
C++
38 lines
664 B
C++
|
|
|
|
#pragma once
|
|
#include "lts_base.h"
|
|
#include "lts_widgets_export.h"
|
|
|
|
#include <QDialog>
|
|
#include <QObject>
|
|
|
|
namespace LtsWidgets
|
|
{
|
|
|
|
enum class Behaviour {
|
|
Popup = 0,
|
|
Modal,
|
|
};
|
|
|
|
class LTSWIDGETS_EXPORT LtsFramelessDialog : public QDialog
|
|
{
|
|
Q_OBJECT
|
|
|
|
public:
|
|
explicit LtsFramelessDialog(QWidget* parent = nullptr, const Behaviour& behaviour = Behaviour::Popup);
|
|
virtual ~LtsFramelessDialog();
|
|
|
|
public Q_SLOTS:
|
|
void onUpdateGeometry();
|
|
|
|
private:
|
|
QRect screenRectFromPoint(const QPoint& pos) const;
|
|
void addTouchScroll(QWidget* widget);
|
|
|
|
protected:
|
|
void showEvent(QShowEvent* event) override;
|
|
};
|
|
|
|
} // namespace LtsWidgets
|