mirror of
https://github.com/hyprwm/Hyprland
synced 2026-05-19 20:58:08 +02:00
30 lines
797 B
C++
30 lines
797 B
C++
#pragma once
|
|
#include "PassElement.hpp"
|
|
#include "../../config/ConfigDataValues.hpp"
|
|
|
|
class CGradientValueData;
|
|
|
|
class CBorderPassElement : public IPassElement {
|
|
public:
|
|
struct SBorderData {
|
|
CBox box;
|
|
CGradientValueData grad1, grad2;
|
|
bool hasGrad2 = false;
|
|
float lerp = 0.F, a = 1.F;
|
|
int round = 0, borderSize = 1, outerRound = -1;
|
|
};
|
|
|
|
CBorderPassElement(const SBorderData& data_);
|
|
virtual ~CBorderPassElement() = default;
|
|
|
|
virtual void draw(const CRegion& damage);
|
|
virtual bool needsLiveBlur();
|
|
virtual bool needsPrecomputeBlur();
|
|
|
|
virtual const char* passName() {
|
|
return "CBorderPassElement";
|
|
}
|
|
|
|
private:
|
|
SBorderData data;
|
|
};
|