Systematic use of tm_ostream class instead of ostream (removing dependency on std)
[texmacs.git] / src / src / Typeset / Format / stack_border.hpp
blobdf94c514aecc73e55f84bcdd700204456e1a484b
2 /******************************************************************************
3 * MODULE : stack_border.hpp
4 * DESCRIPTION: Border properties of a stack of page items
5 * COPYRIGHT : (C) 1999 Joris van der Hoeven
6 *******************************************************************************
7 * This software falls under the GNU general public license version 3 or later.
8 * It comes WITHOUT ANY WARRANTY WHATSOEVER. For details, see the file LICENSE
9 * in the root directory or <http://www.gnu.org/licenses/gpl-3.0.html>.
10 ******************************************************************************/
12 #ifndef STACK_BORDER_H
13 #define STACK_BORDER_H
14 #include "space.hpp"
16 class stack_border_rep: public concrete_struct {
17 public:
18 SI height; // default distance between successive base lines
19 SI sep; // (~~PAR_SEP) sep-ver_sep is maximal amount of shoving
20 SI hor_sep; // min. hor. ink sep. when lines are shoved into each other
21 SI ver_sep; // minimal separation of ink
22 SI bot; // logical bottom of lines
23 SI top; // logical top of lines
25 SI height_before;
26 SI sep_before;
27 SI hor_sep_before;
28 SI ver_sep_before;
30 space vspc_before, vspc_after;
31 bool nobr_before, nobr_after;
33 inline stack_border_rep ():
34 height (0), sep (0), hor_sep (0), ver_sep (0), bot (0), top (0),
35 height_before (0), sep_before (0), hor_sep_before (0), ver_sep_before (0),
36 vspc_before (0), vspc_after (0),
37 nobr_before (false), nobr_after (false) {}
40 class stack_border {
41 CONCRETE(stack_border);
42 inline stack_border (): rep (tm_new<stack_border_rep> ()) {}
44 CONCRETE_CODE(stack_border);
46 inline tm_ostream&
47 operator << (tm_ostream& out, stack_border sb) {
48 return out << "[Before: " << sb->vspc_before
49 << ", " << sb->nobr_before << "; "
50 << "After: " << sb->vspc_after
51 << ", " << sb->nobr_after << "]";
54 #endif // defined STACK_BORDER_H