mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-24 13:48:59 +00:00
9548351ef8
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@4349 a592a061-630c-0410-9148-cb99ea01b6c8
67 lines
2.1 KiB
C++
67 lines
2.1 KiB
C++
// -*- C++ -*-
|
|
/* This file is part of
|
|
* ======================================================
|
|
*
|
|
* LyX, The Document Processor
|
|
*
|
|
* Copyright 2000-2001 The LyX Team.
|
|
*
|
|
* @author: Jürgen Vigna
|
|
*
|
|
* ======================================================
|
|
*/
|
|
|
|
#ifndef TABULAR_FUNCS_H
|
|
#define TABULAR_FUNCS_H
|
|
|
|
#ifdef __GNUG__
|
|
#pragma interface
|
|
#endif
|
|
|
|
#include "LString.h"
|
|
#include "tabular.h"
|
|
#include "support/lstrings.h" // for tostr
|
|
|
|
#include <iosfwd>
|
|
|
|
// Perfect case for a template... (Lgb)
|
|
// or perhaps not...
|
|
template<class T>
|
|
string const write_attribute(string const & name, T const & t)
|
|
{
|
|
if (tostr(t).empty())
|
|
return string();
|
|
|
|
string str = " " + name + "=\"" + tostr(t) + "\"";
|
|
return str;
|
|
}
|
|
template<>
|
|
string const write_attribute(string const & name, bool const & b);
|
|
template<>
|
|
string const write_attribute(string const & name, int const & b);
|
|
template<>
|
|
string const write_attribute(string const & name, LyXLength const & value);
|
|
string const tostr(LyXAlignment const & num);
|
|
string const tostr(LyXTabular::VAlignment const & num);
|
|
string const tostr(LyXTabular::BoxType const & num);
|
|
|
|
// I would have liked a fromstr template a lot better. (Lgb)
|
|
extern bool string2type(string const str, LyXAlignment & num);
|
|
extern bool string2type(string const str, LyXTabular::VAlignment & num);
|
|
extern bool string2type(string const str, LyXTabular::BoxType & num);
|
|
extern bool string2type(string const str, bool & num);
|
|
extern bool getTokenValue(string const & str, char const * token, string &ret);
|
|
extern bool getTokenValue(string const & str, char const * token, int & num);
|
|
extern bool getTokenValue(string const & str, char const * token,
|
|
LyXAlignment & num);
|
|
extern bool getTokenValue(string const & str, char const * token,
|
|
LyXTabular::VAlignment & num);
|
|
extern bool getTokenValue(string const & str, char const * token,
|
|
LyXTabular::BoxType & num);
|
|
extern bool getTokenValue(string const & str, char const * token, bool & flag);
|
|
extern bool getTokenValue(string const & str, char const * token,
|
|
LyXLength & len);
|
|
extern void l_getline(std::istream & is, string & str);
|
|
|
|
#endif
|