]> git.lyx.org Git - features.git/blobdiff - src/insets/InsetGraphics.h
Make the generation of children's tocs more robust
[features.git] / src / insets / InsetGraphics.h
index d7bb31525e14682d6ef6e291726e78910b5f2e7c..88ded43e1bb0f9ffe7aac7450deec0c6e4575cf4 100644 (file)
 #ifndef INSET_GRAPHICS_H
 #define INSET_GRAPHICS_H
 
-#include <set>
 #include "Inset.h"
 #include "InsetGraphicsParams.h"
 
+#include <set>
+
 namespace lyx {
 
 class RenderGraphic;
@@ -52,7 +53,9 @@ public:
 
        InsetGraphicsParams getParams() const { return params_;}
        ///
-       bool clickable(int, int) const { return true; }
+       bool clickable(BufferView const &, int, int) const { return true; }
+       ///
+       bool canPaintChange(BufferView const &) const { return true; };
 
 private:
        ///
@@ -71,9 +74,10 @@ private:
         #fragile == true# means, that the inset should take care about
         fragile commands by adding a #\protect# before.
         */
-       int latex(odocstream &, OutputParams const &) const;
+       void latex(otexstream &, OutputParams const &) const;
        ///
-       int plaintext(odocstream &, OutputParams const &) const;
+       int plaintext(odocstringstream & ods, OutputParams const & op,
+                     size_t max_length = INT_MAX) const;
        ///
        int docbook(odocstream &, OutputParams const &) const;
        ///
@@ -84,6 +88,8 @@ private:
        void validate(LaTeXFeatures & features) const;
        /// returns LyX code associated with the inset. Used for TOC, ...)
        InsetCode lyxCode() const { return GRAPHICS_CODE; }
+       ///
+       docstring layoutName() const { return from_ascii("Graphics"); }
        /// Get the inset parameters, used by the GUIndependent dialog.
        InsetGraphicsParams const & params() const;
        ///
@@ -95,9 +101,10 @@ private:
        ///
        bool getStatus(Cursor &, FuncRequest const &, FuncStatus &) const;
        ///
-       void addToToc(DocIterator const &);
+       void addToToc(DocIterator const & di, bool output_active,
+                                 UpdateType utype, TocBackend & backend) const;
        ///
-       docstring contextMenu(BufferView const & bv, int x, int y) const;
+       std::string contextMenuName() const;
        /// Force inset into LTR environment if surroundings are RTL
        bool forceLTR() const { return true; }
        ///
@@ -125,6 +132,8 @@ private:
        InsetGraphicsParams params_;
        /// holds the entity name that defines the graphics location (SGML).
        docstring const graphic_label;
+       ///
+       docstring toolTip(BufferView const & bv, int x, int y) const;
        /// The thing that actually draws the image on LyX's screen.
        RenderGraphic * graphic_;
 };