]> git.lyx.org Git - lyx.git/blobdiff - src/WorkArea.C
Applied Angus patch to compile on DEC C++ and to avoid name clashes
[lyx.git] / src / WorkArea.C
index 57e8e01f1842ee08eddb1cd8c7d6da38df377295..33be3fd150aa0d667c1025a6721a849cab62aa18 100644 (file)
@@ -18,7 +18,6 @@
 #include "WorkArea.h"
 #include "debug.h"
 #include "support/lstrings.h"
-#include "BufferView.h"
 #include "LyXView.h"
 #include "lyxfunc.h"
 
@@ -34,12 +33,16 @@ FL_OBJECT * figinset_canvas;
 // This is at least true for g++.
 //using std::abs;
 
-static inline
+namespace {
+
+inline
 void waitForX()
 {
        XSync(fl_get_display(), 0);
 }
 
+} // anon namespace
+
 
 extern "C" {
 // Just a bunch of C wrappers around static members of WorkArea
@@ -58,9 +61,8 @@ extern "C" {
 }
 
 
-
-WorkArea::WorkArea(BufferView * o, int xpos, int ypos, int width, int height)
-       : owner_(o), workareapixmap(0), painter_(*this)
+WorkArea::WorkArea(int xpos, int ypos, int width, int height)
+       : workareapixmap(0), painter_(*this)
 {
        fl_freeze_all_forms();
 
@@ -261,7 +263,7 @@ void WorkArea::scroll_cb(FL_OBJECT * ob, long)
        // If we really want the accellerating scroll we can do that
        // from here. IMHO that is a waste of effort since we already
        // have other ways to move fast around in the document. (Lgb)
-       area->owner_->scrollCB(fl_get_scrollbar_value(ob));
+       area->scrollCB(fl_get_scrollbar_value(ob));
        waitForX();
 }
 
@@ -372,18 +374,27 @@ int WorkArea::work_area_handler(FL_OBJECT * ob, int event,
                if (!key) {
                        // We migth have to add more keysyms here also,
                        // we will do that as the issues arise. (Lgb)
-                       if (keysym == XK_space)
+                       if (keysym == XK_space) {
                                ret_key = keysym;
-                       else
+                               lyxerr[Debug::KEY] << "Using keysym [A]"
+                                                  << endl;
+                       } else
                                break;
                } else {
                        // It seems that this was a bit optimistic...
                        // With this hacking things seems to be better (Lgb)
-                       if (static_cast<unsigned char>(key) == key
-                               && !iscntrl(key))
-                               ret_key = key;
-                       else
+                       //if (!iscntrl(key)) {
+                       //      ret_key = key;
+                       //      lyxerr[Debug::KEY]
+                       //              << "Using key [B]\n"
+                       //              << "Uchar["
+                       //              << static_cast<unsigned char>(key)
+                       //              << endl;
+                       //} else {
                                ret_key = (keysym ? keysym : key);
+                               lyxerr[Debug::KEY] << "Using keysym [B]"
+                                                  << endl;
+                               //}
                }
                
 #endif 
@@ -398,7 +409,7 @@ int WorkArea::work_area_handler(FL_OBJECT * ob, int event,
                lyxerr[Debug::KEY] << "Workarea Diff: "
                                   << xke->time - last_time_pressed
                                   << endl;
-               if (xke->time - last_time_pressed < 35 // should perhaps be tunable
+               if (xke->time - last_time_pressed < 25 // should perhaps be tunable
                    && ret_state == last_state_pressed
                    && xke->keycode == last_key_pressed) {
                        lyxerr[Debug::KEY]
@@ -470,11 +481,12 @@ int WorkArea::work_area_handler(FL_OBJECT * ob, int event,
 }
 
 
-static string clipboard_selection;
-static bool clipboard_read = false;
+namespace {
 
-extern "C" {
-       static
+string clipboard_selection;
+bool clipboard_read = false;
+
+extern "C"
 int request_clipboard_cb(FL_OBJECT * /*ob*/, long /*type*/,
                        void const * data, long size) 
 {
@@ -487,8 +499,8 @@ int request_clipboard_cb(FL_OBJECT * /*ob*/, long /*type*/,
        clipboard_read = true;
        return 0;
 }
-} // extern "C"
 
+} // namespace anon
 
 string const WorkArea::getClipboard() const 
 {