Geometry(): x(0), y(0), w(1), h(1) { }
Geometry(int x_, int y_, unsigned w_, unsigned h_): x(x_), y(y_), w(w_), h(h_) { }
bool is_inside(int, int) const;
Geometry(): x(0), y(0), w(1), h(1) { }
Geometry(int x_, int y_, unsigned w_, unsigned h_): x(x_), y(y_), w(w_), h(h_) { }
bool is_inside(int, int) const;
+
+/**
+Performs alignment of nested geometries, such as widgets and their parts.
+*/
+struct Alignment
+{
+ float x, y;
+ float w, h;
+
+ Alignment(): x(0), y(0), w(1), h(1) { }
+ void apply(Geometry &, const Geometry &) const;
+ void apply(Geometry &, const Geometry &, const Sides &) const;
+};
+