2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 1998 The LyX Team.
9 * ======================================================
19 #include "insetcollapsable.h"
22 #include <boost/signals/signal0.hpp>
29 class InsetFloat : public InsetCollapsable {
32 InsetFloat(BufferParams const &, string const &);
34 InsetFloat(InsetFloat const &, bool same_id = false);
38 void write(Buffer const * buf, std::ostream & os) const;
40 void read(Buffer const * buf, LyXLex & lex);
42 void validate(LaTeXFeatures & features) const;
44 Inset * clone(Buffer const &, bool same_id = false) const;
46 Inset::Code lyxCode() const { return Inset::FLOAT_CODE; }
48 int latex(Buffer const *, std::ostream &, bool fragile, bool fp) const;
50 int docbook(Buffer const *, std::ostream &, bool mixcont) const;
52 string const editMessage() const;
54 bool insetAllowed(Inset::Code) const;
56 string const & type() const;
58 void placement(string const & p);
60 string const & placement() const;
66 void addToToc(toc::TocList &, Buffer const *) const;
68 bool showInsetDialog(BufferView *) const;
70 boost::signal0<void> hideDialog;
75 string floatPlacement_;