2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 2000-2001 The LyX Team.
9 * @author: Jürgen Vigna
11 * ======================================================
14 #ifndef TABULAR_FUNCS_H
15 #define TABULAR_FUNCS_H
23 #include "support/lstrings.h" // for tostr
27 // Perfect case for a template... (Lgb)
30 string const write_attribute(string const & name, T const & t)
35 string str = " " + name + "=\"" + tostr(t) + "\"";
39 string const write_attribute(string const & name, bool const & b);
41 string const write_attribute(string const & name, int const & b);
43 string const write_attribute(string const & name, LyXLength const & value);
44 string const tostr(LyXAlignment const & num);
45 string const tostr(LyXTabular::VAlignment const & num);
46 string const tostr(LyXTabular::BoxType const & num);
48 // I would have liked a fromstr template a lot better. (Lgb)
49 extern bool string2type(string const str, LyXAlignment & num);
50 extern bool string2type(string const str, LyXTabular::VAlignment & num);
51 extern bool string2type(string const str, LyXTabular::BoxType & num);
52 extern bool string2type(string const str, bool & num);
53 extern bool getTokenValue(string const & str, char const * token, string &ret);
54 extern bool getTokenValue(string const & str, char const * token, int & num);
55 extern bool getTokenValue(string const & str, char const * token,
57 extern bool getTokenValue(string const & str, char const * token,
58 LyXTabular::VAlignment & num);
59 extern bool getTokenValue(string const & str, char const * token,
60 LyXTabular::BoxType & num);
61 extern bool getTokenValue(string const & str, char const * token, bool & flag);
62 extern bool getTokenValue(string const & str, char const * token,
64 extern void l_getline(std::istream & is, string & str);