2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 2001 The LyX Team.
9 * ======================================================
12 #ifndef InsetMinipage_H
13 #define InsetMinipage_H
19 #include "insetcollapsable.h"
21 #include <sigc++/signal_system.h>
23 /** The minipage inset
26 class InsetMinipage : public InsetCollapsable {
46 void Write(Buffer const * buf, std::ostream & os) const;
48 void Read(Buffer const * buf, LyXLex & lex);
50 Inset * Clone(Buffer const &) const;
52 int ascent(BufferView *, LyXFont const &) const;
54 int descent(BufferView *, LyXFont const &) const;
56 Inset::Code LyxCode() const { return Inset::MINIPAGE_CODE; }
58 int Latex(Buffer const *, std::ostream &, bool fragile, bool fp) const;
60 string const EditMessage() const;
62 bool InsertInsetAllowed(Inset * inset) const;
68 InnerPosition innerPos() const;
70 void innerPos(InnerPosition);
72 string const & height() const;
74 void height(string const &);
76 string const & width() const;
78 void width(string const &);
84 void widthp(string const &);
86 SigC::Signal0<void> hideDialog;
88 void InsetButtonRelease(BufferView * bv, int x, int y, int button);
90 int getMaxWidth(Painter &, UpdatableInset const *) const;
92 bool needFullRow() const { return false; }
97 InnerPosition inner_pos_;