]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetfloat.h
The markDirty() and fitCursor() changes
[lyx.git] / src / insets / insetfloat.h
index 1ebb7484fd9ff7d109919c84104a70fcf1e4116b..0001b381676f733c13ed66054ed85693ccb080be 100644 (file)
 #include "insetcollapsable.h"
 #include "toc.h"
 
-#include <boost/signals/signal0.hpp>
 
-class Painter;
+struct InsetFloatParams {
+       ///
+       InsetFloatParams() : wide(false) {}
+       ///
+       void write(std::ostream & os) const;
+       ///
+       void read(LyXLex & lex);
+       ///
+       string type;
+       ///
+       string placement;
+       ///
+       bool wide;
+};
+
 
 /** The float inset
 
@@ -33,6 +46,8 @@ public:
        ///
        ~InsetFloat();
        ///
+       virtual dispatch_result localDispatch(FuncRequest const & cmd); 
+       ///
        void write(Buffer const * buf, std::ostream & os) const;
        ///
        void read(Buffer const * buf, LyXLex & lex);
@@ -69,14 +84,36 @@ public:
        ///
        bool  showInsetDialog(BufferView *) const;
        ///
-       boost::signal0<void> hideDialog;
+       InsetFloatParams const & params() const { return params_; }
+       
 private:
        ///
-       string floatType_;
+       InsetFloatParams params_;
+};
+
+
+#include "mailinset.h"
+
+
+class InsetFloatMailer : public MailInset {
+public:
+       ///
+       InsetFloatMailer(InsetFloat & inset);
+       ///
+       virtual InsetBase & inset() const { return inset_; }
+       ///
+       virtual string const & name() const { return name_; }
+       ///
+       virtual string const inset2string() const;
+       ///
+       static void string2params(string const &, InsetFloatParams &);
+       ///
+       static string const params2string(InsetFloatParams const &);
+private:
        ///
-       string floatPlacement_;
+       static string const name_;
        ///
-       bool wide_;
+       InsetFloat & inset_;
 };
 
 #endif