From 43fdcc16c0ee8ef5c35444bb1aef21050b6e56c4 Mon Sep 17 00:00:00 2001 From: fred Date: Wed, 27 Mar 2002 00:25:04 +0000 Subject: [PATCH] lilypond-1.3.94 --- lily/line-number-engraver.cc | 105 ----------------------------------- 1 file changed, 105 deletions(-) delete mode 100644 lily/line-number-engraver.cc diff --git a/lily/line-number-engraver.cc b/lily/line-number-engraver.cc deleted file mode 100644 index 476ade7070..0000000000 --- a/lily/line-number-engraver.cc +++ /dev/null @@ -1,105 +0,0 @@ -/* - line-number-engraver.cc -- implement Line_number_engraver - - source file of the GNU LilyPond music typesetter - - (c) 2000 Han-Wen Nienhuys - - */ - -#include "engraver.hh" -#include "item.hh" -#include "side-position-interface.hh" -#include "rhythmic-head.hh" -#include "stem.hh" -#include "note-head.hh" - -/** - Annotate output with line numbers. Creates text-items when it - catches note heads. */ -class Line_number_engraver : public Engraver -{ - Array interesting_; - Link_array support_; - Item * text_item_p_; - String last_text_; -public: - Line_number_engraver (); - VIRTUAL_COPY_CONS (Translator); -protected: - virtual void do_pre_move_processing (); - virtual void acknowledge_element (Score_element_info); - virtual void process_acknowledged (); -}; - -void -Line_number_engraver::process_acknowledged () -{ - if (!text_item_p_ && interesting_.size ()) - { - text_item_p_ = new Item (get_property ("basicTextProperties") ); - Side_position::set_axis (text_item_p_,Y_AXIS); - Side_position::set_direction (text_item_p_, UP); - text_item_p_->set_parent (interesting_[0].elem_l_, Y_AXIS); - - - announce_element (text_item_p_, 0); - } -} - -void -Line_number_engraver::acknowledge_element (Score_element_info inf) -{ - if (!inf.req_l_) - return ; - - if ( Note_head::has_interface (inf.elem_l_)) - { - interesting_.push (inf); - support_.push (inf.elem_l_); - } - else if (Stem::has_interface (inf.elem_l_)) - { - support_.push (inf.elem_l_); - } -} - -void -Line_number_engraver::do_pre_move_processing () -{ - if (text_item_p_) - { - String s; - - for (int i=0; i < interesting_.size (); i++) - { - if (i) - s += ","; - - s += interesting_[i].req_l_->origin ()->line_number_str (); - - } - - for (int j= support_.size (); j--; ) - { - Side_position::add_support (text_item_p_,support_[j]); - } - if (s != last_text_) - { - text_item_p_->set_elt_property ("text", ly_str02scm (s.ch_C())); - last_text_ =s; - } - - typeset_element (text_item_p_); - text_item_p_ =0; - } - interesting_.clear (); - support_.clear (); -} - -Line_number_engraver::Line_number_engraver () -{ - text_item_p_ =0; -} - -ADD_THIS_TRANSLATOR(Line_number_engraver); -- 2.39.5