+++ /dev/null
-/*
- template.cc -- instantiate Pointer_list<Source_file*>
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include "config.hh"
-#include "source-file.hh"
-#include "plist.tcc"
-#include "pcursor.tcc"
-#include "cursor.tcc"
-#include "list.tcc"
-
-#ifdef NEED_EXPLICIT_INSTANTIATION
-LIST_INSTANTIATE (void *);
-#endif
-
-POINTERLIST_INSTANTIATE (Source_file);
-
+++ /dev/null
-/*
- horizontal-align-item.cc -- implement Horizontal_align_item
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include "horizontal-align-item.hh"
-#include "debug.hh"
-
-
-
-void
-Horizontal_align_item::add_item (Item *i,int p)
-{
- add_element_priority (i,p);
-}
-
-void
-Horizontal_align_item::do_print() const
-{
-#ifndef NPRINT
- Item::do_print ();
- Align_element::do_print ();
-#endif
-}
-
-
-Horizontal_align_item::Horizontal_align_item ()
-{
- align_dir_ = CENTER;
- stacking_dir_ = RIGHT;
- axis_ = X_AXIS;
-}
+++ /dev/null
-#include "horizontal-group-element.hh"
-#include "interval.hh"
-#include "item.hh"
-#include "debug.hh"
-
-
-
-
-Horizontal_group_element::Horizontal_group_element ()
- : Axis_group_element (X_AXIS,X_AXIS)
-{
-}
-
-Interval
-Horizontal_group_element::do_width() const
-{
- return Graphical_axis_group::extent (X_AXIS);
-}
-
+++ /dev/null
-/*
- horizontal-group-item.cc -- implement Horizontal_group_item
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include "p-col.hh"
-#include "horizontal-group-item.hh"
-
-
-
-void
-Horizontal_group_item::do_print() const
-{
- Axis_group_item::do_print();
-}
-
-Horizontal_group_item::Horizontal_group_item ()
-{
- axes_[0] = axes_[1] = X_AXIS;
-}
+++ /dev/null
-
-#include "horizontal-vertical-group-element.hh"
-#include "interval.hh"
-#include "item.hh"
-#include "debug.hh"
-
-Horizontal_vertical_group_element::Horizontal_vertical_group_element()
-{
- axes_[0] = X_AXIS;
- axes_[1] = Y_AXIS;
-}
-
-
-
-
+++ /dev/null
-/*
- horizontal-vertical-group-item.cc -- implement Horizontal_vertical_group_item
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#include "horizontal-vertical-group-item.hh"
-#include "p-col.hh"
-
-void
-Horizontal_vertical_group_item::do_print() const
-{
- Horizontal_vertical_group_element::do_print();
-}
-
-
-
-Horizontal_vertical_group_item::Horizontal_vertical_group_item ()
-{
- axes_[0] = X_AXIS;
- axes_[1] = Y_AXIS;
-}
+++ /dev/null
-/*
- cons.cc -- implement
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
- */
-
-#include "cons.hh"
+++ /dev/null
-/*
- cons.hh -- declare LISP like datatypes
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
- */
-
-#ifndef CONS_HH
-#define CONS_HH
-
-
-template<class T>
-class Cons
-{
-public:
- T * car_;
- Cons * next_;
- Cons ()
- {
- car_=0;
- next_ =0;
- }
- Cons (T*t, Cons<T>*c)
- {
- car_ = t;
- next_ = c;
- }
- virtual ~Cons ()
- {
- delete next_;
- }
-};
-
-template<class T>
-class Killing_cons : public Cons<T>
-{
-public:
- Killing_cons (T *t, Cons<T> *p)
- : Cons<T>( t,p)
- {
- }
- virtual ~Killing_cons ();
-};
-
-
-/// remove the link pointed to by *p.
-template<class T>
-Cons<T> *remove_cons (Cons<T> **pp)
-{
- Cons<T> *knip = *pp;
- *pp = (*pp)->next_;
- knip->next_ = 0;
- return knip;
-}
-
-
-template<class T>
-class Cons_list
-{
-public:
- Cons<T> * head_;
- Cons<T> ** tail_;
- Cons_list () { init_list (); }
- void init_list () {head_ =0; tail_ = &head_; }
- void append (Cons<T> *c)
- {
- assert (!c->next_);
- *tail_ = c;
- while (*tail_)
- tail_ = &(*tail_)->next_;
- }
- Cons<T> *remove_cons (Cons<T> **pp)
- {
- if (&(*pp)->next_ == tail_)
- tail_ = pp;
-
- return ::remove_cons (pp);
- }
- void junk ()
- {
- delete head_;
- head_ =0;
- }
- ~Cons_list () { junk (); }
-};
-
-
-template<class T>
-void copy_killing_cons_list (Cons_list<T>&, Cons<T> *src);
-template<class T>
-void
-clone_killing_cons_list (Cons_list<T>&, Cons<T> *src);
-
-template<class T> int cons_list_size_i (Cons<T> *l)
-{
- int i=0;
- while (l)
- {
- l = l->next_;
- i++;
- }
- return i;
-}
-
-
-
-
-#endif /* CONS_HH */
-
+++ /dev/null
-/*
- horizontal-align-item.hh -- declare Horizontal_align_item
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef HORIZONTAL_ALIGN_ITEM_HH
-#define HORIZONTAL_ALIGN_ITEM_HH
-
-#include "item.hh"
-#include "align-element.hh"
-
-/**
- Order elems left to right.
-
- TODO: insert (order, elem)
- */
-class Horizontal_align_item : public Item , public Align_element {
-public:
-
- VIRTUAL_COPY_CONS(Score_element);
- void add_item (Item*, int p);
- Horizontal_align_item();
- virtual void do_print() const;
-
-};
-#endif // HORIZONTAL_ALIGN_ITEM_HH
+++ /dev/null
-/*
- horizontal-group-element.hh -- declare Horizontal_group_element
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
- */
-
-#ifndef HORIZONTAL_GROUP_ELEM_HH
-#define HORIZONTAL_GROUP_ELEM_HH
-
-#include "axis-group-element.hh"
-
-/**
- Treat a group of elements a unity in horizontal sense .
- A column is a typical Vertical_group.
- */
-class Horizontal_group_element : public virtual Axis_group_element {
-protected:
- virtual Interval do_width() const;
-
-public:
- Horizontal_group_element ();
-
-};
-
-
-#endif /* HORIZONTAL_GROUP_ELEM_HH */
-
+++ /dev/null
-/*
- horizontal-group-item.hh -- declare Horizontal_group_item
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef HORIZONTAL_GROUP_ITEM_HH
-#define HORIZONTAL_GROUP_ITEM_HH
-
-#include "horizontal-group-element.hh"
-#include "axis-group-item.hh"
-
-/**
- Group stuff in horizontal sense. Example: Paper_column
- */
-class Horizontal_group_item : public Axis_group_item, public Horizontal_group_element {
-protected:
- virtual void do_print() const;
-public:
- Horizontal_group_item ();
-
- VIRTUAL_COPY_CONS(Score_element);
-};
-
-#endif // HORIZONTAL_GROUP_ITEM_HH
+++ /dev/null
-/*
- horizontal-vertical-group-element.hh -- declare Horizontal_vertical_group_element
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
- */
-
-#ifndef HORIZONTAL_VERTICAL_GROUP_ELEM_HH
-#define HORIZONTAL_VERTICAL_GROUP_ELEM_HH
-
-#include "vertical-group-element.hh"
-#include "horizontal-group-element.hh"
-
-/** A class to treat a group of elements as a single entity. The
- dimensions are the unions of the dimensions of what it contains.
- Translation means translating the contents.
- */
-class Horizontal_vertical_group_element : public Vertical_group_element,
- public Horizontal_group_element
-{
-protected:
-public:
- Horizontal_vertical_group_element ();
-
-
-};
-
-
-#endif /* HORIZONTAL_VERTICAL_GROUP_ELEM_HH */
-
-
+++ /dev/null
-/*
- horizontal-vertical-group-item.hh -- declare Horizontal_vertical_group_item
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef HORIZONTAL_VERTICAL_GROUP_ITEM_HH
-#define HORIZONTAL_VERTICAL_GROUP_ITEM_HH
-
-#include "axis-group-item.hh"
-#include "horizontal-vertical-group-element.hh"
-
-
-/**
- Treat a collection of items as a unity
- */
-class Horizontal_vertical_group_item : public Axis_group_item, public Horizontal_vertical_group_element {
-protected:
- virtual void do_print() const;
- VIRTUAL_COPY_CONS(Score_element);
-public:
- Horizontal_vertical_group_item ();
-
-
-};
-
-#endif // HORIZONTAL_VERTICAL_GROUP_ITEM_HH
+++ /dev/null
-/*
- killing-cons.tcc -- declare Killing_cons
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
- */
-
-#ifndef KILLING_CONS_TCC
-#define KILLING_CONS_TCC
-
-#include "cons.hh"
-
-template<class T>
-Killing_cons<T>::~Killing_cons ()
-{
- delete car_;
-}
-
-template<class T>
-void
-copy_killing_cons_list (Cons_list<T> &dest, Cons<T> *src)
-{
- for (; src; src = src->next_)
- {
- T *t = new T(*src->car_);
- dest.append ( new Killing_cons<T> (t, 0));
- }
-}
-
-template<class T>
-void
-clone_killing_cons_list (Cons_list<T> & dest, Cons<T> *src)
-{
- for (; src; src = src->next_)
- {
- T *t = src->car_->clone ();
- dest.append (new Killing_cons<T> (t, 0));
- }
-}
-
-#endif /* KILLING_CONS_TCC */
-
+++ /dev/null
-/*
- span-score-bar.hh -- declare Span_score_bar
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef SPAN_SCORE_BAR_HH
-#define SPAN_SCORE_BAR_HH
-
-#include "span-bar.hh"
-#include "score-bar.hh"
-
-class Span_score_bar : public Span_bar, public Score_bar
-{
-public:
-
- VIRTUAL_COPY_CONS(Score_element);
- Span_score_bar();
-
-protected:
- virtual void do_pre_processing();
-};
-
-
-
-#endif // SPAN_SCORE_BAR_HH
+++ /dev/null
-/*
- vertical-align-spanner.hh -- declare Vertical_align_spanner
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef VERTICAL_ALIGN_SPANNER_HH
-#define VERTICAL_ALIGN_SPANNER_HH
-
-#include "spanner.hh"
-#include "align-element.hh"
-
-class Vertical_align_spanner : public Align_element, public Spanner
-{
-public:
-
- VIRTUAL_COPY_CONS(Score_element);
- Vertical_align_spanner ();
- virtual void do_print() const ;
-
-};
-#endif // VERTICAL_ALIGN_SPANNER_HH
+++ /dev/null
-/*
- vertical-group-element.hh -- declare
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-
- */
-
-#ifndef VERTICAL_GROUP_ELEM_HH
-#define VERTICAL_GROUP_ELEM_HH
-
-#include "axis-group-element.hh"
-/**
- Like Horizontal_group_element, but in X direction
- */
-class Vertical_group_element : public virtual Axis_group_element {
-protected:
- virtual Interval do_height() const;
-
-public:
- Vertical_group_element () ;
-
-};
-
-#endif /* VERTICAL_GROUP_ELEM_HH */
-
+++ /dev/null
-/*
- vertical-group-spanner.hh -- declare Vertical_group_spanner
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef SPAN_VERTICAL_GROUP_HH
-#define SPAN_VERTICAL_GROUP_HH
-
-#include "axis-group-spanner.hh"
-#include "vertical-group-element.hh"
-
-/** An element which groups a line.
- */
-class Vertical_group_spanner : public Axis_group_spanner, public Vertical_group_element
-{
-protected:
- VIRTUAL_COPY_CONS(Score_element);
-public:
-
- Vertical_group_spanner ();
-};
-
-
-#endif // SPAN_VERTICAL_GROUP_HH
+++ /dev/null
-/*
- vertical-align-spanner.cc -- implement Vertical_align_spanner
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include "vertical-align-spanner.hh"
-
-
-
-
-Vertical_align_spanner::Vertical_align_spanner ()
-{
- axis_ = Y_AXIS;
-}
-
-void
-Vertical_align_spanner::do_print ()const
-{
- Align_element::do_print () ;
-}
+++ /dev/null
-/*
- vertical-group-elem.cc -- implement Horizontal_vertical_group_element
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include "vertical-group-element.hh"
-#include "interval.hh"
-#include "item.hh"
-#include "debug.hh"
-
-
-Vertical_group_element::Vertical_group_element()
- : Axis_group_element (Y_AXIS,Y_AXIS)
-{
-}
-
-Interval
-Vertical_group_element::do_height() const
-{
- return Graphical_axis_group::extent (Y_AXIS);
-}
-
-
+++ /dev/null
-/*
- vertical-group-spanner.cc -- implement Vertical_group_spanner
-
- source file of the GNU LilyPond music typesetter
-
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include "vertical-group-spanner.hh"
-#include "item.hh"
-#include "p-col.hh"
-
-Vertical_group_spanner::Vertical_group_spanner ()
-{
- axes_[0] = axes_[1] = Y_AXIS;
-}