X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Finsets%2Finsetpagebreak.h;h=57bb3b35f20d1dafce3f9d72307bc7c0c5c46b18;hb=e28331ed63062dea10d0a21b9ec12034b4b17b9a;hp=f3a6118ebc7f60ba4edc274d4f696ece1172ab1b;hpb=15c913fe5a896f6d53dd50a64ed83be3ed1d8dc4;p=lyx.git diff --git a/src/insets/insetpagebreak.h b/src/insets/insetpagebreak.h index f3a6118ebc..57bb3b35f2 100644 --- a/src/insets/insetpagebreak.h +++ b/src/insets/insetpagebreak.h @@ -14,41 +14,81 @@ #include "inset.h" +#include "gettext.h" + + +namespace lyx { class InsetPagebreak : public InsetOld { public: - InsetPagebreak() {} - std::auto_ptr clone() const { - return std::auto_ptr(new InsetPagebreak); - } - - InsetOld::Code lyxCode() const { return InsetOld::LINE_CODE; } + 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 &, std::ostream &, - LatexRunParams const &) const; - - int ascii(Buffer const &, std::ostream &, - LatexRunParams const &) const; + virtual int latex(Buffer const &, odocstream &, + OutputParams const &) const; - int linuxdoc(Buffer const &, std::ostream &, - LatexRunParams const &) const; + int plaintext(Buffer const &, odocstream &, + OutputParams const &) const; - int docbook(Buffer const &, std::ostream &, - LatexRunParams const &) const; + 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 + { + return std::auto_ptr(new InsetPagebreak); + } }; -#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