* This file is part of LyX, the document processor.
* Licence details can be found in the file COPYING.
*
- * \author André Pönitz
+ * \author André Pönitz
*
* Full author contact details are available in file CREDITS.
*/
#ifndef INSET_VSPACE_H
#define INSET_VSPACE_H
-
#include "Inset.h"
#include "VSpace.h"
-#include "MailInset.h"
namespace lyx {
-class InsetVSpace : public Inset {
+class InsetVSpace : public Inset
+{
public:
///
- InsetVSpace() {}
+ InsetVSpace() : Inset(0) {}
///
InsetVSpace(VSpace const &);
///
~InsetVSpace();
+ /// How much?
+ VSpace const & space() const { return space_; }
///
- void metrics(MetricsInfo & mi, Dimension & dim) const;
+ InsetCode lyxCode() const { return VSPACE_CODE; }
///
- void draw(PainterInfo & pi, int x, int y) const;
+ bool hasSettings() const { return true; }
///
- int latex(Buffer const &, odocstream &,
- OutputParams const &) const;
+ docstring contextMenu(BufferView const & bv, int x, int y) const;
///
- int plaintext(Buffer const &, odocstream &,
- OutputParams const &) const;
+ static void string2params(std::string const &, VSpace &);
///
- int docbook(Buffer const &, odocstream &,
- OutputParams const &) const;
+ static std::string params2string(VSpace const &);
+private:
///
- void read(Buffer const &, Lexer & lex);
+ void metrics(MetricsInfo & mi, Dimension & dim) const;
///
- void write(Buffer const & buf, std::ostream & os) const;
+ void draw(PainterInfo & pi, int x, int y) const;
///
- DisplayType display() const { return AlignCenter; }
- /// How much?
- VSpace const & space() const { return space_; }
-
-protected:
+ int latex(odocstream &, OutputParams const &) const;
///
- virtual void doDispatch(Cursor & cur, FuncRequest & cmd);
-
-private:
- virtual Inset * clone() const;
+ int plaintext(odocstream &, OutputParams const &) const;
///
- docstring const label() const;
-
+ int docbook(odocstream &, OutputParams const &) const;
+ /// Note that this returns the inset rather than writing it,
+ /// so it will actually be written after the present paragraph.
+ /// The normal case is that this inset will be on a line by
+ /// itself, and in that case the present paragraph will not,
+ /// in fact, appear at all.
+ docstring xhtml(XHTMLStream &, OutputParams const &) const;
///
- VSpace space_;
-};
-
-
-class InsetVSpaceMailer : public MailInset {
-public:
+ void read(Lexer & lex);
///
- InsetVSpaceMailer(InsetVSpace & inset);
+ void write(std::ostream & os) const;
///
- virtual Inset & inset() const { return inset_; }
+ DisplayType display() const { return AlignCenter; }
///
- virtual std::string const & name() const { return name_; }
+ void doDispatch(Cursor & cur, FuncRequest & cmd);
///
- virtual std::string const inset2string(Buffer const &) const;
+ bool getStatus(Cursor & cur, FuncRequest const & cmd, FuncStatus &) const;
///
- static void string2params(std::string const &, VSpace &);
+ Inset * clone() const { return new InsetVSpace(*this); }
///
- static std::string const params2string(VSpace const &);
-private:
+ docstring const label() const;
///
- static std::string const name_;
+ bool showInsetDialog(BufferView * bv) const;
+
///
- InsetVSpace & inset_;
+ VSpace space_;
};