]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-1.3.94
authorfred <fred>
Tue, 26 Mar 2002 23:56:54 +0000 (23:56 +0000)
committerfred <fred>
Tue, 26 Mar 2002 23:56:54 +0000 (23:56 +0000)
37 files changed:
lily/align-interface.cc
lily/include/align-interface.hh
lily/include/bar.hh
lily/include/beam.hh
lily/include/break-align-item.hh
lily/include/breathing-sign.hh
lily/include/chord-name.hh
lily/include/clef.hh
lily/include/collision.hh
lily/include/crescendo.hh
lily/include/dot-column.hh
lily/include/dots.hh
lily/include/grace-align-item.hh
lily/include/hyphen-spanner.hh
lily/include/key-item.hh
lily/include/lily-guile.hh
lily/include/local-key-item.hh
lily/include/lyric-extender.hh
lily/include/multi-measure-rest.hh
lily/include/note-head.hh
lily/include/rest-collision.hh
lily/include/rest.hh
lily/include/rhythmic-head.hh
lily/include/script-column.hh
lily/include/script.hh
lily/include/separating-group-spanner.hh
lily/include/side-position-interface.hh
lily/include/spacing-spanner.hh
lily/include/staff-symbol-referencer.hh
lily/include/staff-symbol.hh
lily/include/system-start-delimiter.hh
lily/include/tie-column.hh
lily/include/tie.hh
lily/include/time-signature.hh
lily/include/tuplet-spanner.hh
lily/include/volta-spanner.hh
lily/syllable-group.cc

index 8e07f9870ec24725847d7074de1c14d7afb927e6..8bc3f13f251e42d9d008f01f6dabea9843db9cda 100644 (file)
@@ -8,7 +8,6 @@
  */
 
 #include "align-interface.hh"
-
 #include "score-element.hh"
 #include "group-interface.hh"
 #include "axis-group-interface.hh"
   This callback is set in the children of the align element. It does
   not compute anything, but a side effect of a->do_side_processing ()
   is that the elements are placed correctly.  */
-Real
-Align_interface::alignment_callback (Score_element *sc, Axis ax)
+MAKE_SCHEME_CALLBACK(Align_interface,alignment_callback,2);
+SCM
+Align_interface::alignment_callback (SCM element_smob, SCM axis)
 {
-  Score_element * par = sc->parent_l (ax);
+  Score_element * sun = unsmob_element (element_smob);
+  Axis ax = (Axis )gh_scm2int (axis);
+  Score_element * par = sun->parent_l (ax);
   if (par && !to_boolean (par->get_elt_property ("alignment-done")))
     {
       Align_interface::do_side_processing (par, ax);
     }
-  return 0.0;
+  return gh_double2scm (0.0);
 }
 
 
@@ -138,7 +140,7 @@ Align_interface::get_count (Score_element*me,Score_element*s)
 void
 Align_interface::add_element (Score_element*me,Score_element* s)
 {
-  s->add_offset_callback (alignment_callback, Align_interface::axis (me));
+  s->add_offset_callback (Align_interface::alignment_callback_proc, Align_interface::axis (me));
   Axis_group_interface::add_element (me, s);
 }
 
index 3eb8b9e972066614ad08d986b8c94c6d8a508875..924ca2dec33b65fd6e7d150753e8bf69c0b5d417 100644 (file)
@@ -12,6 +12,8 @@
 
 #include "axes.hh"
 #include "lily-proto.hh"
+#include "lily-guile.hh"
+
 
 /*
   Order elements top to bottom/left to right/right to left etc.
@@ -51,7 +53,7 @@
   
 */
 struct Align_interface {
-  static Real alignment_callback (Score_element *,Axis);
+  DECLARE_SCHEME_CALLBACK(alignment_callback, (SCM element, SCM axis));
   static void do_side_processing (Score_element*,Axis a);
   static void set_axis (Score_element*,Axis);
   static Axis axis (Score_element*) ;
@@ -59,7 +61,7 @@ struct Align_interface {
   static int get_count (Score_element*,Score_element*);
   static void set_interface (Score_element*);
   static bool has_interface (Score_element*);
-  static Real center_on_element (Score_element *c, Axis);
+  DECLARE_SCHEME_CALLBACK(center_on_element, (SCM element, SCM axis));
 };
 
 #endif /* ALIGN_INTERFACE_HH */
index c9ab5d36ef4a3fc4d6092df3eff749c6017fe645..663b233e8918325257dcdb2777de8862b3d73bb2 100644 (file)
@@ -20,9 +20,9 @@ public:
   static void set_interface (Score_element*);
   static Molecule compound_barline (Score_element*, String, Real height) ;
   static Molecule simple_barline (Score_element*, Real wid, Real height) ;      
-  static SCM get_staff_bar_size (SCM);
-  static SCM brew_molecule (SCM);
-  static SCM before_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(get_staff_bar_size, (SCM ));
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
+  DECLARE_SCHEME_CALLBACK(before_line_breaking, (SCM ));
 };
 #endif // BAR_HH
 
