+2005-09-09 Jean-Marc Lasgouttes <lasgouttes@lyx.org>
+
+ * 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 <Georg.Baum@post.rwth-aachen.de>
* outputparams.[Ch]: store local_font instead of local_language
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");
#include "counters.h"
#include "debug.h"
-#include "gettext.h"
#include "support/lstrings.h"
#include "support/convert.h"
//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));
-}
#include <map>
#include <string>
-#include "buffer.h"
-
/// This represents a single counter.
class Counter {
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.