X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2FInsetSpace.h;h=2784022955b6e80adfe84234ced1eec780394325;hb=62af7ee772f16f154225d2d0b65d77f4376b6001;hp=5aed4d50e7d346886e46f692b43125670a007009;hpb=603b94966ac8b995ec9d1ad79e05774e57fa9aed;p=lyx.git diff --git a/src/insets/InsetSpace.h b/src/insets/InsetSpace.h index 5aed4d50e7..2784022955 100644 --- a/src/insets/InsetSpace.h +++ b/src/insets/InsetSpace.h @@ -23,14 +23,15 @@ namespace lyx { class LaTeXFeatures; -class InsetSpaceParams { -public: +struct InsetSpaceParams { /// The different kinds of spaces we support enum Kind { /// Normal space ('\ ') NORMAL, /// Protected (no break) space ('~') PROTECTED, + /// Visible ("open box") space ('\textvisiblespace') + VISIBLE, /// Thin space ('\,') THIN, /// Medium space ('\:') @@ -73,7 +74,7 @@ public: CUSTOM_PROTECTED }; /// - InsetSpaceParams(bool m = false) : kind(NORMAL), math(m) {} + explicit InsetSpaceParams(bool m = false) : kind(NORMAL), math(m) {} /// void write(std::ostream & os) const; /// @@ -99,11 +100,9 @@ public: /// explicit InsetSpace(InsetSpaceParams const & par); /// - InsetSpaceParams params() const { return params_; } + InsetSpaceParams const & params() const { return params_; } /// InsetSpaceParams::Kind kind() const; - /// - ~InsetSpace(); /// static void string2params(std::string const &, InsetSpaceParams &); @@ -123,25 +122,29 @@ public: /// Will not be used when lyxf3 void read(Lexer & lex); /// - 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 &) const; /// docstring xhtml(XHTMLStream &, OutputParams const &) const; /// void validate(LaTeXFeatures & features) const; - /// the string that is passed to the TOC - void tocString(odocstream &) const; + /// + void toString(odocstream &) const; + /// + void forOutliner(docstring &, size_t const, bool const) const; /// bool hasSettings() const { return true; } /// + bool clickable(BufferView const &, int, int) const { return true; } + /// InsetCode lyxCode() const { return SPACE_CODE; } - /// is this an expandible space (rubber length)? - bool isStretchableSpace() const; - - // should this inset be handled like a normal charater + /// does this inset try to use all available space (like \\hfill does)? + bool isHfill() const; + /// should this inset be handled like a normal character? bool isChar() const { return true; } /// is this equivalent to a letter? bool isLetter() const { return false; } @@ -149,7 +152,7 @@ public: // a line separator)? bool isSpace() const { return true; } /// - docstring contextMenu(BufferView const & bv, int x, int y) const; + std::string contextMenuName() const; protected: /// Inset * clone() const { return new InsetSpace(*this); } @@ -160,8 +163,6 @@ public: bool getStatus(Cursor & cur, FuncRequest const & cmd, FuncStatus &) const; private: - /// - bool showInsetDialog(BufferView * bv) const; /// InsetSpaceParams params_; };