index 3ed32fae68a1cdd4928890ba64e511ecd93649b9..11bc3d37040ac3b5f568688e31dc36cccada382f 100644 (file)
@@ -11,6 +11,7 @@
 #include "lily-guile.hh"
 
 
+
 /** a beam connects multiple stems.
 
   Beam adjusts the stems its owns to make sure that they reach the
@@ -61,15 +62,15 @@ public:
   static  Item* last_visible_stem (Score_element*);
   static bool has_interface (Score_element*);
   static void set_interface (Score_element*);  
-  static Real rest_collision_callback (Score_element *,Axis);
+  DECLARE_SCHEME_CALLBACK(rest_collision_callback, (SCM element, SCM axis));
   Beam (SCM);
   static void add_stem (Score_element*,Score_element*);
   static void set_beaming (Score_element*,Beaming_info_list *);
   static void set_stemlens (Score_element*);
   static int get_multiplicity (Score_element*me);
-  static SCM brew_molecule (SCM);
-  static SCM before_line_breaking (SCM);
-  static SCM after_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
+  DECLARE_SCHEME_CALLBACK(before_line_breaking, (SCM ));
+  DECLARE_SCHEME_CALLBACK(after_line_breaking, (SCM ));
   static Molecule stem_beams (Score_element*,Item *here, Item *next, Item *prev);
 
 private:
index 8449f07498e8828b317b3bb7c2e45b5a835182e2..3e9d0d6c1d696c39bedd1ba3df763eccfed6feb8 100644 (file)
 class Break_align_interface
 {
 public:
-  static SCM before_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(before_line_breaking, (SCM ));
   static void do_alignment (Score_element*);
   static void set_interface (Score_element*);
   static bool has_interface (Score_element*);
   static void add_element (Score_element*me, Score_element*add);
-  static Real alignment_callback (Score_element*, Axis);
-  static Real self_align_callback (Score_element*, Axis);
+  DECLARE_SCHEME_CALLBACK(alignment_callback, (SCM element, SCM axis));
+  DECLARE_SCHEME_CALLBACK(self_align_callback, (SCM element, SCM axis));
 };
 #endif // BREAK_ALIGN_ITEM_HH
index 17e06d03a4b234cd9a152d7898f53e9adc3a5683..c131e57fe29d648d38af266e519db63aad86f4f7 100644 (file)
@@ -19,8 +19,8 @@
 class Breathing_sign
 {
 public:
-  static SCM brew_molecule (SCM);
-  static Real offset_callback (Score_element *, Axis);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
+  DECLARE_SCHEME_CALLBACK(offset_callback, (SCM element, SCM axis));
   static void set_interface (Score_element*);
   static bool has_interface (Score_element*);
 };
index bd9bcfb9dc5ad7cbccbf9a22d22b93e012bef57d..b4825593ba5b38c0f07109fd6cafba1874ff3f0e 100644 (file)
 class Chord_name
 {
 public:
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static Molecule ly_word2molecule (Score_element*, SCM scm, Real* x) ;
   static Molecule ly_text2molecule (Score_element*, SCM scm) ;
-  static SCM after_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(after_line_breaking, (SCM ));
 };
 
 #endif // CHORD_NAME_HH
index f8c4b52c6193f1ba93796080be6cd405aedd99ae..bd59e6ee1da437aaa6c516abb47d614791991ab2 100644 (file)
@@ -26,7 +26,7 @@
  */
 struct Clef 
 {
-  static SCM before_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(before_line_breaking, (SCM ));
   static bool has_interface (Score_element*);
   static void set_interface (Score_element*);
 };
