X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fsimple-spacer.hh;h=675e3baf543882362218e19348f15822a99d3fd7;hb=3ea291c21ce16aeaf00b6a6f500bf0a3a9b790d9;hp=b5aeeb200d9e28f02a17eafa2d43dbcede37779c;hpb=408475516f7db93450e45c7e1b4a2660a4fa96c0;p=lilypond.git diff --git a/lily/include/simple-spacer.hh b/lily/include/simple-spacer.hh index b5aeeb200d..675e3baf54 100644 --- a/lily/include/simple-spacer.hh +++ b/lily/include/simple-spacer.hh @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1999--2011 Han-Wen Nienhuys + Copyright (C) 1999--2012 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -30,8 +30,6 @@ class Simple_spacer public: Simple_spacer (); - bool minimal_; - void solve (Real line_len, bool ragged); void add_rod (int l, int r, Real dist); void add_spring (Spring const &); @@ -40,15 +38,14 @@ public: Real configuration_length (Real) const; vector spring_positions () const; + void set_force (Real force); Real force () const; - Real line_len () const; Real force_penalty (bool ragged) const; bool fits () const; DECLARE_SIMPLE_SMOBS (Simple_spacer); private: - Real expand_line (); Real compress_line (); Real rod_force (int l, int r, Real dist); @@ -60,6 +57,12 @@ private: bool fits_; }; +/* returns a vector of dimensions breaks.size () * breaks.size () */ +vector get_line_forces (vector const &columns, + Real line_len, + Real indent, + bool ragged); + Column_x_positions get_line_configuration (vector const &columns, Real line_len, Real indent,