20#ifndef STAGE_DRAW_CAIRO_H
21#define STAGE_DRAW_CAIRO_H
30 using Cairo::SolidPattern;
34 inline RefPtr<SolidPattern>
42 color->get_rgba (_red_ignored, green, blue, alpha);
43 return Cairo::SolidPattern::create_rgba (red, green, blue, alpha);
47 inline RefPtr<SolidPattern>
51 double _green_ignored;
55 color->get_rgba (red, _green_ignored, blue, alpha);
56 return Cairo::SolidPattern::create_rgba (red, green, blue, alpha);
60 inline RefPtr<SolidPattern>
68 color->get_rgba (red, green, _blue_ignored, alpha);
69 return Cairo::SolidPattern::create_rgba (red, green, blue, alpha);
73 inline RefPtr<SolidPattern>
79 double _alpha_ignored;
81 color->get_rgba (red, green, blue, _alpha_ignored);
83 return Cairo::SolidPattern::create_rgba (red, green, blue, alpha);
88 pt_in_rect (Gdk::Point
const& point, Gdk::Rectangle
const& rect)
90 return (point.get_x() >= rect.get_x()
91 and point.get_x() < rect.get_x() + rect.get_width()
92 and point.get_y() >= rect.get_y()
93 and point.get_y() < rect.get_y() + rect.get_height());
101 <
util::min (recA.get_x() + recA.get_width(), recB.get_x() + recB.get_width())
104 <
util::min (recA.get_y() + recA.get_height(), recB.get_y() + recB.get_height())
A set of basic GTK includes for the UI.
RefPtr< SolidPattern > pattern_set_alpha(RefPtr< SolidPattern > const &color, double alpha)
bool pt_in_rect(Gdk::Point const &point, Gdk::Rectangle const &rect)
bool rects_overlap(Gdk::Rectangle const &recA, Gdk::Rectangle const &recB)
RefPtr< SolidPattern > pattern_set_blue(RefPtr< SolidPattern > const &color, double blue)
RefPtr< SolidPattern > pattern_set_red(RefPtr< SolidPattern > const &color, double red)
RefPtr< SolidPattern > pattern_set_green(RefPtr< SolidPattern > const &color, double green)
Lumiera GTK UI implementation root.
Tiny helper functions and shortcuts to be used everywhere Consider this header to be effectively incl...