4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * \author Abdelrazak Younes
11 * Full author contact details are available in file CREDITS.
14 #ifndef BASE_WORKAREA_H
15 #define BASE_WORKAREA_H
17 #include "frontends/KeyModifier.h"
26 * The work area class represents the widget that provides the view
27 * onto a document. It owns the BufferView, and is responsible for
28 * handing events back to its BufferView.
34 virtual ~WorkArea() {}
36 /// Update metrics if needed and schedule a paint event
37 virtual void scheduleRedraw(bool update_metrics) = 0;
39 /// close this work area.
40 /// Slot for Buffer::closing signal.
41 virtual void close() = 0;
43 /// Update window titles of all users.
44 virtual void updateWindowTitle() = 0;
47 virtual BufferView & bufferView() = 0;
49 virtual BufferView const & bufferView() const = 0;
52 } // namespace frontend
55 #endif // BASE_WORKAREA_H