X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetpagebreak.h;h=57bb3b35f20d1dafce3f9d72307bc7c0c5c46b18;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=83372ef635ee0b0eeab087e937d5deca7ede8926;hpb=0d449056ef9ace3ef737e4b9aba8d3994615dc18;p=lyx.git diff --git a/src/insets/insetpagebreak.h b/src/insets/insetpagebreak.h index 83372ef635..57bb3b35f2 100644 --- a/src/insets/insetpagebreak.h +++ b/src/insets/insetpagebreak.h @@ -14,34 +14,42 @@ #include "inset.h" +#include "gettext.h" + + +namespace lyx { class InsetPagebreak : public InsetOld { public: - InsetPagebreak() {} InsetBase::Code lyxCode() const { return InsetBase::LINE_CODE; } - void metrics(MetricsInfo &, Dimension &) const; + bool metrics(MetricsInfo &, Dimension &) const; void draw(PainterInfo & pi, int x, int y) const; - int latex(Buffer const &, lyx::odocstream &, + virtual int latex(Buffer const &, odocstream &, OutputParams const &) const; - int plaintext(Buffer const &, lyx::odocstream &, + int plaintext(Buffer const &, odocstream &, OutputParams const &) const; - int docbook(Buffer const &, lyx::odocstream &, + int docbook(Buffer const &, odocstream &, OutputParams const &) const; void read(Buffer const &, LyXLex & lex); - void write(Buffer const & buf, std::ostream & os) const; + virtual void write(Buffer const & buf, std::ostream & os) const; /// We don't need \begin_inset and \end_inset bool directWrite() const { return true; } bool display() const { return true; } + + virtual docstring insetLabel() const { return _("Page Break"); } + + virtual std::string getCmdName() const { return "\\newpage"; } + private: virtual std::auto_ptr doClone() const { @@ -49,4 +57,38 @@ private: } }; -#endif // INSET_NEWLINE_H + +class InsetClearPage : public InsetPagebreak { +public: + InsetClearPage() {} + + docstring insetLabel() const { return _("Clear Page"); } + + std::string getCmdName() const { return "\\clearpage"; } + +private: + virtual std::auto_ptr doClone() const + { + return std::auto_ptr(new InsetClearPage); + } +}; + + +class InsetClearDoublePage : public InsetPagebreak { +public: + InsetClearDoublePage() {} + + docstring insetLabel() const { return _("Clear Double Page"); } + + std::string getCmdName() const { return "\\cleardoublepage"; } + +private: + virtual std::auto_ptr doClone() const + { + return std::auto_ptr(new InsetClearDoublePage); + } +}; + +} // namespace lyx + +#endif // INSET_PAGEBREAK_H