]> git.lyx.org Git - lyx.git/blobdiff - src/Floating.h
InsetGraphics: use totalheight for height output
[lyx.git] / src / Floating.h
index c90220c84f1c565fbd6e919aa68f27a97406188b..e4c9e130f9da6e16227b89b97afe8b49250d1b20 100644 (file)
@@ -12,6 +12,8 @@
 #ifndef FLOATING_H
 #define FLOATING_H
 
+#include "support/strfwd.h"
+
 #include <string>
 
 
@@ -26,14 +28,18 @@ namespace lyx {
 class Floating {
 public:
        ///
-       Floating();
+       Floating() : usesfloatpkg_(false), ispredefined_(false),
+           allowswide_(true), allowssideways_(true) {}
        ///
        Floating(std::string const & type, std::string const & placement,
                 std::string const & ext, std::string const & within,
                 std::string const & style, std::string const & name,
-                std::string const & listName, std::string const & htmlType,
-                std::string const & htmlClass, std::string const & htmlStyle,
-                bool builtin = false);
+                std::string const & listName, std::string const & listCmd,
+                std::string const & refPrefix, std::string const & allowedplacement,
+                std::string const & htmlType, std::string const & htmlClass,
+                docstring const & htmlStyle, std::string const & requires,
+                bool usesfloat, bool isprefined,
+                bool allowswide, bool allowssideways);
        ///
        std::string const & floattype() const { return floattype_; }
        ///
@@ -46,12 +52,29 @@ public:
        std::string const & style() const { return style_; }
        ///
        std::string const & name() const { return name_; }
-       ///
+       /// the title of a list of this kind of float
        std::string const & listName() const { return listname_; }
+       /// the command used to generate that list. this has to be given
+       /// if usesFloatPkg() is false, unless this float uses the same
+       /// auxfile as another defined previously. this should not contain
+       /// the leading "\".
+       std::string const & listCommand() const { return listcommand_; }
+       /// prefix to use for formatted references to such floats
+       std::string const & refPrefix() const { return refprefix_; }
+       /// allowed placement options
+       std::string const & allowedPlacement() const { return allowedplacement_; }
+       ///
+       bool usesFloatPkg() const { return usesfloatpkg_; }
+       /// allowed placement options
+       std::string const & requires() const { return requires_; }
+       ///
+       bool isPredefined() const { return ispredefined_; }
        ///
-       bool needsFloatPkg() const { return needsfloatpkg_; }
+       bool allowsWide() const { return allowswide_; }
+       ///
+       bool allowsSideways() const { return allowssideways_; }
        /// style information, for preamble
-       std::string const & htmlStyle() const { return html_style_; }
+       docstring const & htmlStyle() const { return html_style_; }
        /// class, for css, defaults to "float-" + type()
        std::string const & htmlAttrib() const;
        /// tag type, defaults to "div"
@@ -74,15 +97,29 @@ private:
        ///
        std::string listname_;
        ///
-       bool needsfloatpkg_;
-       /// 
+       std::string listcommand_;
+       ///
+       std::string refprefix_;
+       ///
+       std::string allowedplacement_;
+       ///
+       std::string requires_;
+       ///
+       bool usesfloatpkg_;
+       ///
+       bool ispredefined_;
+       ///
+       bool  allowswide_;
+       ///
+       bool  allowssideways_;
+       ///
        mutable std::string html_tag_;
-       /// 
+       ///
        mutable std::string html_attrib_;
        ///
        mutable std::string defaultcssclass_;
-       /// 
-       std::string html_style_;
+       ///
+       docstring html_style_;
 };