37 if (debug::renderItem ==
this)
44 if (!has_frame_radius())
45 base_type::paint_non_client(aGc);
59 if (!has_frame_radius())
60 aGc.
draw_rect(
rect{
point{ 0.0, 0.0 }, base_type::as_widget().non_client_rect().extents() },
pen{ frame_color(), effective_frame_width() });
62 aGc.
draw_rounded_rect(
rect{
point{ 0.0, 0.0 }, base_type::as_widget().non_client_rect().extents() }, frame_radius(),
pen{ frame_color(), effective_frame_width() },
63 base_type::as_widget().has_background_color() || !base_type::as_widget().background_is_transparent() ?
64 brush{ base_type::as_widget().background_color().with_combined_alpha(base_type::as_widget().has_background_opacity() ? base_type::as_widget().background_opacity() : 1.0) } :
brush{});
68 rect rectBorder{
point{ 0.0, 0.0 }, base_type::as_widget().non_client_rect().extents() };
69 rectBorder.deflate(line_width(), line_width());
70 aGc.
draw_rect(rectBorder,
pen(inner_frame_color(), line_width()));
71 rectBorder.inflate(line_width(), line_width());
72 aGc.
draw_rect(rectBorder,
pen(frame_color(), line_width()));
virtual void draw_rounded_rect(const rect &aRect, const vec4 &aRadius, const pen &aPen, const brush &aFill=brush{}) const =0
virtual void flush() const =0
virtual void draw_rect(const rect &aRect, const pen &aPen, const brush &aFill=brush{}) const =0