-// -*- C++ -*-
-/* This file is part of
- * ======================================================
- *
- * LyX, The Document Processor
- *
- * Copyright 1995 Matthias Ettrich
- * Copyright 1995-2000 The LyX Team.
+/**
+ * \file BufferView.C
+ * Copyright 1995-2002 the LyX Team
+ * Read the file COPYING
*
- * ====================================================== */
+ * \author unknown
+ * \author John Levon <moz@compsoc.man.ac.uk>
+ */
#include <config.h>
#include "BufferView.h"
#include "BufferView_pimpl.h"
#include "lyxtext.h"
+#include "frontends/screen.h"
+#include "frontends/WorkArea.h"
BufferView::BufferView(LyXView * o, int xpos, int ypos,
: pimpl_(new Pimpl(this, o, xpos, ypos, width, height))
{
text = 0;
- the_locking_inset = 0;
- inset_slept = false;
}
}
-LyXView * BufferView::owner() const
+LyXScreen & BufferView::screen() const
{
- return pimpl_->owner_;
+ return pimpl_->screen();
}
-void BufferView::pushIntoUpdateList(Inset * i)
+LyXView * BufferView::owner() const
{
- pimpl_->updatelist.push(i);
+ return pimpl_->owner_;
}
-Painter & BufferView::painter()
+Painter & BufferView::painter() const
{
return pimpl_->painter();
}
}
-void BufferView::resize(int xpos, int ypos, int width, int height)
-{
- pimpl_->resize(xpos, ypos, width, height);
-}
-
-
void BufferView::resize()
{
- pimpl_->resize();
+ pimpl_->resizeCurrentBuffer();
}
-void BufferView::redraw()
+void BufferView::repaint()
{
- pimpl_->redraw();
+ pimpl_->repaint();
}
-void BufferView::fitCursor()
+bool BufferView::fitCursor()
{
- pimpl_->fitCursor();
+ return pimpl_->fitCursor();
}
}
-void BufferView::redoCurrentBuffer()
+void BufferView::scrollDocView(int value)
{
- pimpl_->redoCurrentBuffer();
+ pimpl_->scrollDocView(value);
}
-int BufferView::resizeCurrentBuffer()
+Inset * BufferView::checkInsetHit(LyXText * text, int & x, int & y)
{
- return pimpl_->resizeCurrentBuffer();
+ return pimpl_->checkInsetHit(text, x, y);
}
-void BufferView::gotoError()
-{
- pimpl_->gotoError();
-}
-
-
-extern "C" {
- void C_BufferView_CursorToggleCB(FL_OBJECT * ob, long buf)
- {
- BufferView::cursorToggleCB(ob, buf);
- }
-}
-
-
-// Callback for scrollbar up button
-void BufferView::upCB(long time, int button)
-{
- if (pimpl_->buffer_ == 0) return;
-
- switch (button) {
- case 3:
- pimpl_->scrollUpOnePage();
- break;
- case 2:
- pimpl_->scrollDownOnePage();
- break;
- default:
- pimpl_->scrollUp(time);
- break;
- }
-}
-
-
-// Callback for scrollbar slider
-void BufferView::scrollCB(double value)
-{
- pimpl_->scrollCB(value);
-}
-
-
-// Callback for scrollbar down button
-void BufferView::downCB(long time, int button)
-{
- pimpl_->downCB(time, button);
-}
-
-
-void BufferView::workAreaMotionNotify(int x, int y, unsigned int state)
-{
- pimpl_->workAreaMotionNotify(x, y, state);
-}
-
-
-extern int bibitemMaxWidth(Painter &, LyXFont const &);
-
-
-/// Single-click on work area
-void BufferView::workAreaButtonPress(int xpos, int ypos, unsigned int button)
-{
- pimpl_->workAreaButtonPress(xpos, ypos, button);
-}
-
-
-void BufferView::doubleClick(int x, int y, unsigned int button)
-{
- pimpl_->doubleClick(x, y, button);
-}
-
-
-void BufferView::tripleClick(int x, int y, unsigned int button)
-{
- pimpl_->tripleClick(x, y, button);
-}
-
-
-void BufferView::workAreaButtonRelease(int x, int y, unsigned int button)
-{
- pimpl_->workAreaButtonRelease(x, y, button);
-}
-
-
-void BufferView::workAreaExpose()
-{
- pimpl_->workAreaExpose();
-}
-
-
-// // Callback for cursor timer
-void BufferView::cursorToggleCB(FL_OBJECT * ob, long )
-{
- BufferView * view = static_cast<BufferView*>(ob->u_vdata);
- view->pimpl_->cursorToggle();
-}
-
-
-void BufferView::workAreaSelectionNotify(Window win, XEvent * event)
+void BufferView::redoCurrentBuffer()
{
- pimpl_->workAreaSelectionNotify(win, event);
+ pimpl_->redoCurrentBuffer();
}
-void BufferView::cursorPrevious()
+void BufferView::cursorPrevious(LyXText * text)
{
- pimpl_->cursorPrevious();
+ pimpl_->cursorPrevious(text);
}
-void BufferView::cursorNext()
+void BufferView::cursorNext(LyXText * text)
{
- pimpl_->cursorNext();
+ pimpl_->cursorNext(text);
}
}
-void BufferView::beforeChange()
+void BufferView::beforeChange(LyXText * text)
{
- pimpl_->beforeChange();
+ pimpl_->beforeChange(text);
}
-void BufferView::savePosition()
+void BufferView::savePosition(unsigned int i)
{
- pimpl_->savePosition();
+ pimpl_->savePosition(i);
}
-void BufferView::restorePosition()
+void BufferView::restorePosition(unsigned int i)
{
- pimpl_->restorePosition();
+ pimpl_->restorePosition(i);
}
-void BufferView::update(signed char f)
+bool BufferView::isSavedPosition(unsigned int i)
{
- pimpl_->update(f);
+ return pimpl_->isSavedPosition(i);
}
-void BufferView::smallUpdate(signed char f)
+void BufferView::update(LyXText * text, UpdateCodes f)
{
- pimpl_->smallUpdate(f);
+ pimpl_->update(text, f);
}
}
-void BufferView::insetSleep()
-{
- pimpl_->insetSleep();
-}
-
-
-void BufferView::insetWakeup()
+void BufferView::insetUnlock()
{
- pimpl_->insetWakeup();
+ pimpl_->insetUnlock();
}
-void BufferView::insetUnlock()
+int BufferView::workWidth() const
{
- pimpl_->insetUnlock();
+ return pimpl_->workarea().workWidth();
}
-bool BufferView::focus() const
+void BufferView::showCursor()
{
- return pimpl_->focus();
+ pimpl_->showCursor();
}
-void BufferView::focus(bool f)
+void BufferView::hideCursor()
{
- pimpl_->focus(f);
+ pimpl_->hideCursor();
}
-bool BufferView::active() const
+void BufferView::toggleSelection(bool b)
{
- return pimpl_->active();
+ pimpl_->toggleSelection(b);
}
-unsigned short BufferView::paperWidth() const
+void BufferView::toggleToggle()
{
- return text->paperWidth();
+ pimpl_->toggleToggle();
}
-bool BufferView::belowMouse() const
+void BufferView::center()
{
- return pimpl_->belowMouse();
+ pimpl_->center();
}
-void BufferView::showCursor()
+void BufferView::pasteClipboard(bool asPara)
{
- pimpl_->showCursor();
+ pimpl_->pasteClipboard(asPara);
}
-void BufferView::hideCursor()
+string const BufferView::getClipboard() const
{
- pimpl_->hideCursor();
+ return pimpl_->workarea().getClipboard();
}
-void BufferView::toggleSelection(bool b)
+void BufferView::stuffClipboard(string const & stuff) const
{
- pimpl_->toggleSelection(b);
+ pimpl_->stuffClipboard(stuff);
}
-void BufferView::toggleToggle()
+BufferView::UpdateCodes operator|(BufferView::UpdateCodes uc1,
+ BufferView::UpdateCodes uc2)
{
- pimpl_->toggleToggle();
+ return static_cast<BufferView::UpdateCodes>
+ (static_cast<int>(uc1) | static_cast<int>(uc2));
}
-
-void BufferView::center()
+bool BufferView::Dispatch(kb_action action, string const & argument)
{
- pimpl_->center();
+ return pimpl_->Dispatch(action, argument);
}