]> git.lyx.org Git - lyx.git/blobdiff - src/Paragraph.h
Limit the nopassthurchars case in beamer to URL
[lyx.git] / src / Paragraph.h
index 0752dfeb0a76b494d5282f0c9bb7d9e0fe2aa7a2..ef94352f37a356c48177045f74f0e34aa9daaa5a 100644 (file)
 #ifndef PARAGRAPH_H
 #define PARAGRAPH_H
 
-#include "FontEnums.h"
 #include "LayoutEnums.h"
 #include "SpellChecker.h"
 
 #include "support/strfwd.h"
 #include "support/types.h"
 
+#include "insets/InsetCode.h"
+#include "insets/InsetLayout.h"
+
 #include <set>
 #include <vector>
 
@@ -32,6 +34,7 @@ class AuthorList;
 class Buffer;
 class BufferParams;
 class Change;
+class Cursor;
 class DocIterator;
 class docstring_list;
 class DocumentClass;
@@ -124,7 +127,8 @@ enum AsStringParameter
        AS_STR_INSETS = 2, ///< Go into insets.
        AS_STR_NEWLINES = 4, ///< Get also newline characters.
        AS_STR_SKIPDELETE = 8, ///< Skip deleted text in change tracking.
-       AS_STR_PLAINTEXT = 16 ///< Don't export formatting when descending into insets.
+       AS_STR_PLAINTEXT = 16, ///< Don't export formatting when descending into insets.
+       AS_STR_MATHED = 32 ///< Use a format suitable for mathed (eg. for InsetRef).
 };
 
 
@@ -194,7 +198,7 @@ public:
        /// Can we drop the standard paragraph wrapper?
        bool emptyTag() const;
 
-       /// Get the id of the paragraph, usefull for docbook
+       /// Get the id of the paragraph, useful for DocBook
        std::string getID(Buffer const & buf, OutputParams const & runparams) const;
 
        /// Output the first word of a paragraph, return the position where it left.
@@ -204,7 +208,8 @@ public:
        pos_type firstWordLyXHTML(XMLStream & xs, OutputParams const & runparams) const;
 
        /// Outputs to stream the DocBook representation, one element per paragraph.
-       std::vector<docstring> simpleDocBookOnePar(Buffer const & buf,
+       std::tuple<std::vector<docstring>, std::vector<docstring>, std::vector<docstring>>
+       simpleDocBookOnePar(Buffer const & buf,
                                                                           OutputParams const & runparams,
                                                                           Font const & outerfont,
                                                                           pos_type initial = 0,
@@ -238,6 +243,12 @@ public:
        ///
        bool isPassThru() const;
        ///
+       bool parbreakIsNewline() const;
+       ///
+       bool allowedInContext(Cursor const & cur, InsetLayout const & il) const;
+       ///
+       bool isPartOfTextSequence() const;
+       ///
        pos_type size() const;
        ///
        bool empty() const;
@@ -523,6 +534,9 @@ private:
        void collectWords();
        ///
        void registerWords();
+       ///
+       int getInsetPos(InsetCode const code, int startpos,
+                       bool ignore_deleted=false) const;
 
        /// Pimpl away stuff
        class Private;