index 650a80f14fbf31ea34175f139e8514ff5f68c0d5..d700f5a34a50b08260ab27881d3be45e06910098 100644 (file)
@@ -43,7 +43,7 @@ class Collision                       // interface
 public:
   static SCM automatic_shift (Score_element*);
   static SCM forced_shift (Score_element*);
-  static Real force_shift_callback (Score_element *, Axis);
+  DECLARE_SCHEME_CALLBACK(force_shift_callback, (SCM element, SCM axis));
   static void do_shifts (Score_element*);
   static void add_column (Score_element*me,Score_element*ncol_l);
 };
index 09c46265acc408a9f8512bf027bf08f68063eb38..e7e4a16c522903b0a185ffe12770907a6fe33975 100644 (file)
@@ -19,7 +19,7 @@
 struct Crescendo
 {
 public:
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static void set_interface(Score_element*);
   static bool has_interface (Score_element*);
 };
index 27a1eb3225d921bbe9bcab5a213f2ec2b2c9c492..dc50f326fcc8ed1be155cb62ae3c04e4bc0ed50d 100644 (file)
@@ -22,7 +22,7 @@ public:
   static void add_head (Score_element * dotcol, Score_element* rh );
   static void set_interface (Score_element*);
   static bool has_interface (Score_element*);
-  static Real force_shift_callback (Score_element * , Axis);
+  DECLARE_SCHEME_CALLBACK(force_shift_callback, (SCM ,SCM));
   static SCM do_shifts (SCM dotlist);
 };
 #endif // DOT_COLUMN_HH
index 76189d65f67522b83196e664cc276fa99d74c546..ea4ce9be63ecd2446ab14a7c409e97bc564b5ce6 100644 (file)
@@ -14,6 +14,7 @@
 #include "lily-guile.hh"
 
 
+
 /**
   The dots to go with a notehead/rest.  A separate class, since they
   are a party in collision resolution.
@@ -27,8 +28,8 @@
 class Dots                     // interface
 {
 public:
-  static Real quantised_position_callback(Score_element*, Axis);
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(quantised_position_callback, (SCM element, SCM axis));
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
 };
 
 #endif // DOTS_HH
index 3e446295e33827fb5f0bd92bfb3d273f7047508b..812a442e295d91cbb69f9c570c4a535bf6c9cbeb 100644 (file)
@@ -23,7 +23,7 @@ class Grace_align_item
 public:
   static void set_interface (Score_element*);
   static bool has_interface (Score_element*);
-  static SCM before_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(before_line_breaking, (SCM ));
 };
 #endif /* GRACE_ALIGN_ITEM_HH */
 
index fb114a914a4e223fc151e829212df6a8af4e9d37..fba4ed4c263543c9bf62ba9d33bdf125a2d2b1ff 100644 (file)
@@ -36,7 +36,7 @@ public:
   Spanner* elt_l_;
   Hyphen_spanner  (Spanner*);
   void set_textitem (Direction, Score_element*);
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
 };
 
 #endif // HYPHEN_SPANNER_HH
index de16e2a130196f31f1504a5dd3db7a7bc5298733..706f65530fd915a26d922493c9bd5473b44ecc83 100644 (file)
@@ -26,7 +26,7 @@ struct Key_item
   static int calculate_position(Score_element*,SCM pair) ;
   static void set_interface (Score_element*);
   static bool has_interface (Score_element*);
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
 };
 
 #endif // KEYITEM_HH
index bc9287c7639d79a39bd969ce204270234e4aa3ad..623e8526924fee7540c0116a5cbd4461acc5ac26 100644 (file)
@@ -84,18 +84,24 @@ void add_scm_init_func (void (*)());
 typedef SCM(*Scheme_function_unknown)();
 
 #if __GNUC_MINOR__ >= 96
-typedef SCM(*Scheme_function_1)(SCM);   
+typedef SCM(*Scheme_function_1)(SCM);
+typedef SCM(*Scheme_function_2)(SCM,SCM);       
 #else
 typedef SCM(*Scheme_function_1)(...);
+typedef SCM(*Scheme_function_2)(...);
 #endif
 
