4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
12 #ifndef INSET_VSPACE_H
13 #define INSET_VSPACE_H
21 class InsetVSpace : public Inset
25 InsetVSpace() : Inset(0) {}
27 InsetVSpace(VSpace const &);
29 VSpace const & space() const { return space_; }
31 InsetCode lyxCode() const { return VSPACE_CODE; }
33 bool hasSettings() const { return true; }
35 std::string contextMenuName() const;
37 static void string2params(std::string const &, VSpace &);
39 static std::string params2string(VSpace const &);
42 void metrics(MetricsInfo & mi, Dimension & dim) const;
44 void draw(PainterInfo & pi, int x, int y) const;
46 void latex(otexstream &, OutputParams const &) const;
48 int plaintext(odocstringstream & ods, OutputParams const & op,
49 size_t max_length = INT_MAX) const;
51 int docbook(odocstream &, OutputParams const &) const;
52 /// Note that this returns the inset rather than writing it,
53 /// so it will actually be written after the present paragraph.
54 /// The normal case is that this inset will be on a line by
55 /// itself, and in that case the present paragraph will not,
56 /// in fact, appear at all.
57 docstring xhtml(XHTMLStream &, OutputParams const &) const;
59 void read(Lexer & lex);
61 void write(std::ostream & os) const;
63 DisplayType display() const { return AlignCenter; }
65 void doDispatch(Cursor & cur, FuncRequest & cmd);
67 bool getStatus(Cursor & cur, FuncRequest const & cmd, FuncStatus &) const;
69 Inset * clone() const { return new InsetVSpace(*this); }
71 docstring const label() const;