]> git.lyx.org Git - lyx.git/blobdiff - src/lyxparagraph.h
read the Changelog
[lyx.git] / src / lyxparagraph.h
index 56f3df2c006ca39bed09c3a10f3970fa617a59b8..7261cc91e033c741c9ae3c4d9f2d89136cbec49d 100644 (file)
@@ -31,6 +31,7 @@ class LyXBuffer;
 class TexRow;
 struct LaTeXFeatures;
 class InsetBibKey;
+class BufferView;
 
 /// A LyXParagraph holds all text, attributes and insets in a text paragraph
 class LyXParagraph  {
@@ -55,6 +56,7 @@ public:
                ///
                MINIPAGE_ALIGN_BOTTOM
        };
+#ifndef NEW_INSETS
        ///
        enum META_KIND {
                ///
@@ -108,7 +110,7 @@ public:
                ///
                WIDE_TAB    // CFO-G, 971106
        };
-       
+#endif
        ///
        typedef char value_type;
        ///
@@ -195,7 +197,10 @@ public:
        ///
        Inset * InInset() { return inset_owner; }
        ///
-       void SetInsetOwner(Inset * i) { inset_owner = i; }
+       void SetInsetOwner(Inset * i);
+       ///
+       void deleteInsetsLyXText(BufferView *);
+       void resizeInsetsLyXText(BufferView *);
 private:
        ///
        TextContainer text;
@@ -209,9 +214,11 @@ public:
        void fitToSize() {
                text.resize(text.size());
        }
+       ///
        void setContentsFromPar(LyXParagraph * par) {
                text = par->text;
        }
+       ///
        void clearContents() {
                text.clear();
        }
@@ -227,7 +234,7 @@ public:
        
        ///
        LyXTextClass::LayoutList::size_type layout;
-       
+#ifndef NEW_INSETS
        /**
          \begin{itemize}
          \item no footnote, closed footnote, 
@@ -239,7 +246,7 @@ public:
 
        /// footnote, margin, fig, tab
        footnote_kind footnotekind;
-   
+#endif
        //@Man: the LyX- DTP-switches
        //@{
        ///
@@ -401,11 +408,11 @@ public:
          */
        LyXFont getFont(BufferParams const &, size_type pos) const;
        ///
-       char GetChar(size_type pos);
+       value_type GetChar(size_type pos);
        ///
-       char GetChar(size_type pos) const;
+       value_type GetChar(size_type pos) const;
        /// The position must already exist.
-       void SetChar(size_type pos, char c) {
+       void SetChar(size_type pos, value_type c) {
                text[pos] = c;
        }
        
@@ -417,10 +424,14 @@ public:
        LyXFont::FONT_SIZE HighestFontInRange(size_type startpos,
                                              size_type endpos) const;
        ///
-       void InsertChar(size_type pos, char c);
+       void InsertChar(size_type pos, value_type c);
+       ///
+       void InsertChar(size_type pos, value_type c, LyXFont const &);
        ///
        void InsertInset(size_type pos, Inset * inset);
        ///
+       void InsertInset(size_type pos, Inset * inset, LyXFont const &);
+       ///
        bool InsertInsetAllowed(Inset * inset);
        ///
        Inset * GetInset(size_type pos);
@@ -499,10 +510,6 @@ public:
                           int type, char const * width, char const * widthp);
        ///
         void UnsetPExtraType(BufferParams const &);
-#if 0
-       ///
-       bool RoffContTableRows(std::ostream &, size_type i, int actcell);
-#endif
        ///
        bool linuxDocConvertChar(char c, string & sgml_string);
        ///
@@ -528,17 +535,11 @@ private:
        friend struct matchIT;
        ///
        struct matchIT {
-               /// used by lower_bound
+               /// used by lower_bound and upper_bound
                inline
                int operator()(LyXParagraph::InsetTable const & a,
-                              LyXParagraph::size_type pos) const {
-                       return a.pos < pos;
-               }
-               /// used by upper_bound
-               inline
-               int operator()(LyXParagraph::size_type pos,
-                              LyXParagraph::InsetTable const & a) const {
-                       return pos < a.pos;
+                              LyXParagraph::InsetTable const & b) const {
+                       return a.pos < b.pos;
                }
        };
        /** A font entry covers a range of positions. Notice that the
@@ -571,17 +572,11 @@ private:
        friend struct matchFT;
        ///
        struct matchFT {
-               /// used by lower_bound
+               /// used by lower_bound and upper_bound
                inline
                int operator()(LyXParagraph::FontTable const & a,
-                              LyXParagraph::size_type pos) const {
-                       return a.pos < pos;
-               }
-               /// used by upper_bound
-               inline
-               int operator()(LyXParagraph::size_type pos,
-                              LyXParagraph::FontTable const & a) const {
-                       return pos < a.pos;
+                              LyXParagraph::FontTable const & b) const {
+                       return a.pos < b.pos;
                }
        };
 
@@ -660,7 +655,6 @@ public:
        }
        ///
        inset_iterator InsetIterator(size_type pos);
-
 };
 
 #endif