2 * \file InsetOptArg.cpp
3 * This file is part of LyX, the document processor.
4 * Licence details can be found in the file COPYING.
6 * \author Martin Vermeer
8 * Full author contact details are available in file CREDITS.
13 #include "InsetOptArg.h"
15 #include "support/debug.h"
16 #include "support/docstream.h"
17 #include "support/gettext.h"
24 InsetOptArg::InsetOptArg(BufferParams const & ins)
25 : InsetCollapsable(ins)
29 InsetOptArg::InsetOptArg(InsetOptArg const & in)
30 : InsetCollapsable(in)
34 Inset * InsetOptArg::clone() const
36 return new InsetOptArg(*this);
40 docstring InsetOptArg::editMessage() const
42 return _("Opened Optional Argument Inset");
46 void InsetOptArg::write(ostream & os) const
48 os << "OptArg" << "\n";
49 InsetCollapsable::write(os);
53 int InsetOptArg::latex(odocstream &, OutputParams const &) const
59 int InsetOptArg::plaintext(odocstream &, OutputParams const &) const
61 return 0; // do not output optional arguments
65 int InsetOptArg::docbook(odocstream &, OutputParams const &) const
71 int InsetOptArg::latexOptional(odocstream & os,
72 OutputParams const & runparams) const
75 int ret = InsetText::latex(ss, runparams);
76 docstring str = ss.str();
77 if (str.find(']') != docstring::npos)
78 str = '{' + str + '}';
79 os << '[' << str << ']';