- Finger_tuple ft = up[i];
- Grob *f = ft.script_;
- f->set_parent (ft.head_, X_AXIS);
- f->set_property ("script-priority",
- scm_from_int (finger_prio + ft.position_));
-
- f->set_property ("self-X-offset", Self_alignment_interface::x_aligned_on_self_proc);
- f->set_property ("Y-offset", Side_position_interface::y_aligned_side_proc);
- f->set_property ("X-offset", Self_alignment_interface::centered_on_x_parent_proc);
-
- f->set_property ("direction", scm_from_int (UP));
- }
-
- for (int i = 0; i < down.size (); i++)
- {
- Finger_tuple ft = down[i];
- Grob *f = ft.script_;
- f->set_parent (ft.head_, X_AXIS);
- f->set_property ("script-priority",
- scm_from_int (finger_prio + down.size () - ft.position_));
-
- f->set_property ("self-X-offset", Self_alignment_interface::x_aligned_on_self_proc);
- f->set_property ("X-offset", Self_alignment_interface::centered_on_x_parent_proc);
- f->set_property ("Y-offset", Side_position_interface::y_aligned_side_proc);
-
- f->set_property ("direction", scm_from_int (DOWN));
+ for (vsize i = 0; i < vertical[d].size (); i++)
+ {
+ Finger_tuple ft = vertical[d][i];
+ Grob *f = ft.script_;
+ int finger_prio = robust_scm2int (f->get_property ("script-priority"), 200);
+ f->set_parent (ft.head_, X_AXIS);
+ f->set_property ("script-priority",
+ scm_from_int (finger_prio + d * ft.position_));
+
+ Self_alignment_interface::set_align_self (f, X_AXIS);
+ Self_alignment_interface::set_center_parent (f, X_AXIS);
+ Side_position_interface::set_axis (f, Y_AXIS);
+
+ f->set_property ("direction", scm_from_int (d));
+ }