2022-04-08 21:40:41 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "../defines.hpp"
|
|
|
|
#include "../render/Texture.hpp"
|
2023-01-20 20:48:07 +01:00
|
|
|
#include "../helpers/AnimatedVariable.hpp"
|
2022-04-08 21:40:41 +02:00
|
|
|
|
|
|
|
#include <cairo/cairo.h>
|
|
|
|
|
|
|
|
class CHyprError {
|
2022-12-16 18:17:31 +01:00
|
|
|
public:
|
2023-01-20 20:48:07 +01:00
|
|
|
CHyprError();
|
|
|
|
~CHyprError();
|
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
void queueCreate(std::string message, const CColor& color);
|
|
|
|
void draw();
|
|
|
|
void destroy();
|
2022-04-08 21:40:41 +02:00
|
|
|
|
2022-12-16 18:17:31 +01:00
|
|
|
private:
|
2023-01-20 20:48:07 +01:00
|
|
|
void createQueued();
|
|
|
|
std::string m_szQueued = "";
|
|
|
|
CColor m_cQueued;
|
|
|
|
bool m_bQueuedDestroy = false;
|
|
|
|
bool m_bIsCreated = false;
|
|
|
|
CTexture m_tTexture;
|
|
|
|
CAnimatedVariable m_fFadeOpacity;
|
|
|
|
wlr_box m_bDamageBox = {0, 0, 0, 0};
|
2022-04-08 21:40:41 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
inline std::unique_ptr<CHyprError> g_pHyprError; // This is a full-screen error. Treat it with respect, and there can only be one at a time.
|