From: Jean-Marc Lasgouttes Date: Fri, 9 Sep 2005 14:52:55 +0000 (+0000) Subject: fix linking of tex2lyx by moving code out of Counters class X-Git-Tag: 1.6.10~13932 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=120b55bc7ca1918ef898a59a99ae5f309e2f0390;p=lyx.git fix linking of tex2lyx by moving code out of Counters class git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10433 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/ChangeLog b/src/ChangeLog index f54846e231..65e6370a5c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2005-09-09 Jean-Marc Lasgouttes + + * buffer_funcs.C (setCounter): put the code to compute enum label + here (where it belongs). + + * counters.C (enumLabel): move code to buffer_funcs.C. + 2005-09-07 Georg Baum * outputparams.[Ch]: store local_font instead of local_language diff --git a/src/buffer_funcs.C b/src/buffer_funcs.C index 38a39a79c8..ef0b89ebfe 100644 --- a/src/buffer_funcs.C +++ b/src/buffer_funcs.C @@ -438,7 +438,27 @@ void setCounter(Buffer const & buf, ParIterator & it) counters.step(enumcounter); - par.params().labelString(counters.enumLabel(enumcounter, buf)); + string format; + + switch (par.itemdepth) { + case 0: + format = N_("\\arabic{enumi}."); + break; + case 1: + format = N_("(\\alph{enumii})"); + break; + case 2: + format = N_("\\roman{enumiii}."); + break; + case 3: + format = N_("\\Alph{enumiv}."); + break; + default: + // not a valid enumdepth... + break; + } + + par.params().labelString(counters.counterLabel(buf.B_(format))); } else if (layout->labeltype == LABEL_BIBLIO) {// ale970302 counters.step("bibitem"); int number = counters.value("bibitem"); diff --git a/src/counters.C b/src/counters.C index 29df4ed5df..2ef261a3d9 100644 --- a/src/counters.C +++ b/src/counters.C @@ -14,7 +14,6 @@ #include "counters.h" #include "debug.h" -#include "gettext.h" #include "support/lstrings.h" #include "support/convert.h" @@ -314,24 +313,3 @@ string Counters::counterLabel(string const & format) //lyxerr << "counterLabel: " << format << " -> " << label << endl; return label; } - - -string Counters::enumLabel(string const & ctr, Buffer const & buf) -{ - string format; - - if (ctr == "enumi") { - format = N_("\\arabic{enumi}."); - } - else if (ctr == "enumii") { - format = N_("(\\alph{enumii})"); - } - else if (ctr == "enumiii") { - format = N_("\\roman{enumiii}."); - } - else if (ctr == "enumiv") { - format = N_("\\Alph{enumiv}."); - } - - return counterLabel(buf.B_(format)); -} diff --git a/src/counters.h b/src/counters.h index 4aee7f93ae..df9a0a6149 100644 --- a/src/counters.h +++ b/src/counters.h @@ -18,8 +18,6 @@ #include #include -#include "buffer.h" - /// This represents a single counter. class Counter { public: @@ -78,8 +76,6 @@ public: /// A complete expanded label, like 2.1.4 for a subsubsection /// according to the given format std::string counterLabel(std::string const & format); - /// A complete label, like 1.a for enumerations - std::string enumLabel(std::string const & ctr, Buffer const & buf); private: /// A counter label's single item, 1 for subsection number in /// the 2.1.4 subsubsection number label.