]> git.donarmstrong.com Git - lilypond.git/commitdiff
patch::: 1.1.23.ms2
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Mon, 25 Jan 1999 12:34:19 +0000 (13:34 +0100)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Mon, 25 Jan 1999 12:34:19 +0000 (13:34 +0100)
pl 23.ms2
- property noteheadStyle
- first attempt to make harmonics : see input/test/harmonics.fly

---
Generated by (address unknown) using package-diff 0.62,
From = lilypond-1.1.23.ms1, To = lilypond-1.1.23.ms2

usage

    cd lilypond-source-dir; patch -E -p1 < lilypond-1.1.23.ms2.diff

Patches do not contain automatically generated files
or (urg) empty directories,
i.e., you should rerun autoconf, configure
and possibly make outdirs.

--state
1.1.23.ms1
1.1.23.ms2
++state

NEWS
VERSION
input/test/harmonics.fly [new file with mode: 0644]
lily/heads-engraver.cc
lily/include/lookup.hh
lily/include/note-head.hh
lily/lookup.cc
lily/note-head.cc
mf/feta-bolletjes.mf

diff --git a/NEWS b/NEWS
index eba63994a5a9de6102e68f25358514eac9ce5343..7944916b7923873cf63225cde6048531b3c28a62 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,13 @@
---- ../lilypond-1.1.23/NEWS    Tue Jan 19 16:29:41 1999
+--- ../lilypond-1.1.23.ms1/NEWS        Mon Jan 25 10:22:34 1999
+++ b/NEWS      Mon Jan 25 13:34:19 1999
+@@ -1,3 +1,7 @@
+pl 23.ms2
+       - property noteheadStyle
+       - first attempt to make harmonics : see input/test/harmonics.fly
+
+ pl 23.ms1
+         - sinfonia.ly: several fixes
+       - dynamics--- ../lilypond-1.1.23/NEWS   Tue Jan 19 16:29:41 1999
 ++ b/NEWS      Mon Jan 25 10:22:34 1999
 @@ -1,3 +1,13 @@
 pl 23.ms1
diff --git a/VERSION b/VERSION
index e245fa0ebfdbd1cb8c551e1a4c3240c3281b1e87..3559b6d9235c2f357e961f3f158335860ec63f92 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -2,7 +2,7 @@ PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=1
 PATCH_LEVEL=23
-MY_PATCH_LEVEL=ms1
+MY_PATCH_LEVEL=ms2
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
diff --git a/input/test/harmonics.fly b/input/test/harmonics.fly
new file mode 100644 (file)
index 0000000..59d8925
--- /dev/null
@@ -0,0 +1,8 @@
+% this should be normal notes:
+c'1 | d2 d | e4 e 
+
+% and this should be harmonics:
+\property Voice.noteheadStyle = "harmonic"
+e8 e e16 e e e32 e
+
+
index c2d52cf13912e4aba58aad175d858f08dd855fa4..4e894ba4383d46692e6d7bb8f0f44a4768c29b9a 100644 (file)
@@ -49,6 +49,9 @@ Note_heads_engraver::do_process_requests()
       note_p->steps_i_ = note_req_l->pitch_.steps ();
       //      note_p->position_i_ = note_req_l->pitch_.steps ();
 
+      String noteheadstyle = get_property ("noteheadStyle", 0);
+      if (noteheadstyle.length_i ())
+        note_p->note_head_type_str_ = noteheadstyle;
   
       Score_element_info itinf (note_p,note_req_l);
       announce_element (itinf);
index 9526c07cc4ce240249c4b4654124ba7d2eab5759..c0fc047926fc654f7f08e741a30aba61f53ac0c9 100644 (file)
@@ -33,6 +33,9 @@ public:
   void add (String, Symtable*);
   Atom afm_find (String, bool warn=true) const;
   Atom ball (int) const;
+  //
+  Atom special_ball (int, String) const;
+  //
   Atom bar (String, Real height) const;
   Atom beam (Real, Real, Real) const;
   Atom clef (String) const;
