X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetCommand.h;h=39b1cbbef36ae745633b307033de70cd3d192e85;hb=625e7609f0bb4087f0cd91ae3853beee6c6ba402;hp=feb6626da451f64d5176868b32961b173694be1e;hpb=6e0f8f89b009429503254f88f7182df3eec39608;p=lyx.git diff --git a/src/insets/InsetCommand.h b/src/insets/InsetCommand.h index feb6626da4..39b1cbbef3 100644 --- a/src/insets/InsetCommand.h +++ b/src/insets/InsetCommand.h @@ -16,11 +16,11 @@ #include "Inset.h" #include "InsetCommandParams.h" #include "RenderButton.h" -#include "Cursor.h" namespace lyx { +class Cursor; ///////////////////////////////////////////////////////////////////////// // @@ -35,24 +35,23 @@ class InsetCommand : public Inset { public: /// - InsetCommand(Buffer *, InsetCommandParams const &, - std::string const & mailer_name); + InsetCommand(Buffer *, InsetCommandParams const &); /// InsetCommand(InsetCommand const & rhs); /// + InsetCommand & operator=(InsetCommand const & rhs); + /// virtual ~InsetCommand(); /// InsetCommand * asInsetCommand() { return this; } /// InsetCommand const * asInsetCommand() const { return this; } - - /// returns true if params are successfully read - static bool string2params(std::string const &, std::string const & name, + /// \return true if params are successfully read + static bool string2params(std::string const & data, InsetCommandParams &); /// - static std::string params2string(std::string const & name, - InsetCommandParams const &); + static std::string params2string(InsetCommandParams const &); /// InsetCommandParams const & params() const { return p_; } /// @@ -63,15 +62,13 @@ public: void setParam(std::string const & name, docstring const & value); /// FIXME Remove docstring const getFirstNonOptParam() const { return p_.getFirstNonOptParam(); } - /// whether to include this inset in the strings generated for the TOC - virtual bool isInToc() const { return false; } - /// \name Methods inherited from Inset class + /// \name Public functions inherited from Inset class //@{ /// void write(std::ostream & os) const { p_.write(os); } /// - void read(Lexer & lex) { p_.read(lex); } + void read(Lexer & lex) { p_.Read(lex, &buffer()); } /// void doDispatch(Cursor & cur, FuncRequest & cmd); /// @@ -81,17 +78,23 @@ public: /// void draw(PainterInfo & pi, int x, int y) const; /// - int latex(odocstream &, OutputParams const &) const; + void latex(otexstream &, OutputParams const &) const; /// - int plaintext(odocstream &, OutputParams const &) const; + int plaintext(odocstringstream & ods, OutputParams const & op, + size_t max_length = INT_MAX) const; /// int docbook(odocstream &, OutputParams const & runparams) const; /// bool setMouseHover(BufferView const * bv, bool mouse_hover) const; /// - bool clickable(int, int) const { return hasSettings(); } + bool clickable(BufferView const &, int, int) const { return hasSettings(); } + //@} + +protected: + /// \name Methods relaying to the InsetCommandParams p_ + //@{ /// - docstring contextMenu(BufferView const & bv, int x, int y) const; + std::string contextMenuName() const; /// bool showInsetDialog(BufferView * bv) const; /// @@ -100,7 +103,7 @@ public: //@} protected: - /// \name Methods relaying to the InsetCommandParams + /// \name Functions relaying to the InsetCommandParams //@{ /// Build the complete LaTeX command /// \see InsetCommandParams::getCommand @@ -122,7 +125,7 @@ private: /// This should provide the text for the button virtual docstring screenLabel() const = 0; - /// \name Methods obligated for InsetCommand derived classes + /// \name Static public methods obligated for InsetCommand derived classes //@{ /// Return parameter information for command cmdName. /// Not implemented here. Must be implemented in derived class. @@ -137,8 +140,6 @@ private: /// InsetCommandParams p_; - /// - std::string mailer_name_; /// changes color when mouse enters/leaves this inset mutable std::map mouse_hover_; ///