-#define MAKE_SCHEME_CALLBACK(TYPE, FUNC) \
-static SCM TYPE ## _ ## FUNC ## _proc;\
+#define DECLARE_SCHEME_CALLBACK(NAME,ARGS) \
+       static SCM NAME ARGS; \
+       static SCM NAME ## _proc
+
+#define MAKE_SCHEME_CALLBACK(TYPE, FUNC, ARGCOUNT) \
+SCM TYPE :: FUNC ## _proc;\
 void                                                           \
 TYPE ## _ ## FUNC ## _init_functions ()                                        \
 {                                                              \
-  TYPE ## _ ## FUNC ## _proc = gh_new_procedure1_0 (#TYPE "::" #FUNC, \
-  ((Scheme_function_1)TYPE :: FUNC));                          \
+  TYPE :: FUNC ## _proc = gh_new_procedure ## ARGCOUNT  ## _0 (#TYPE "::" #FUNC, \
+  ((Scheme_function_ ## ARGCOUNT)TYPE :: FUNC));                               \
 }                                                              \
                                                                \
 ADD_SCM_INIT_FUNC(TYPE ## _ ## FUNC ## _callback, TYPE ## _ ## FUNC ## _init_functions);       \
index e1f45bd305cf56f67e64bc6db31e1d01a9eb82a7..88b76d7b4615c92757e9353a945fcd78cd25f736 100644 (file)
@@ -15,7 +15,7 @@ class Local_key_item
 {
   static Molecule parenthesize (Score_element*me, Molecule) ;
 public:
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static void add_pitch (Score_element*me, Musical_pitch, bool cautionary, bool natural);
   static bool has_interface (Score_element*);
   static void set_interface (Score_element*);  
index 1a71a1e7cb85edf88a8163d0907ece422fabb271..1204a3befc1c37d77221f23d9cc1fd4381db2c50 100644 (file)
@@ -43,7 +43,7 @@ public:
   Spanner*elt_l_;
   Lyric_extender (Spanner*);
   void set_textitem (Direction, Score_element*);
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
 };
 
 #endif // EXTENDER_SPANNER_HH
index ba805eadd06e3c76926760eb2686ef6ac5fe8b9b..d516dbfd96d9d733cc3298436a5ba38d230afe8f 100644 (file)
@@ -29,9 +29,9 @@ class Multi_measure_rest
 public:
   static void set_interface (Score_element*);
   static bool has_interface (Score_element*);
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static  void add_column (Score_element*,Item*);
-  static SCM set_spacing_rods (SCM);
+  DECLARE_SCHEME_CALLBACK(set_spacing_rods, (SCM ));
 };
 
 #endif /* MULTI_MEASURE_REST_HH */
index 09c75e186eb0427990794b5854644508df84fc0b..8974b9828d5dbc1ea4c8cb336c44196a398758b9 100644 (file)
@@ -23,7 +23,7 @@
 class Note_head 
 {
 public:
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static Molecule ledger_line (Interval, Score_element*) ;
   static bool has_interface (Score_element*);
 };
index c2ae9cd1fd1e4c772ea60cb438cc108fba22a15c..94055324c7ea3821f86cab0050bd6800105a4fa7 100644 (file)
@@ -15,6 +15,7 @@
 
 
 
+
 /*
   Move rests in note-columns so that they do not collide.
   
@@ -48,7 +49,7 @@ public:
   static void add_column (Score_element*me,Score_element*);
   static void set_interface (Score_element*me);
   static bool has_interface (Score_element*);
-  static Real force_shift_callback (Score_element *, Axis);
+  DECLARE_SCHEME_CALLBACK(force_shift_callback, (SCM element, SCM axis));
   static SCM do_shift (Score_element*,SCM);
 };
 #endif // REST_COLLISION_HH
index f403690dc7a95949d339a71902d46303ac700a0a..204c19f407ce48d18561dd07e84ef372ca6a3175 100644 (file)
@@ -22,8 +22,8 @@
 class  Rest
 {
 public:
-  static SCM after_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(after_line_breaking, (SCM ));
   static bool has_interface (Score_element*);
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
 };
 #endif // REST_HH
index b64844d41d00b36630eabfc1f9355593aa37d8ed..855f84b7f7beef921a7e6fbe72104c0b6a6b5ea8 100644 (file)
@@ -29,7 +29,7 @@ public:
   static Item * stem_l (Score_element*) ;
   static Item * dots_l (Score_element*) ;
   static int dot_count (Score_element*) ;
-  static SCM after_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(after_line_breaking, (SCM ));
   static bool has_interface (Score_element*);
   static void set_interface (Score_element*);
 };
index 1e41d86583ce46cfbd2895ff4d3f2658e30d50aa..3603372fae013b8c36a7cb4a4d161542dc267068 100644 (file)
@@ -17,7 +17,7 @@ class Script_column
 {
 public:
   static void add_staff_sided (Score_element*, Item*);
-  static SCM before_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(before_line_breaking, (SCM ));
 };
 
 
index 0e4dfae387c731f9634c5e67467bbbbe40eedc58..6d9b51f2c3d6119c8a5c8db9231034e584a5126b 100644 (file)
@@ -24,8 +24,8 @@ public:
   static Molecule get_molecule (Score_element*,Direction d);
   static void set_interface (Score_element*);
   static bool  has_interface (Score_element*);
-  static SCM brew_molecule (SCM);
-  static SCM after_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
+  DECLARE_SCHEME_CALLBACK(after_line_breaking, (SCM ));
 };
 
 #endif /* Stem_SCRIPT_HH */
index d01b6dbb5182685c930032c8f429921f006ed77a..8bcff500a425c68bb82ff9d98c15c6a19be669bb 100644 (file)
@@ -17,7 +17,7 @@ class Separating_group_spanner
 public:
   static void add_spacing_unit (Score_element*me, Item*);
   static void set_interface (Score_element*);
-  static SCM set_spacing_rods (SCM);
+  DECLARE_SCHEME_CALLBACK(set_spacing_rods, (SCM ));
 };
 
 #endif /* SEPARATING_GROUP_SPANNER_HH */
