]> git.lyx.org Git - lyx.git/blobdiff - src/insets/Inset.h
Allow to separate menu string from label string for arguments
[lyx.git] / src / insets / Inset.h
index c4375b6fffadc39d2de24cbf34f83bb62e636951..b1070d8a33d051b960568dbeb03e36f5be75084e 100644 (file)
@@ -17,6 +17,7 @@
 
 #include "ColorCode.h"
 #include "InsetCode.h"
+#include "InsetLayout.h"
 #include "LayoutEnums.h"
 #include "OutputEnums.h"
 
@@ -408,29 +409,25 @@ public:
        
        /// \return Context menu identifier. This function determines
        /// whose Inset's menu should be shown for the given position.
-       virtual docstring contextMenu(BufferView const & bv, int x, int y) const;
+       virtual std::string contextMenu(BufferView const & bv, int x, int y) const;
 
        /// \return Context menu identifier for this inset.
        /// This default implementation returns an empty string.
-       virtual docstring contextMenuName() const;
+       virtual std::string contextMenuName() const;
 
 
-       // FIXME This should really disappear in favor of 
-       //      docstring name() const { return from_ascii(insetName(lyxCode()))); }
-       // There's no reason to be using different names in different places.
-       // But to do this we would need to change the file format, since the names
-       // used there don't correspond to what is used here. 
-       ///
-       virtual docstring name() const;
+       virtual docstring layoutName() const;
        ///
        virtual InsetLayout const & getLayout() const;
+       ///
+       virtual bool isPassThru() const { return getLayout().isPassThru(); }
        /// Is this inset's layout defined in the document's textclass?
        bool undefined() const;
-       /// used to toggle insets
-       /// is the inset open?
-       /// should this inset be handled like a normal charater
+       /// should this inset be handled like a normal character?
+       /// (a character can be a letter or punctuation)
        virtual bool isChar() const { return false; }
        /// is this equivalent to a letter?
+       /// (a letter is a character that is considered part of a word)
        virtual bool isLetter() const { return false; }
        /// is this equivalent to a space (which is BTW different from
        /// a line separator)?