X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FBufferView.h;h=fbbd1e7f2645440eac78fe2158ea3c74ae9b762c;hb=21c92c8a129b5f3ff56de33bf2941a25967cffbb;hp=285106699eb053be53dbb81c56284edddcfab41f;hpb=6df9cbef95de6944455a2539f576c51879d72d6e;p=lyx.git diff --git a/src/BufferView.h b/src/BufferView.h index 285106699e..fbbd1e7f26 100644 --- a/src/BufferView.h +++ b/src/BufferView.h @@ -42,6 +42,8 @@ class FuncStatus; class Intl; class Inset; class Length; +class MathData; +class MathRow; class ParIterator; class ParagraphMetrics; class Point; @@ -102,9 +104,12 @@ public: /// right margin int rightMargin() const; - /// left margin int leftMargin() const; + /// top margin + int topMargin() const; + /// bottom margin + int bottomMargin() const; /// return the on-screen size of this length /* @@ -114,6 +119,11 @@ public: */ int inPixels(Length const & len) const; + /** Return the number of pixels equivalent to \c pix pixels at + * 100dpi and 100% zoom. + */ + int zoomedPixels(int pix) const; + /// \return true if the BufferView is at the top of the document. bool isTopScreen() const; @@ -133,9 +143,6 @@ public: /// Only to be called with good y coordinates (after a bv::metrics) bool needsFitCursor() const; - /// returns true if this row needs to be repainted (to erase caret) - bool needRepaint(Text const * text, Row const & row) const; - // Returns the amount of horizontal scrolling applied to the // top-level row where the cursor lies int horizScrollOffset() const; @@ -144,11 +151,6 @@ public: int horizScrollOffset(Text const * text, pit_type pit, pos_type pos) const; - // Returns true if the row of text starting at (pit, pos) was scrolled - // at the last draw event. - bool hadHorizScrollOffset(Text const * text, - pit_type pit, pos_type pos) const; - /// reset the scrollbar to reflect current view position. void updateScrollbar(); /// return the Scrollbar Parameters. @@ -239,7 +241,7 @@ public: /// request an X11 selection. /// \return the selected string. - docstring const requestSelection(); + docstring requestSelection(); /// clear the X11 selection. void clearSelection(); @@ -299,12 +301,17 @@ public: /// CoordCache const & coordCache() const; + /// + MathRow const & mathRow(MathData const * cell) const; + /// + void setMathRow(MathData const * cell, MathRow const & mrow); + /// Point getPos(DocIterator const & dit) const; /// is the paragraph of the cursor visible ? bool paragraphVisible(DocIterator const & dit) const; - /// is the cursor currently visible in the view - bool cursorInView(Point const & p, int h) const; + /// is the caret currently visible in the view + bool caretInView() const; /// get the position and height of the caret void caretPosAndHeight(Point & p, int & h) const; @@ -328,7 +335,7 @@ public: /// This signal is emitted when some dialog needs to be shown with /// some data. void showDialog(std::string const & name, std::string const & data, - Inset * inset = 0); + Inset * inset = nullptr); /// This signal is emitted when some dialogs needs to be updated. void updateDialog(std::string const & name, std::string const & data); @@ -341,7 +348,7 @@ public: // Insert plain text file (if filename is empty, prompt for one) void insertPlaintextFile(support::FileName const & f, bool asParagraph); /// - void insertLyXFile(support::FileName const & f); + void insertLyXFile(support::FileName const & f, bool const ignorelang = false); /// save temporary bookmark for jump back navigation void bookmarkEditPosition(); /// Find and return the inset associated with given dialog name.