*
* \author John Levon
*
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
*/
#ifndef INSET_NEWLINE_H
#include "inset.h"
-class InsetNewline : public Inset {
-public:
-
- InsetNewline();
-
- virtual Inset * clone(Buffer const &, bool = false) const {
- return new InsetNewline;
- }
- Inset::Code lyxCode() const { return Inset::NEWLINE_CODE; }
+namespace lyx {
- virtual int ascent(BufferView *, LyXFont const &) const;
+class InsetNewline : public InsetOld {
+public:
- virtual int descent(BufferView *, LyXFont const &) const;
+ InsetNewline() {}
- virtual int width(BufferView *, LyXFont const &) const;
+ InsetBase::Code lyxCode() const { return InsetBase::NEWLINE_CODE; }
- virtual void draw(BufferView *, LyXFont const &,
- int baseline, float & x, bool cleared) const;
+ bool metrics(MetricsInfo &, Dimension &) const;
- virtual int latex(Buffer const *, std::ostream &, bool fragile, bool free_spc) const;
+ virtual void draw(PainterInfo & pi, int x, int y) const;
- virtual int ascii(Buffer const *, std::ostream &, int linelen) const;
+ virtual int latex(Buffer const &, odocstream &,
+ OutputParams const &) const;
- virtual int linuxdoc(Buffer const *, std::ostream &) const;
+ virtual int plaintext(Buffer const &, odocstream &,
+ OutputParams const &) const;
- virtual int docbook(Buffer const *, std::ostream &, bool) const;
+ virtual int docbook(Buffer const &, odocstream &,
+ OutputParams const &) const;
- virtual void read(Buffer const *, LyXLex & lex);
+ virtual void read(Buffer const &, LyXLex & lex);
- virtual 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
virtual bool directWrite() const { return true; }
+ /// is this equivalent to a space (which is BTW different from
+ // a line separator)?
+ bool isSpace() const;
+private:
+ virtual std::auto_ptr<InsetBase> doClone() const
+ {
+ return std::auto_ptr<InsetBase>(new InsetNewline);
+ }
};
+
+} // namespace lyx
+
#endif // INSET_NEWLINE_H