@end example
-@file{~/usr/src/bin/} is in the variable PATH, and contains symbolic
-links to the compiled executables.
+@file{~/usr/bin/} is in the variable PATH, and contains symbolic links
+to the compiled executables. Unpacked sources, releases and patches are
+in subdirectories under @file{~/usr/src/}.
@subsubsection Is there an emacs mode?
staff/lyricline
@example
- \score @{
+4 \score @{
< \melodic \type Staff = "treble" \trebleMelody
\lyric \type Lyrics = "tlyrics" \trebtext
\type Staff = "bass" \melodic \bassMelody
SCM al = get_property ("graceAlignPosition", 0);
if (isdir_b (al))
{
- align_item_p_->notehead_align_dir_ = to_dir (al);
+ align_item_p_->set_direction (to_dir (al));
}
typeset_element (align_item_p_);
if (!text_p_->parent_l(other_axis))
text_p_->set_parent (i,other_axis);
- Staff_sidify (text_p_).add_support (i);
+ Side_position_interface (text_p_).add_support (i);
/*
How do we make sure that text_p_ has a dependency from
text_p_ = new Text_item;
text_p_->set_elt_property ("breakable", SCM_BOOL_T); // ugh
- Staff_sidify staffside(text_p_);
+ Side_position_interface staffside(text_p_);
staffside.set_axis (axis_);
SCM prop = get_property (type_ + "Direction", 0);
Dot_column::Dot_column ()
{
- notehead_align_dir_ = RIGHT;
+ set_direction (RIGHT);
set_axes(X_AXIS,X_AXIS);
}
#define NOTE_HEAD_SIDE_HH
#include "item.hh"
+#include "directional-element.hh"
/**
be next to noteheads.
UGH. another reduplication of Staff_side
*/
-class Note_head_side: public virtual Item
+class Note_head_side: public virtual Item, public virtual Directional_element
{
- Link_array<Item> support_l_arr_;
public:
- // naming to avoid conflict with Align_element
- Direction notehead_align_dir_;
Note_head_side ();
bool supported_b () const;
void add_support (Item*);
VIRTUAL_COPY_CONS (Score_element);
-protected:
- virtual void do_substitute_element_pointer (Score_element*,Score_element*);
- virtual void do_pre_processing();
};
#include "staff-symbol-referencer.hh"
#include "directional-element.hh"
-struct Staff_sidify
+struct Side_position_interface
{
Score_element * elt_l_;
public:
- Staff_sidify (Score_element*);
- static Real position_self (Dimension_cache const *);
-
+ Side_position_interface (Score_element*);
+ static Real side_position (Dimension_cache const *);
+ static Real self_alignment (Dimension_cache const *);
+ static Real aligned_side (Dimension_cache const *);
+
void set_axis (Axis);
Axis get_axis () const;
- bool is_staff_side_b ();
+ bool supported_b () const;
+ bool is_staff_side_b () const;
void add_support (Score_element*);
- Real aligned_position (Dimension_cache const*);
-
Direction get_direction () const;
void set_direction (Direction);
if (!thing)
return;
- if (Staff_sidify (thing).is_staff_side_b ())
+ if (Side_position_interface (thing).is_staff_side_b ())
{
- if (!thing->breakable_b () && Staff_sidify (thing).get_axis () == Y_AXIS)
+ if (!thing->breakable_b () && Side_position_interface (thing).get_axis () == Y_AXIS)
{
script_l_arr_.push (thing);
}
for (int i=0; i < staff_sided_item_l_arr_.size (); i++)
{
- Staff_sidify st (staff_sided_item_l_arr_[i]);
+ Side_position_interface st (staff_sided_item_l_arr_[i]);
arrs[st.get_direction ()].push (staff_sided_item_l_arr_[i]);
}
Item * last = 0;
for (int i=0; i < arr.size (); i++)
{
- Staff_sidify s (arr[i]);
+ Side_position_interface s (arr[i]);
if (last)
{
s.add_support (last);
{
for (int i=0; i < texts_.size (); i++)
{
- Staff_sidify st (texts_[i]);
+ Side_position_interface st (texts_[i]);
st.add_support (n);
if (st.get_axis( ) == X_AXIS
&& !texts_[i]->parent_l (Y_AXIS))
{
for (int i=0; i < texts_.size (); i++)
{
- Staff_sidify st(texts_[i]);
+ Side_position_interface st(texts_[i]);
st.add_support (n);
}
}
Text_script_req * r = reqs_[i];
Text_item *text = new Text_item;
- Staff_sidify stafy (text);
+ Side_position_interface stafy (text);
SCM axisprop = get_property ("scriptHorizontal",0);
if (gh_boolean_p (axisprop) && gh_scm2bool (axisprop))