OLD | NEW |
1 /* | 1 /* |
2 This file is part of LilyPond, the GNU music typesetter. | 2 This file is part of LilyPond, the GNU music typesetter. |
3 | 3 |
4 Copyright (C) 2002--2015 Juergen Reuter <reuter@ipd.uka.de> | 4 Copyright (C) 2002--2015 Juergen Reuter <reuter@ipd.uka.de> |
5 Han-Wen Nienhuys <hanwen@xs4all.nl> | 5 Han-Wen Nienhuys <hanwen@xs4all.nl> |
6 | 6 |
7 LilyPond is free software: you can redistribute it and/or modify | 7 LilyPond is free software: you can redistribute it and/or modify |
8 it under the terms of the GNU General Public License as published by | 8 it under the terms of the GNU General Public License as published by |
9 the Free Software Foundation, either version 3 of the License, or | 9 the Free Software Foundation, either version 3 of the License, or |
10 (at your option) any later version. | 10 (at your option) any later version. |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 finished_spanner_->set_bound (RIGHT, | 74 finished_spanner_->set_bound (RIGHT, |
75 finished_spanner_->get_bound (LEFT)); | 75 finished_spanner_->get_bound (LEFT)); |
76 | 76 |
77 } | 77 } |
78 | 78 |
79 finished_spanner_ = 0; | 79 finished_spanner_ = 0; |
80 } | 80 } |
81 beacon_ = 0; | 81 beacon_ = 0; |
82 } | 82 } |
83 | 83 |
84 IMPLEMENT_TRANSLATOR_LISTENER (Cluster_spanner_engraver, cluster_note); | |
85 void | 84 void |
86 Cluster_spanner_engraver::listen_cluster_note (Stream_event *ev) | 85 Cluster_spanner_engraver::listen_cluster_note (Stream_event *ev) |
87 { | 86 { |
88 cluster_notes_.push_back (ev); | 87 cluster_notes_.push_back (ev); |
89 } | 88 } |
90 | 89 |
91 void | 90 void |
92 Cluster_spanner_engraver::process_music () | 91 Cluster_spanner_engraver::process_music () |
93 { | 92 { |
94 if (cluster_notes_.size ()) | 93 if (cluster_notes_.size ()) |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 void | 134 void |
136 Cluster_spanner_engraver::acknowledge_note_column (Grob_info info) | 135 Cluster_spanner_engraver::acknowledge_note_column (Grob_info info) |
137 { | 136 { |
138 if (!beacon_ && has_interface<Note_column> (info.grob ())) | 137 if (!beacon_ && has_interface<Note_column> (info.grob ())) |
139 { | 138 { |
140 finished_spanner_ = spanner_; | 139 finished_spanner_ = spanner_; |
141 spanner_ = 0; | 140 spanner_ = 0; |
142 } | 141 } |
143 } | 142 } |
144 | 143 |
145 ADD_ACKNOWLEDGER (Cluster_spanner_engraver, note_column); | 144 void |
| 145 Cluster_spanner_engraver::boot () |
| 146 { |
| 147 ADD_LISTENER (Cluster_spanner_engraver, cluster_note); |
| 148 ADD_ACKNOWLEDGER (Cluster_spanner_engraver, note_column); |
| 149 } |
| 150 |
146 ADD_TRANSLATOR (Cluster_spanner_engraver, | 151 ADD_TRANSLATOR (Cluster_spanner_engraver, |
147 /* doc */ | 152 /* doc */ |
148 "Engrave a cluster using @code{Spanner} notation.", | 153 "Engrave a cluster using @code{Spanner} notation.", |
149 | 154 |
150 /* create */ | 155 /* create */ |
151 "ClusterSpanner " | 156 "ClusterSpanner " |
152 "ClusterSpannerBeacon ", | 157 "ClusterSpannerBeacon ", |
153 | 158 |
154 /* read */ | 159 /* read */ |
155 "", | 160 "", |
156 | 161 |
157 /* write */ | 162 /* write */ |
158 "" | 163 "" |
159 ); | 164 ); |
160 | 165 |
OLD | NEW |