summaryrefslogtreecommitdiff
path: root/example/examplePlugin/customDecoration.cpp
diff options
context:
space:
mode:
authorvaxerski <vaxry@vaxry.net>2024-01-02 14:25:18 +0100
committervaxerski <vaxry@vaxry.net>2024-01-02 14:25:18 +0100
commitbd3ea8dcb5f7803b0cc05e25f84200102c0fad21 (patch)
tree3d3c09391b441f5787b9ba185ced69933e6bb52e /example/examplePlugin/customDecoration.cpp
parent813af393f1b61ecd0105e126681986e58e73ffee (diff)
examples: remove example plugin
closes #4329
Diffstat (limited to 'example/examplePlugin/customDecoration.cpp')
-rw-r--r--example/examplePlugin/customDecoration.cpp74
1 files changed, 0 insertions, 74 deletions
diff --git a/example/examplePlugin/customDecoration.cpp b/example/examplePlugin/customDecoration.cpp
deleted file mode 100644
index e2b5d136..00000000
--- a/example/examplePlugin/customDecoration.cpp
+++ /dev/null
@@ -1,74 +0,0 @@
-#include "customDecoration.hpp"
-#include <hyprland/src/Window.hpp>
-#include <hyprland/src/Compositor.hpp>
-#include "globals.hpp"
-
-CCustomDecoration::CCustomDecoration(CWindow* pWindow) {
- m_pWindow = pWindow;
- m_vLastWindowPos = pWindow->m_vRealPosition.vec();
- m_vLastWindowSize = pWindow->m_vRealSize.vec();
-}
-
-CCustomDecoration::~CCustomDecoration() {
- damageEntire();
-}
-
-SWindowDecorationExtents CCustomDecoration::getWindowDecorationExtents() {
- return m_seExtents;
-}
-
-void CCustomDecoration::draw(CMonitor* pMonitor, float a, const Vector2D& offset) {
- if (!g_pCompositor->windowValidMapped(m_pWindow))
- return;
-
- if (!m_pWindow->m_sSpecialRenderData.decorate)
- return;
-
- static auto* const PCOLOR = &HyprlandAPI::getConfigValue(PHANDLE, "plugin:example:border_color")->intValue;
- static auto* const PROUNDING = &HyprlandAPI::getConfigValue(PHANDLE, "decoration:rounding")->intValue;
- static auto* const PBORDERSIZE = &HyprlandAPI::getConfigValue(PHANDLE, "general:border_size")->intValue;
-
- const auto ROUNDING = !m_pWindow->m_sSpecialRenderData.rounding ?
- 0 :
- (m_pWindow->m_sAdditionalConfigData.rounding.toUnderlying() == -1 ? *PROUNDING : m_pWindow->m_sAdditionalConfigData.rounding.toUnderlying());
-
- // draw the border
- CBox fullBox = {(int)(m_vLastWindowPos.x - *PBORDERSIZE), (int)(m_vLastWindowPos.y - *PBORDERSIZE), (int)(m_vLastWindowSize.x + 2.0 * *PBORDERSIZE),
- (int)(m_vLastWindowSize.y + 2.0 * *PBORDERSIZE)};
-
- fullBox.x -= pMonitor->vecPosition.x;
- fullBox.y -= pMonitor->vecPosition.y;
-
- m_seExtents = {{m_vLastWindowPos.x - fullBox.x - pMonitor->vecPosition.x + 2, m_vLastWindowPos.y - fullBox.y - pMonitor->vecPosition.y + 2},
- {fullBox.x + fullBox.width + pMonitor->vecPosition.x - m_vLastWindowPos.x - m_vLastWindowSize.x + 2,
- fullBox.y + fullBox.height + pMonitor->vecPosition.y - m_vLastWindowPos.y - m_vLastWindowSize.y + 2}};
-
- fullBox.x += offset.x;
- fullBox.y += offset.y;
-
- if (fullBox.width < 1 || fullBox.height < 1)
- return; // don't draw invisible shadows
-
- g_pHyprOpenGL->scissor((CBox*)nullptr);
-
- fullBox.scale(pMonitor->scale);
- g_pHyprOpenGL->renderBorder(&fullBox, CColor(*PCOLOR), *PROUNDING * pMonitor->scale + *PBORDERSIZE * 2, a);
-}
-
-eDecorationType CCustomDecoration::getDecorationType() {
- return DECORATION_CUSTOM;
-}
-
-void CCustomDecoration::updateWindow(CWindow* pWindow) {
-
- m_vLastWindowPos = pWindow->m_vRealPosition.vec();
- m_vLastWindowSize = pWindow->m_vRealSize.vec();
-
- damageEntire();
-}
-
-void CCustomDecoration::damageEntire() {
- CBox dm = {(int)(m_vLastWindowPos.x - m_seExtents.topLeft.x), (int)(m_vLastWindowPos.y - m_seExtents.topLeft.y),
- (int)(m_vLastWindowSize.x + m_seExtents.topLeft.x + m_seExtents.bottomRight.x), (int)m_seExtents.topLeft.y};
- g_pHyprRenderer->damageBox(&dm);
-} \ No newline at end of file