index 1cc0bad9b891ffe129e7fd75d68cec4e745d53c0..853fee35817515bfd2ebc538f29350e607bd9498 100644 (file)
@@ -18,6 +18,8 @@
 class Note_head : public Rhythmic_head {
 public:
   
+  String note_head_type_str_;
+
   /// position of top line (5 linestaff: 8)
   int position_i_;
 
index 2b73a7ba82fc833f8d46b450d2434be4ace84d9d..f777dee42aa1a0f0aaf1407ad4c6edd79d9bf550 100644 (file)
@@ -122,6 +122,15 @@ Lookup::ball (int j) const
   return afm_find (String ("balls") + String ("-") + to_str (j));
 }
 
+Atom
+Lookup::special_ball (int j, String kind_of_ball) const
+{
+  if (j > 2)
+    j = 2;
+
+  return afm_find (String ("balls") + String ("-") + kind_of_ball);
+}
+
 Atom
 Lookup::bar (String str, Real h) const
 {
index 10cb7b1c2518df970620ddd0f609c3b71448ff28..f26cfc4c51d1d026302d22fb59204f569181d1ad 100644 (file)
@@ -65,10 +65,24 @@ Note_head::do_brew_molecule_p() const
     ? 0
     : (abs(position_i_) - staff_size_i_/2) /2;
   
-  Atom  s = lookup_l()->ball (balltype_i_);
+  //Atom  s = lookup_l()->ball (balltype_i_);
+  
+  Atom  s; // = lookup_l()->ball (balltype_i_);
+
+  if (note_head_type_str_.length_i ()) {
+    if (note_head_type_str_ == "normal")
+      note_head_type_str_ = "";
+    s = lookup_l()->special_ball (balltype_i_, note_head_type_str_);
+    }
+  else
+    s = lookup_l()->ball (balltype_i_);
   out = new Molecule (Atom (s));
   out->translate_axis (x_dir_ * s.dim_[X_AXIS].length (), X_AXIS);
 
+
+  //out = new Molecule (Atom (s));
+  //out->translate_axis (x_dir_ * s.dim_[X_AXIS].length (), X_AXIS);
+
   if (streepjes_i) 
     {
       int dir = sign (position_i_);
index 5ef657ad805962b677dabc5810bbefcc983b144e..410e4375bf7968ea439a11fd7a9307a669c6d68f 100644 (file)
@@ -241,8 +241,8 @@ fet_endchar;
 
 
 
-if test = 0:
-else:
+%if test = 0:
+%else:
 def draw_harmonic_notehead(expr harmwid) =
        save beamheight, head_width, head_char_width;
        save holeheight, stem_width;
@@ -269,8 +269,8 @@ def draw_harmonic_notehead(expr harmwid) =
 %      ht# = noteheight#;
        head_char_width = 1.54 noteheight;
        head_char_width# := 1.54 ht#;
-       schuif_op = head_char_width - head_width; %ugh
-       schuif_op# := head_char_width# - head_width#;
+       %schuif_op = head_char_width - head_width; %ugh
+       %schuif_op# := head_char_width# - head_width#;
 %      set_char_box(0, head_char_width#, noteheight#/2, noteheight#/2); 
        set_char_box(0, head_width#, head_width#/2, head_width#/2);
 %      2 beamheight + holeheight = noteheight;
@@ -288,15 +288,15 @@ def draw_harmonic_notehead(expr harmwid) =
        penpos8(thick, 225);
 
 %      1.5 noteheight = head_width;
-       z1l = (schuif_op, 0);
+       z1l = (0, 0);
        z2l = z1l;
-%      z3l = (schuif_op + head_width/2,-head_width/2);
-       z3l = (schuif_op + head_width/2, -noteheight/2);
+%      z3l = (head_width/2,-head_width/2);
+       z3l = (head_width/2, -noteheight/2);
        z4l = z3l;
-       z5l = (schuif_op + head_width, 0);
+       z5l = (head_width, 0);
        z6l = z5l;
-%      z7l = (schuif_op + head_width/2, head_width/2);
-       z7l = (schuif_op + head_width/2, noteheight/2);
+%      z7l = (head_width/2, head_width/2);
+       z7l = (head_width/2, noteheight/2);
        z8l = z7l;
        
        pickup pencircle; %scaled stemthick;
@@ -319,7 +319,7 @@ fet_endchar;
 fet_beginchar("Harmonic ledger", "harmonicl", "harmonicledger")
         draw_ledger(harmonic_wid#);
 fet_endchar;
-fi
+%fi
 
 fet_endgroup("balls");