From 2f6c83c095724bbba0f43b2f2893ba73c17949a6 Mon Sep 17 00:00:00 2001
From: Zhao Yuhang <2546789017@qq.com>
Date: 周一, 11 12月 2023 21:57:40 +0800
Subject: [PATCH] add quick border

---
 src/core/contexts/abstractwindowcontext.cpp |   36 ++++++++++++------------------------
 1 files changed, 12 insertions(+), 24 deletions(-)

diff --git a/src/core/contexts/abstractwindowcontext.cpp b/src/core/contexts/abstractwindowcontext.cpp
index fa8ee74..49eb0c5 100644
--- a/src/core/contexts/abstractwindowcontext.cpp
+++ b/src/core/contexts/abstractwindowcontext.cpp
@@ -173,50 +173,38 @@
     }
 
     static constexpr struct {
-        const quint32 lilac = MAKE_RGBA_COLOR(210, 233, 189, 226);
+        const quint32 grass = MAKE_RGBA_COLOR(210, 233, 189, 226);
         const quint32 pink = MAKE_RGBA_COLOR(177, 205, 190, 240);
         const quint32 tile = MAKE_RGBA_COLOR(193, 195, 211, 203);
-        const quint32 azure = MAKE_RGBA_COLOR(25, 90, 190, 255);
+        const quint32 azure = MAKE_RGBA_COLOR(240, 240, 250, 255);
     } kSampleColorSet;
 
     void AbstractWindowContext::virtual_hook(int id, void *data) {
         switch (id) {
-            case ShowSystemMenuHook: {
-                const auto &pos = *reinterpret_cast<const QPoint *>(data);
-                // ...
+            case NeedsDrawBordersHook: {
+                auto &result = *static_cast<bool *>(data);
+                result = false;
                 return;
             }
-            case NeedsDrawBordersHook: {
-                auto &result = *reinterpret_cast<bool *>(data);
-                result = false;
-                break;
-            }
             case DrawBordersHook: {
-                auto args = reinterpret_cast<void **>(data);
-                auto &painter = *reinterpret_cast<QPainter *>(args[0]);
-                auto &rect = *reinterpret_cast<const QRect *>(args[1]);
-
-                QPen pen;
-                pen.setWidth(1);
+                auto args = static_cast<void **>(data);
+                auto &painter = *static_cast<QPainter *>(args[0]);
+                const auto &rect = *static_cast<const QRect *>(args[1]);
 
                 // Top
-                pen.setColor(kSampleColorSet.lilac);
-                painter.setPen(pen);
+                painter.setPen(kSampleColorSet.grass);
                 painter.drawLine(rect.topLeft(), rect.topRight());
 
                 // Right
-                pen.setColor(kSampleColorSet.pink);
-                painter.setPen(pen);
+                painter.setPen(kSampleColorSet.pink);
                 painter.drawLine(rect.topRight(), rect.bottomRight());
 
                 // Bottom
-                pen.setColor(kSampleColorSet.tile);
-                painter.setPen(pen);
+                painter.setPen(kSampleColorSet.tile);
                 painter.drawLine(rect.bottomLeft(), rect.bottomRight());
 
                 // Right
-                pen.setColor(kSampleColorSet.azure);
-                painter.setPen(pen);
+                painter.setPen(kSampleColorSet.azure);
                 painter.drawLine(rect.topLeft(), rect.bottomLeft());
                 return;
             }

--
Gitblit v1.9.1