X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2FWorkArea.h;h=8e459ca37524f3aa11240b1947f81ca1d4d00591;hb=50060053e36b3e9dfe03bc33ed3abac1eacc54b0;hp=64f34d72cec66cce0599ff1d0ce0d5a54c54fed4;hpb=cc7901c5b88c14c88cd71f8df77c53d1feb1e826;p=lyx.git diff --git a/src/frontends/WorkArea.h b/src/frontends/WorkArea.h index 64f34d72ce..8e459ca375 100644 --- a/src/frontends/WorkArea.h +++ b/src/frontends/WorkArea.h @@ -1,2 +1,53 @@ -// very temporary -#include "xforms/XWorkArea.h" +// -*- C++ -*- +/** + * \file WorkArea.h + * This file is part of LyX, the document processor. + * Licence details can be found in the file COPYING. + * + * \author unknown + * \author John Levon + * \author Abdelrazak Younes + * + * Full author contact details are available in file CREDITS. + */ + +#ifndef BASE_WORKAREA_H +#define BASE_WORKAREA_H + +#include "frontends/KeyModifier.h" + +namespace lyx { + +class BufferView; +class KeySymbol; + +namespace frontend { + +/** + * The work area class represents the widget that provides the + * view onto a document. It is owned by the BufferView, and + * is responsible for handing events back to its owning BufferView. + * It works in concert with the BaseScreen class to update the + * widget view of a document. + */ +class WorkArea +{ +public: + /// + virtual ~WorkArea() {} + + /// redraw the screen, without using existing pixmap + virtual void redraw(bool update_metrics) = 0; + + /// close this work area. + /// Slot for Buffer::closing signal. + virtual void close() = 0; + + /// Update window titles of all users. + virtual void updateWindowTitle() = 0; +}; + +} // namespace frontend +} // namespace lyx + +#endif // BASE_WORKAREA_H