index a4f8e903566e25ad8c39391f1d6d8fee8478503d..db67e1914356c617c8552ed329b9edeb3b89100e 100644 (file)
@@ -14,6 +14,9 @@
 #include "item.hh"
 
 
+
+
+
 /**
    Position victim object (ELT_L_) next to other objects (the support).
 
 struct Side_position
 {
 public:
-  static Real side_position (Score_element *, Axis);
-  static Real aligned_on_self (Score_element *, Axis);
-  static Real aligned_side (Score_element *, Axis);  
-  static Real quantised_position (Score_element *, Axis);
-  static Real centered_on_parent (Score_element *, Axis);
+  DECLARE_SCHEME_CALLBACK(side_position, (SCM  element, SCM axis));
+  DECLARE_SCHEME_CALLBACK(aligned_on_self, (SCM  element, SCM axis));
+  DECLARE_SCHEME_CALLBACK(aligned_side, (SCM element, SCM axis));  
+  DECLARE_SCHEME_CALLBACK(quantised_position, (SCM element, SCM axis));
+  DECLARE_SCHEME_CALLBACK(centered_on_parent, (SCM element, SCM axis));
   static void set_axis (Score_element*,Axis);
   static void set_minimum_space (Score_element*,Real);
   static void set_padding (Score_element*,Real);
index 917b5fdc89df4fd1a1910ca6c741a6ba4b5c1448..7f678043eee3b7d4a1e82af8f984540a9bfc0b85 100644 (file)
@@ -18,7 +18,7 @@ public:
   static void set_interface (Score_element*);
   static void do_measure (Score_element*,Link_array<Score_element>) ;
 
-  static SCM set_springs (SCM);
+  DECLARE_SCHEME_CALLBACK(set_springs, (SCM ));
   static Real stem_dir_correction (Score_element*,Score_element*,Score_element*)  ;
   static Real default_bar_spacing (Score_element*,Score_element*,Score_element*,Moment)  ;
   static Real note_spacing (Score_element*,Score_element*,Score_element*,Moment)  ;
index 129848172bbeddab67f690890c38e69b75e58b9e..597ed0944b2bb65241edb0b4108b6a91a43ff585 100644 (file)
@@ -24,7 +24,7 @@ public:
   static void set_interface (Score_element*);
   static bool has_interface (Score_element*);
   static void set_position (Score_element*,Real);
-  static Real callback (Score_element *, Axis a);
+  DECLARE_SCHEME_CALLBACK(callback, (SCM element, SCM axis));
 
   /**
      Leading are the lead strips between the sticks (lines) of
index b854b76dfd5f58739f585f43d32f23fac3db617f..5bcf6196a7e182f4b79e850f30a6c664b10999e0 100644 (file)
@@ -24,7 +24,7 @@ public:
   static Real staff_space (Score_element*) ;
   static int steps_i(Score_element*) ;
   static int line_count (Score_element*);
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static bool has_interface (Score_element*);
   static void set_interface (Score_element*);
 };
index 121713d9e6328d5820b3c5e45b1d01cdc270f815..081f0c6c91df71b24576adb01618e69a6cabeed7 100644 (file)
 class System_start_delimiter
 {
 public:
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   
   static void set_interface (Score_element*me);
   static bool has_interface (Score_element*);
-  static SCM after_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(after_line_breaking, (SCM ));
   static void try_collapse (Score_element*);
   static Molecule staff_bracket (Score_element*,Real) ;
   static Molecule staff_brace (Score_element*,Real) ;
index 2c8545a07908b5c18da2333610c56058d5578c6e..b841125b311e93015ec4e748a8b6f59a744b4bd7 100644 (file)
@@ -20,7 +20,7 @@ public:
   static void set_interface (Score_element*me);
   static bool has_interface (Score_element*);
   static void add_tie (Score_element*me,Score_element*);
-  static SCM after_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(after_line_breaking, (SCM ));
   static void set_directions (Score_element*me);
 };
 
index 329e41fb0bf211dd6ec212bb16dfc108a9f413bd..a5553555a9fb2d5211b4319e358b98335d0f7d0f 100644 (file)
@@ -25,10 +25,10 @@ public:
   static bool has_interface (Score_element*);
   static Score_element * head (Score_element*,Direction) ;
   static Real position_f (Score_element*) ;
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static Direction get_default_dir(Score_element*) ;
   static SCM get_control_points (SCM);
-  static SCM set_spacing_rods (SCM);
+  DECLARE_SCHEME_CALLBACK(set_spacing_rods, (SCM ));
 };
 
 #endif // TIE_HH
index f25d12c866863b7cffc7fa5c959500bfbea994f1..f88a4f13241ef46470fec49ae3fa0fe44aa610e3 100644 (file)
@@ -21,7 +21,7 @@ struct Time_signature
 {
   static Molecule special_time_signature (Score_element*,String,int,int) ;
   static Molecule time_signature (Score_element*,int, int);
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
 };
 #endif // METER_HH
 
index 49a5bac13c4b730d870fe06b290a5acf0cb0bc15..5d317cda256ea8dc2bd0c51d697bd783ec425cd7 100644 (file)
@@ -26,7 +26,7 @@ properties:
 class Tuplet_spanner
 {
 public:
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static void set_interface (Score_element*);  
   static bool has_interface (Score_element*);
 
@@ -36,7 +36,7 @@ public:
   static void calc_dy (Score_element*,Real *) ;
   static void calc_position_and_height (Score_element*,Real*,Real *dy);
   
-  static SCM after_line_breaking (SCM);
+  DECLARE_SCHEME_CALLBACK(after_line_breaking, (SCM ));
 
   static Direction get_default_dir (Score_element*);
 };
index 8955f1b24794aaa3bff267334a4cf8ddc6a40d75..6bf3608531a04f26a21b1b9b78e7d525cc32402e 100644 (file)
@@ -27,7 +27,7 @@ class Volta_spanner
 public:
   static void set_interface (Score_element*);
   static bool has_interface (Score_element*);
-  static SCM brew_molecule (SCM);
+  DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
   static void add_column (Score_element*, Score_element*col);
   static void add_bar (Score_element*me, Item*bar);
 };
index a0cf73d2709ab17a21b4d2df9d3472d84f5ef7a3..f1438f69f8012b10c82efa167c7afdb4144669ca 100644 (file)
@@ -120,7 +120,7 @@ Syllable_group::set_lyric_align(const char *punc, Score_element *default_notehea
     // centre on notehead ... if we have one. 
     if(notehead_l_) {
       lyric->set_parent(notehead_l_, X_AXIS);
-      lyric->add_offset_callback (Side_position::centered_on_parent, X_AXIS);
+      lyric->add_offset_callback (Side_position::centered_on_parent_proc, X_AXIS);
       // reference is on the right of the notehead; move it left half way, and add translation
       lyric->translate_axis (group_translation_f_-(notehead_l_->extent(X_AXIS)).center(), X_AXIS);
     }