X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ftabular_funcs.h;h=e2ce28f1e7948b9be1a76b371f1c000d0b070001;hb=b99a5acc7f18c3f885856fa962c0f0a63a0ca5ad;hp=d231e5592c1c04a694f1c9fc9c49578ac4841ab2;hpb=feed97be54568a15cda31f309d58f029f0d10daf;p=lyx.git diff --git a/src/tabular_funcs.h b/src/tabular_funcs.h index d231e5592c..e2ce28f1e7 100644 --- a/src/tabular_funcs.h +++ b/src/tabular_funcs.h @@ -1,35 +1,41 @@ // -*- 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 "layout.h" #include "tabular.h" +#include "support/lstrings.h" // for tostr +#include // Perfect case for a template... (Lgb) // or perhaps not... template -string const write_attribute(string const & name, T const & 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); @@ -40,17 +46,17 @@ 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, const char * token, string &ret); -extern bool getTokenValue(string const & str, const char * token, int & num); -extern bool getTokenValue(string const & str, const char * token, - LyXAlignment & num); -extern bool getTokenValue(string const & str, const char * token, - LyXTabular::VAlignment & num); -extern bool getTokenValue(string const & str, const char * token, - LyXTabular::BoxType & num); -extern bool getTokenValue(string const & str, const char * token, bool & flag); -extern bool getTokenValue(string const & str, const char * token, - LyXLength & len); -extern void l_getline(istream & is, string & str); +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