]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/lookup.cc
release: 1.3.93
[lilypond.git] / lily / lookup.cc
index 2b90ce5a79be8c4ecd5dcf7ce0a538a2c1a479cf..62ad7fbb916c52c9ead74cba161b23784bee3172 100644 (file)
 Lookup::Lookup ()
 {
   afm_l_ = 0;  
-  self_scm_ = SCM_EOL;
-  smobify_self ();  
 }
 
 Lookup::Lookup (Lookup const& s)
 {
   font_name_ = s.font_name_;
-  self_scm_ = SCM_EOL;
   afm_l_ = 0;
-  smobify_self ();
 }
 
 SCM
@@ -59,28 +55,16 @@ Lookup::print_smob (SCM s, SCM p, scm_print_state*)
   return 1;
 }
 
-SCM
-Lookup::equal_p (SCM a , SCM b)
-{
-  return a == b ? SCM_BOOL_T : SCM_BOOL_F;
-}
-
-void
-Lookup::do_smobify_self ()
-{
-  
-}
 
 IMPLEMENT_UNSMOB(Lookup, lookup);
-IMPLEMENT_SMOBS(Lookup);
+IMPLEMENT_SIMPLE_SMOBS(Lookup);
+IMPLEMENT_DEFAULT_EQUAL_P(Lookup);
 
 SCM
 Lookup::make_lookup ()
 {
   Lookup * l = new Lookup;
-  SCM ls = l->self_scm_;
-  scm_unprotect_object (ls);
-  return ls;
+  return l->smobbed_self();
 }
 
 
@@ -111,6 +95,7 @@ Lookup::afm_find (String s, bool warn) const
                    gh_int2scm (cm->code),
                    SCM_UNDEFINED));
 
+
   at= fontify_atom (afm_l_,at);
   return Molecule ( afm_bbox_to_box (cm->charBBox), at);
 }
@@ -281,8 +266,12 @@ Lookup::text (String style, String text, Paper_def *paper_l)
       font_mag = (int)paper_l->get_var ("magnification_" + style);
     }
 
+  /*
+    FIXME !
+   */
+  
   SCM l = scm_assoc (ly_str02scm (style.ch_C()),
-                    scm_eval (ly_symbol2scm ("cmr-alist")));
+                    scm_eval2 (ly_symbol2scm ("cmr-alist"), SCM_EOL));
 
   if (l != SCM_BOOL_F)
     {