- if (!breakable_b_)
- return;
-
- if (!column_l ()->breakable_b_)
- return;
-
- copy_breakable_items();
- handle_prebroken_dependencies();
-
- /*
- Otherwise the broken items won't be pre_process()'ed.
- */
- add_dependency (broken_to_drul_[LEFT]);
- add_dependency (broken_to_drul_[RIGHT]);
+ SCM vis = remove_elt_property ("visibility-lambda");
+ if (gh_procedure_p (vis))
+ {
+ SCM args = scm_listify (gh_int2scm (break_status_dir ()), SCM_UNDEFINED);
+ SCM result = gh_apply (vis, args);
+ bool trans = gh_scm2bool (gh_car (result));
+ bool empty = gh_scm2bool (gh_cdr (result));
+
+ if (empty)
+ {
+ set_extent_callback (0, X_AXIS);
+ set_extent_callback (0, Y_AXIS);
+ }
+ if (trans)
+ set_elt_property ("transparent", SCM_BOOL_T);
+ }