]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetBibitem.cpp
Loop refactoring
[lyx.git] / src / insets / InsetBibitem.cpp
index 221e6291b8b71cd932944162d09ed2a545c696d6..b16687e7d70a2769af07323d81c88536cbbfa935 100644 (file)
@@ -155,8 +155,9 @@ void InsetBibitem::doDispatch(Cursor & cur, FuncRequest & cmd)
                setParam("literal", p["literal"]);
 
                if (p["key"] != old_key) {
+                       // changeRefsIfUnique handles undo
+                       cur.bv().buffer().changeRefsIfUnique(old_key, p["key"]);
                        updateCommand(p["key"]);
-                       cur.bv().buffer().changeRefsIfUnique(old_key, params()["key"]);
                        cur.forceBufferUpdate();
                        buffer().invalidateBibinfoCache();
                }
@@ -231,7 +232,7 @@ docstring bibitemWidest(Buffer const & buffer, OutputParams const & runparams)
 
        InsetBibitem const * bitem = nullptr;
 
-       // FIXME: this font is used unitialized for now but should  be set to
+       // FIXME: this font is used uninitialized for now but should  be set to
        // a proportional font. Here is what Georg Baum has to say about it:
        /*
        bibitemWidest() is supposed to find the bibitem with the widest label in the
@@ -326,7 +327,7 @@ void InsetBibitem::collectBibKeys(InsetIterator const & it, FileNameList & /*che
 
 
 // Update the counters of this inset and of its contents
-void InsetBibitem::updateBuffer(ParIterator const & it, UpdateType utype)
+void InsetBibitem::updateBuffer(ParIterator const & it, UpdateType utype, bool const /*deleted*/)
 {
        BufferParams const & bp = buffer().masterBuffer()->params();
        Counters & counters = bp.documentClass().counters();
@@ -342,20 +343,26 @@ void InsetBibitem::updateBuffer(ParIterator const & it, UpdateType utype)
 }
 
 
-docstring InsetBibitem::xhtml(XHTMLStream & xs, OutputParams const &) const
+void InsetBibitem::docbook(XMLStream &, OutputParams const &) const
+{
+       // Nothing to do: everything is implemented in makeParagraphBibliography.
+}
+
+
+docstring InsetBibitem::xhtml(XMLStream & xs, OutputParams const &) const
 {
        // FIXME XHTML
        // XHTML 1.1 doesn't have the "name" attribute for <a>, so we have to use
-       // the "id" atttribute to get the document to validate. Probably, we will
+       // the "id" attribute to get the document to validate. Probably, we will
        // need to use "name" anyway, eventually, because some browsers do not
        // handle jumping to ids. If we don't do that, though, we can just put the
        // id into the span tag.
        string const attrs =
-               "id='LyXCite-" + to_utf8(html::cleanAttr(getParam("key"))) + "'";
-       xs << html::CompTag("a", attrs);
-       xs << html::StartTag("span", "class='bibitemlabel'");
+                       "id='LyXCite-" + to_utf8(xml::cleanAttr(getParam("key"))) + "'";
+       xs << xml::CompTag("a", attrs);
+       xs << xml::StartTag("span", "class='bibitemlabel'");
        xs << bibLabel();
-       xs << html::EndTag("span");
+       xs << xml::EndTag("span");
        return docstring();
 }