#include "BufferView.h"
#include "LaTeXFeatures.h"
+#include "buffer.h"
#include "cursor.h"
#include "debug.h"
#include "funcrequest.h"
#include "math_data.h"
#include "math_factory.h"
#include "math_support.h"
+#include "outputparams.h"
+#include "sgml.h"
#include "frontends/LyXView.h"
#include "frontends/Dialogs.h"
}
-void RefInset::priv_dispatch(LCursor & cur, FuncRequest & cmd)
+void RefInset::doDispatch(LCursor & cur, FuncRequest & cmd)
{
switch (cmd.action) {
case LFUN_INSET_MODIFY:
break;
default:
- CommandInset::priv_dispatch(cur, cmd);
+ CommandInset::doDispatch(cur, cmd);
break;
}
}
int RefInset::linuxdoc(std::ostream & os, OutputParams const &) const
{
os << "<ref id=\"" << asString(cell(0))
- << "\" name=\"" << asString(cell(1)) << "\" >";
+ << "\" name=\"" << asString(cell(1)) << "\">";
return 0;
}
-int RefInset::docbook(std::ostream & os, OutputParams const &) const
+int RefInset::docbook(Buffer const & buf, std::ostream & os, OutputParams const & runparams) const
{
if (cell(1).empty()) {
- os << "<xref linkend=\"" << asString(cell(0)) << "\">";
+ os << "<xref linkend=\"" << sgml::cleanID(buf, runparams, asString(cell(0)));
+ if (runparams.flavor == OutputParams::XML)
+ os << "\"/>";
+ else
+ os << "\">";
} else {
- os << "<link linkend=\"" << asString(cell(0))
+ os << "<link linkend=\"" << sgml::cleanID(buf, runparams, asString(cell(0)))
<< "\">" << asString(cell(1)) << "</link>";
}