diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2024-05-21 02:06:20 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2024-05-21 02:06:20 -0400 |
commit | 057dd2a1f8de65e4885f48211e324e1b966f4e2f (patch) | |
tree | 3c6d44061589b636ac9624a988baae969a1c6b80 /src/misc | |
parent | a4856a5378507bc5d32c86d638a7175c29bf4301 (diff) | |
download | abaddon-portaudio-057dd2a1f8de65e4885f48211e324e1b966f4e2f.tar.gz abaddon-portaudio-057dd2a1f8de65e4885f48211e324e1b966f4e2f.zip |
add ugly little mention indicator to classic guild listing
Diffstat (limited to 'src/misc')
-rw-r--r-- | src/misc/cairo.cpp | 17 | ||||
-rw-r--r-- | src/misc/cairo.hpp | 5 |
2 files changed, 22 insertions, 0 deletions
diff --git a/src/misc/cairo.cpp b/src/misc/cairo.cpp new file mode 100644 index 0000000..1272f75 --- /dev/null +++ b/src/misc/cairo.cpp @@ -0,0 +1,17 @@ +#include "cairo.hpp" + +#include <cairomm/context.h> + +constexpr static double M_PI_H = M_PI / 2.0; +constexpr static double M_PI_3_2 = M_PI * 3.0 / 2.0; + +void CairoUtil::PathRoundedRect(const Cairo::RefPtr<Cairo::Context> &cr, double x, double y, double w, double h, double r) { + const double degrees = M_PI / 180.0; + + cr->begin_new_sub_path(); + cr->arc(x + w - r, y + r, r, -M_PI_H, 0); + cr->arc(x + w - r, y + h - r, r, 0, M_PI_H); + cr->arc(x + r, y + h - r, r, M_PI_H, M_PI); + cr->arc(x + r, y + r, r, M_PI, M_PI_3_2); + cr->close_path(); +}
\ No newline at end of file diff --git a/src/misc/cairo.hpp b/src/misc/cairo.hpp new file mode 100644 index 0000000..b66fa34 --- /dev/null +++ b/src/misc/cairo.hpp @@ -0,0 +1,5 @@ +#pragma once + +namespace CairoUtil { +void PathRoundedRect(const Cairo::RefPtr<Cairo::Context> &cr, double x, double y, double w, double h, double r); +} // namespace CairoUtil |