/// Update the counters of this inset and of its contents
void InsetBibitem::updateLabels(ParIterator const &)
{
- Counters & counters = buffer().params().documentClass().counters();
+ Counters & counters = buffer().masterBuffer()->params().documentClass().counters();
docstring const bibitem = from_ascii("bibitem");
if (counters.hasCounter(bibitem) && getParam("label").empty()) {
counters.step(bibitem);
void InsetFoot::updateLabels(ParIterator const & it)
{
- DocumentClass const & tclass = buffer().params().documentClass();
+ DocumentClass const & tclass = buffer().masterBuffer()->params().documentClass();
Counters & cnts = tclass.counters();
docstring const foot = from_ascii("footnote");
Paragraph const & outer = it.paragraph();
void InsetListings::updateLabels(ParIterator const & it)
{
- Counters & cnts = buffer().params().documentClass().counters();
+ Counters & cnts = buffer().masterBuffer()->params().documentClass().counters();
string const saveflt = cnts.current_float();
// Tell to captions what the current float is
void InsetTabular::updateLabels(ParIterator const & it)
{
// In a longtable, tell captions what the current float is
- Counters & cnts = buffer().params().documentClass().counters();
+ Counters & cnts = buffer().masterBuffer()->params().documentClass().counters();
string const saveflt = cnts.current_float();
if (tabular.is_long_tabular)
cnts.current_float("table");
if (producesOutput())
lyx::updateLabels(buffer(), it2);
else {
- DocumentClass const & tclass = buffer().params().documentClass();
+ DocumentClass const & tclass = buffer().masterBuffer()->params().documentClass();
Counters const savecnt = tclass.counters();
lyx::updateLabels(buffer(), it2);
tclass.counters() = savecnt;
void catInit()
{
+ static bool init_done = false;
+ if (init_done)
+ return;
+ init_done = true;
+
fill(theCatcode, theCatcode + 256, catOther);
fill(theCatcode + 'a', theCatcode + 'z' + 1, catLetter);
fill(theCatcode + 'A', theCatcode + 'Z' + 1, catLetter);
void Parser::tokenize_one()
{
+ catInit();
char c;
if (!is_.get(c))
return;
void Parser::tokenize()
{
- static bool init_done = false;
-
- if (!init_done) {
- catInit();
- init_done = true;
- }
-
while (is_)
tokenize_one();
}