mirror-chatterino2/src/widgets/basewidget.hpp

50 lines
905 B
C++
Raw Normal View History

#pragma once
#include <QWidget>
namespace chatterino {
class ColorScheme;
namespace widgets {
class BaseWidget : public QWidget
{
Q_OBJECT
public:
explicit BaseWidget(ColorScheme &_colorScheme, QWidget *parent);
explicit BaseWidget(BaseWidget *parent);
2017-12-17 16:45:15 +01:00
explicit BaseWidget(QWidget *parent = nullptr);
ColorScheme &colorScheme;
2017-09-22 00:50:43 +02:00
float getDpiMultiplier();
protected:
#ifdef USEWINSDK
virtual bool nativeEvent(const QByteArray &eventType, void *message, long *result) override;
#endif
virtual void changeEvent(QEvent *) override;
virtual void leaveEvent(QEvent *) override;
virtual void dpiMultiplierChanged(float /*oldDpi*/, float /*newDpi*/)
{
}
void initAsWindow();
2017-09-22 00:50:43 +02:00
private:
bool isWindow = false;
2017-09-22 00:50:43 +02:00
float dpiMultiplier = 1.f;
void init();
virtual void refreshTheme();
};
} // namespace widgets
} // namespace chatterino