]> git.lyx.org Git - lyx.git/blobdiff - src/insets/insetgraphics.h
fix #832
[lyx.git] / src / insets / insetgraphics.h
index 56fd64cfc18441bb2c641fd858eb16436b4fa13c..2acaa173d1cef1fdd7752023d47b7ccf055b3501 100644 (file)
@@ -1,29 +1,21 @@
 // -*- C++ -*-
-/* This file is part of
- * ======================================================
- *
- *           LyX, The Document Processor
- *
- *           Copyright 1995 Matthias Ettrich
- *           Copyright 1995-2001 the LyX Team.
+/**
+ * \file insetgraphics.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
  * \author Baruch Even
- * \author Herbert Voss <voss@lyx.org>
- * ====================================================== */
+ * \author Herbert Voss
+ *
+ * Full author contact details are available in file CREDITS
+ */
 
 #ifndef INSET_GRAPHICS_H
 #define INSET_GRAPHICS_H
 
-
-#ifdef __GNUG__
-#pragma interface
-#endif
-
 #include "insets/inset.h"
 #include "insets/insetgraphicsParams.h"
 
-// We need a signal here to hide an active dialog when we are deleted.
-#include <boost/signals/signal0.hpp>
 #include <boost/signals/trackable.hpp>
 #include <boost/scoped_ptr.hpp>
 
@@ -41,17 +33,15 @@ public:
        ///
        ~InsetGraphics();
        ///
+       virtual dispatch_result localDispatch(FuncRequest const & cmd);
+       ///
        int ascent(BufferView *, LyXFont const &) const;
        ///
        int descent(BufferView *, LyXFont const &) const;
        ///
        int width(BufferView *, LyXFont const &) const;
        ///
-       void draw(BufferView *, LyXFont const &, int, float &, bool) const;
-       ///
-       void edit(BufferView *, int, int, mouse_button::state);
-       ///
-       void edit(BufferView * bv, bool front = true);
+       void draw(BufferView *, LyXFont const &, int, float &) const;
        ///
        EDITABLE editable() const;
        ///
@@ -92,12 +82,13 @@ public:
        /// Get the inset parameters, used by the GUIndependent dialog.
        InsetGraphicsParams const & params() const;
 
-       /** This signal is connected by our dialog and called when the inset
-           is deleted.
-       */
-       boost::signal0<void> hideDialog;
-
 private:
+       /// Returns the cached BufferView.
+       BufferView * view() const;
+
+       ///
+       friend class InsetGraphicsMailer;
+
        /// Is the image ready to draw, or should we display a message instead?
        bool imageIsDrawable() const;
 
@@ -129,4 +120,28 @@ private:
        boost::scoped_ptr<Cache> const cache_;
 };
 
+
+#include "mailinset.h"
+
+class InsetGraphicsMailer : public MailInset {
+public:
+       ///
+       InsetGraphicsMailer(InsetGraphics & inset);
+       ///
+       virtual InsetBase & inset() const { return inset_; }
+       ///
+       virtual string const & name() const { return name_; }
+       ///
+       virtual string const inset2string() const;
+       ///
+       static void string2params(string const &, InsetGraphicsParams &);
+       ///
+       static string const params2string(InsetGraphicsParams const &);
+private:
+       ///
+       static string const name_;
+       ///
+       InsetGraphics & inset_;
+};
+
 #endif