X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetpagebreak.h;h=57bb3b35f20d1dafce3f9d72307bc7c0c5c46b18;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=4c469e161c9cda37c44d0da68e056be2c0623519;hpb=6c300f72a217722652dc27db9108e1050028979c;p=lyx.git diff --git a/src/insets/insetpagebreak.h b/src/insets/insetpagebreak.h index 4c469e161c..57bb3b35f2 100644 --- a/src/insets/insetpagebreak.h +++ b/src/insets/insetpagebreak.h @@ -14,22 +14,22 @@ #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 &, odocstream &, + virtual int latex(Buffer const &, odocstream &, OutputParams const &) const; int plaintext(Buffer const &, odocstream &, @@ -40,11 +40,16 @@ public: 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 { @@ -53,6 +58,37 @@ private: }; +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_NEWLINE_H +#endif // INSET_PAGEBREAK_H