X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ftabular-old.C;h=1f7d9f576dca4a03eeaafa6a9a2cdb9aecebc49a;hb=98c966c64594611e469313314abd1e59524adb4a;hp=9c7c0cac7f80892abe8c4d2c30fdc386140f1bb2;hpb=bf18321b43f5bd7781efcd61a9eb1849ee4111aa;p=lyx.git diff --git a/src/tabular-old.C b/src/tabular-old.C index 9c7c0cac7f..1f7d9f576d 100644 --- a/src/tabular-old.C +++ b/src/tabular-old.C @@ -1,20 +1,23 @@ /* This file is part of - * ====================================================== - * + * ====================================================== + * * LyX, The Document Processor - * + * * Copyright 2000-2001 The LyX Team. * * @author: Jürgen Vigna * - * ====================================================== + * ====================================================== */ #include #include "tabular.h" +#include "buffer.h" #include "debug.h" + #include "support/lstrings.h" +#include "support/textutils.h" using std::istream; using std::getline; @@ -59,12 +62,12 @@ bool getTokenValue(string const & str, char const * token, int & num) pos += strlen(token) + 1; ch = str[pos]; if ((ch != '"') && (ch != '\'')) { // only read till next space - if (!isdigit(ch)) + if (!IsDigit(ch)) return false; ret += ch; } ++pos; - while ((pos < str.length() - 1) && isdigit(str[pos])) + while ((pos < str.length() - 1) && IsDigit(str[pos])) ret += str[pos++]; num = strToInt(ret); @@ -112,12 +115,12 @@ bool getTokenValue(string const & str, char const * token, bool & flag) pos += strlen(token) + 1; ch = str[pos]; if ((ch != '"') && (ch != '\'')) { // only read till next space - if (!isdigit(ch)) + if (!IsDigit(ch)) return false; ret += ch; } ++pos; - while ((pos < str.length() - 1) && isdigit(str[pos])) + while ((pos < str.length() - 1) && IsDigit(str[pos])) ret += str[pos++]; flag = strToInt(ret); @@ -131,7 +134,7 @@ bool getTokenValue(string const & str, const char * token, LyXLength & len) if (!getTokenValue(str, token, tmp)) return false; return isValidLength(tmp, &len); -} +} inline @@ -158,7 +161,7 @@ void LyXTabular::ReadOld(Buffer const * buf, istream & is, return; if (!getTokenValue(line, "columns", columns_arg)) return; - Init(rows_arg, columns_arg); + Init(buf->params, rows_arg, columns_arg); l_getline(is, line); if (!prefixIs(line, " got" << @@ -166,10 +169,16 @@ void LyXTabular::ReadOld(Buffer const * buf, istream & is, return; } getTokenValue(line, "islongtable", is_long_tabular); - getTokenValue(line, "endhead", endhead.row); - getTokenValue(line, "endfirsthead", endfirsthead.row); - getTokenValue(line, "endfoot", endfoot.row); - getTokenValue(line, "endlastfoot", endlastfoot.row); + int hrow; + int fhrow; + int frow; + int lfrow; + + getTokenValue(line, "endhead", hrow); + getTokenValue(line, "endfirsthead", fhrow); + getTokenValue(line, "endfoot", frow); + getTokenValue(line, "endlastfoot", lfrow); + setHeaderFooterRows(abs(hrow), abs(fhrow), abs(frow), abs(lfrow)); for (int i = 0; i < rows_; ++i) { l_getline(is, line);