// -*- C++ -*-
/**
* \file BufferView.h
- * Copyright 2002 the LyX Team
- * Read the file COPYING
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
*
- * \author Lars Gullik Bjønnes
-*/
+ * \author Alfredo Braustein
+ * \author Lars Gullik Bjønnes
+ * \author John Levon
+ * \author Jürgen Vigna
+ *
+ * Full author contact details are available in file CREDITS.
+ */
#ifndef BUFFER_VIEW_H
#define BUFFER_VIEW_H
*/
class BufferView : boost::noncopyable {
public:
- /**
- * Codes to store necessary pending updates
- * of the document rendering.
- */
- enum UpdateCodes {
- UPDATE = 0, //< repaint
- SELECT = 1 //< reset selection to current cursor pos
- };
-
/**
* Create a view with the given owner main window,
* of the given dimensions.
/// return the owning main view
LyXView * owner() const;
+ /// return the visible top y
+ int top_y() const;
+
+ /// set the visible top y
+ void top_y(int);
+
/// resize event has happened
void resize();
- /**
- * Repaint the pixmap. Used for when we don't want
- * to go through the full update() logic, just a simple
- * repaint of the whole screen.
- */
- void repaint();
/// reload the contained buffer
void reload();
bool fitCursor();
/// perform pending painting updates
void update();
- // update for a particular lyxtext
- void update(LyXText *, UpdateCodes uc);
- /// update for the top-level lyxtext
- void update(UpdateCodes uc);
- /// update for a particular inset
- void updateInset(InsetOld * inset);
+ /** update for a particular inset. Gets a pointer and not a
+ * reference because we really need the pointer information
+ * to find it in the buffer.
+ */
+ void updateInset(InsetOld const *);
/// reset the scrollbar to reflect current view position
void updateScrollbar();
/// FIXME
/// FIXME
bool fitLockedInsetCursor(int x, int y, int asc, int desc);
- /// FIXME
- void toggleSelection(bool = true);
/// hide the cursor if it is visible
void hideCursor();
/// Set the current locking inset
void theLockingInset(UpdatableInset * inset);
- /// return the lyxtext containing this inset
- LyXText * getParentText(InsetOld * inset) const;
-
/**
* Change all insets with the given code's contents to a new
* string. May only be used with InsetCommand-derived insets
Pimpl * pimpl_;
};
-
-BufferView::UpdateCodes operator|(BufferView::UpdateCodes uc1,
- BufferView::UpdateCodes uc2);
-
#endif // BUFFERVIEW_H