]> git.lyx.org Git - lyx.git/blobdiff - src/insets/InsetSpace.h
Cocoa based Qt-4.6 needs to paint every character separately to match metrics computa...
[lyx.git] / src / insets / InsetSpace.h
index d3842ddd05b43a50e2d84f928eb35accc959de10..5496e3c8489b30a2e269c00ecff84b513a7877fa 100644 (file)
@@ -23,8 +23,7 @@ namespace lyx {
 
 class LaTeXFeatures;
 
-class InsetSpaceParams {
-public:
+struct InsetSpaceParams {
        /// The different kinds of spaces we support
        enum Kind {
                /// Normal space ('\ ')
@@ -81,7 +80,7 @@ public:
        ///
        Kind kind;
        ///
-       Length length;
+       GlueLength length;
        /**
         * Whether these params are to be used in mathed.
         * This determines the set of valid kinds.
@@ -95,22 +94,20 @@ class InsetSpace : public Inset
 {
 public:
        ///
-       InsetSpace() {}
+       InsetSpace() : Inset(0) {}
        ///
        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 &);
        ///
        static std::string params2string(InsetSpaceParams const &);
        ///
-       Length length() const;
+       GlueLength length() const;
 
        ///
        docstring toolTip(BufferView const & bv, int x, int y) const;
@@ -123,26 +120,27 @@ 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 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 edit(Cursor & cur, bool front,
-               EntryDirection entry_from = ENTRY_DIRECTION_IGNORE);
+       void toString(odocstream &) const;
        ///
-       EDITABLE editable() const { return IS_EDITABLE; }
+       void forToc(docstring &, size_t) const;
+       ///
+       bool hasSettings() 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
+       /// 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; }
@@ -150,7 +148,9 @@ public:
        // a line separator)?
        bool isSpace() const { return true; }
        ///
-       docstring contextMenu(BufferView const & bv, int x, int y) const;
+       docstring contextMenuName() const;
+       ///
+       bool clickable(int /* x */, int /* y */) const { return true; }
 protected:
        ///
        Inset * clone() const { return new InsetSpace(*this); }
@@ -161,8 +161,6 @@ public:
        bool getStatus(Cursor & cur, FuncRequest const & cmd, FuncStatus &) const;
 
 private:
-       ///
-       bool showInsetDialog(BufferView * bv) const;
        ///
        InsetSpaceParams params_;
 };