+ if (d == LEFT)
+ x_points[d] = b->extent (common,X_AXIS)[RIGHT] ;
+ }
+ else
+ {
+ if (dynamic_cast<Paper_column*> (b))
+ {
+ /*
+ If we're hung on a paper column, that means we're not
+ adjacent to a text-dynamic, and we may move closer. We
+ make the padding a little smaller, here.
+ */
+ Interval e = b->extent (common, X_AXIS);
+ if (e.is_empty ())
+ e = Interval (0,0) + b->relative_coordinate (common, X_AXIS);
+
+ x_points[d] = e.center () - d * padding / 3; // ugh.
+ }
+ else
+ {
+ Interval e = b->extent (common, X_AXIS);
+ if (!e.is_empty ())
+ x_points[d] = e[-d] - d*padding;
+ }