]> git.lyx.org Git - lyx.git/blobdiff - src/insets/Inset.h
Circumvent odd stmary font metrics (part of #9990).
[lyx.git] / src / insets / Inset.h
index 63834eb6a0da8f195473e93e0e2600152876c97d..96071faf7dd7e716bef8622c7440f9a9654c865c 100644 (file)
@@ -74,7 +74,7 @@ std::string insetName(InsetCode);
 /// Eg, insetDisplayName(BRANCH_CODE) == _("Branch")
 docstring insetDisplayName(InsetCode);
 ///
-static int const TOC_ENTRY_LENGTH = 40;
+static int const TOC_ENTRY_LENGTH = 120;
 
 /// Common base class to all insets
 
@@ -328,7 +328,8 @@ public:
        /// Appends a potentially abbreviated version of the inset to
        /// \param str. Intended for use by the TOC.
        virtual void forOutliner(docstring & str,
-                           size_t maxlen = TOC_ENTRY_LENGTH) const;
+                                                        size_t const maxlen = TOC_ENTRY_LENGTH,
+                                                        bool const shorten = true) const;
 
        /// can the contents of the inset be edited on screen ?
        // true for InsetCollapsables (not ButtonOnly) (not InsetInfo), InsetText
@@ -398,6 +399,9 @@ public:
                { return true; }
        /// Is the width forced to some value?
        virtual bool hasFixedWidth() const { return false; }
+       /// if this inset has paragraphs should they be forced to use a
+       /// local font language switch?
+       virtual bool forceLocalFontSwitch() const { return false; }
 
        /// Is the content of this inset part of the output document?
        virtual bool producesOutput() const { return true; }
@@ -431,8 +435,8 @@ public:
        /// is this equivalent to a space (which is BTW different from
        /// a line separator)?
        virtual bool isSpace() const { return false; }
-       /// is this an expandible space (rubber length)?
-       virtual bool isStretchableSpace() const { return false; }
+       /// does this inset try to use all available space (like \\hfill does)?
+       virtual bool isHfill() const { return false; }
 
        enum DisplayType {
                Inline = 0,
@@ -490,7 +494,15 @@ public:
        /// Add an entry to the TocList
        /// Pass a DocIterator that points at the paragraph containing
        /// the inset
-       virtual void addToToc(DocIterator const & /* di */, bool /* output_active */) const {}
+       ///
+       /// \param output_active : is the inset active or is it in an inactive
+       /// branch or a note?
+       ///
+       /// \param utype : is the toc being generated for use by the output
+       /// routines?
+       virtual void addToToc(DocIterator const & /* di */,
+                                                 bool /* output_active */,
+                                                 UpdateType /* utype*/) const {}
        /// Collect BibTeX information
        virtual void collectBibKeys(InsetIterator const &) const {}
        /// Update the counters of this inset and of its contents.