4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Lars Gullik Bjønnes
9 * Full author contact details are available in file CREDITS.
15 #include "support/strfwd.h"
22 /** This is a "float layout" object. It contains the parameters for how to
23 * handle the different kinds of floats, default ones and user created ones.
24 * Objects of this class is stored in a container in FloatList. The different
25 * InsetFloat(s) have a pointer/reference through the name of the Floating
26 * so that it knows how the different floats should be handled.
33 Floating(std::string const & type, std::string const & placement,
34 std::string const & ext, std::string const & within,
35 std::string const & style, std::string const & name,
36 std::string const & listName, std::string const & htmlType,
37 std::string const & htmlClass, std::string const & htmlStyle,
38 bool builtin = false);
40 std::string const & floattype() const { return floattype_; }
42 std::string const & placement() const { return placement_; }
44 std::string const & ext() const {return ext_; }
46 std::string const & within() const { return within_; }
48 std::string const & style() const { return style_; }
50 std::string const & name() const { return name_; }
51 /// the title of a list of this kind of float
52 std::string const & listName() const { return listname_; }
53 /// the command used to generate that list, in LaTeX
54 /// if needsFloatPkg() is true, then this is
55 /// \listof{floattype()}
56 /// otherwise it is hardcoded, at present.
57 docstring const & listCommand(std::string const & lang) const;
59 bool needsFloatPkg() const { return needsfloatpkg_; }
60 /// style information, for preamble
61 std::string const & htmlStyle() const { return html_style_; }
62 /// class, for css, defaults to "float-" + type()
63 std::string const & htmlAttrib() const;
64 /// tag type, defaults to "div"
65 std::string const & htmlTag() const;
68 std::string defaultCSSClass() const;
70 std::string floattype_;
72 std::string placement_;
82 std::string listname_;
84 mutable docstring listcommand_;
88 mutable std::string html_tag_;
90 mutable std::string html_attrib_;
92 mutable std::string defaultcssclass_;
94 std::string html_style_;