X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetArgument.h;h=3e200e3b1c173bc1dfbecd74b7b35fe8364f42d3;hb=fd8b4aebb0ee6404a4532abb9934886b19edd108;hp=43000f9bc4b25149eb2bac487b8c83fd6e52c68d;hpb=0345bef67b701e54fd16d9336ec082b474c0146c;p=lyx.git diff --git a/src/insets/InsetArgument.h b/src/insets/InsetArgument.h index 43000f9bc4..3e200e3b1c 100644 --- a/src/insets/InsetArgument.h +++ b/src/insets/InsetArgument.h @@ -9,8 +9,8 @@ * Full author contact details are available in file CREDITS. */ -#ifndef INSETOPTARG_H -#define INSETOPTARG_H +#ifndef INSETARGUMENT_H +#define INSETARGUMENT_H #include "InsetCollapsable.h" @@ -27,36 +27,105 @@ class InsetArgument : public InsetCollapsable { public: /// - InsetArgument(Buffer *); + InsetArgument(Buffer *, std::string const &); /// Outputting the parameter of a LaTeX command - int latexArgument(odocstream &, OutputParams const &, - bool optional) const; + void latexArgument(otexstream & os, OutputParams const & runparams_in, + docstring const & ldelim, docstring const & rdelim, + docstring const & presetarg) const; + + std::string name() const { return name_; } + + /// \name Public functions inherited from Inset class + //@{ /// bool hasSettings() const { return false; } - -private: - /// code of the inset + /// InsetCode lyxCode() const { return ARG_CODE; } /// - docstring name() const { return from_ascii("Argument"); } - /// Standard LaTeX output -- short-circuited - int latex(odocstream &, OutputParams const &) const; - /// Standard plain text output -- short-circuited - int plaintext(odocstream &, OutputParams const &) const; - /// Standard DocBook output -- short-circuited - int docbook(odocstream &, OutputParams const &) const; - /// Standard XHTML output -- short-circuited - docstring xhtml(XHTMLStream &, OutputParams const &) const; - /// Write out to the .lyx file + docstring layoutName() const { return from_ascii("Argument"); } + /// Update the label string of this inset + void updateBuffer(ParIterator const &, UpdateType); + /// + void latex(otexstream &, OutputParams const &) const { } + /// + int plaintext(odocstringstream &, OutputParams const &, size_t) const { return 0; } + /// + int docbook(odocstream &, OutputParams const &) const { return 0; } + /// + docstring xhtml(XHTMLStream &, OutputParams const &) const + { return docstring(); } + /// void write(std::ostream & os) const; - /// should paragraph indendation be ommitted in any case? + /// + void read(Lexer & lex); + /// bool neverIndent() const { return true; } /// + std::string contextMenuName() const; + /// + bool isPassThru() const { return pass_thru_; } + /// + bool resetFontEdit() const { return false; } + //@} + /// \name Public functions inherited from InsetCollapsable class + //@{ + /// + InsetLayout::InsetDecoration decoration() const; + /// + FontInfo getFont() const; + /// + FontInfo getLabelfont() const; + /// + ColorCode labelColor() const; + /// + void setButtonLabel(); + //@} + /// + void addToToc(DocIterator const & dit, bool output_active, + UpdateType utype, TocBackend & backend) const; //override + +private: + /// + docstring toolTip(BufferView const & bv, int, int) const; + /// + std::string name_; + /// + docstring labelstring_; + /// + docstring tooltip_; + /// + FontInfo font_; + /// + FontInfo labelfont_; + /// + std::string decoration_; + /// Are we in a pass-thru context? + bool pass_thru_context_; + /// Is the argument itself have an explicitly pass-thru? + bool pass_thru_local_; + /// Effective pass-thru setting (inherited or local) + bool pass_thru_; + /// + docstring pass_thru_chars_; + /// The type of Toc this is the caption of, empty otherwise. + std::string caption_of_toc_; + +protected: + /// \name Protected functions inherited from Inset class + //@{ + /// + bool getStatus(Cursor &, FuncRequest const &, FuncStatus &) const; + /// + void doDispatch(Cursor & cur, FuncRequest & cmd); + /// Inset * clone() const { return new InsetArgument(*this); } + /// Is the content of this inset part of the immediate (visible) text sequence? + bool isPartOfTextSequence() const { return false; } + //@} }; } // namespace lyx -#endif // INSETOPTARG_H +#endif // INSETARGUMENT_H