]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/xforms/XWorkArea.h
Change glob() API to accept a dir parameter.
[lyx.git] / src / frontends / xforms / XWorkArea.h
index b0858f081d8e09a65eaaa756ee6ae5384d728fb7..d5f6d403d1f2c112bf7eb9b6133ffd83d9ad68f4 100644 (file)
@@ -7,26 +7,28 @@
  * \author unknown
  * \author John Levon
  *
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
  */
 
 #ifndef XWORKAREA_H
 #define XWORKAREA_H
 
-#ifdef __GNUG__
-#pragma interface
-#endif
-
 #include "frontends/WorkArea.h"
 #include "XPainter.h"
 
-#include FORMS_H_LOCATION
+#include "LayoutEngine.h"
+
+#include "lyx_forms.h"
+
+class LyXView;
+
+namespace lyx {
+namespace frontend {
 
-///
 class XWorkArea : public WorkArea {
 public:
        ///
-       XWorkArea(int xpos, int ypos, int width, int height);
+       XWorkArea(LyXView & owner, int width, int height);
        ///
        ~XWorkArea();
        ///
@@ -56,22 +58,23 @@ public:
        /// a selection exists
        virtual void haveSelection(bool) const;
        ///
-       virtual string const getClipboard() const;
+       virtual std::string const getClipboard() const;
        ///
-       virtual void putClipboard(string const &) const;
+       virtual void putClipboard(std::string const &) const;
 
        /// handles SelectionRequest X Event, to fill the clipboard
        int event_cb(XEvent * xev);
 private:
        /// generate the pixmap, and copy backing pixmap to it,
        /// and send resize event if needed
-       void redraw(int, int);
+       void updateGeometry(int, int);
+
+       ///
+       void paint(int x, int y, int w, int h);
 
        /// GC used for copying to the screen
        GC copy_gc;
 
-       ///
-       FL_OBJECT * backgroundbox;
        /// the workarea free object
        FL_OBJECT * work_area;
        /// the scrollbar objcet
@@ -84,6 +87,13 @@ private:
        bool screen_cleared;
        /// the current document's height (for scrollbar)
        int doc_height_;
+       ///
+       boost::shared_ptr<Box> wa_box_;
+       ///
+       WidgetMap widgets_;
 };
 
+} // namespace frontend
+} // namespace lyx
+
 #endif // XWORKAREA_H