add vicons
[goodguy/history.git] / cinelerra-5.0 / guicast / bcwindowbase.C
index 32547118e6514c29fd63d1b52b0884b7082fb3e0..602934b1967aad840bfde338492e0812c1546273 100644 (file)
@@ -140,8 +140,10 @@ BC_WindowBase::~BC_WindowBase()
                if( !glx_win ) {
 // NVIDIA library threading problem, XCloseDisplay SEGVs without this
                        sync_lock("BC_WindowBase::~BC_WindowBase:XDestroyWindow");
+                       lock_window("BC_WindowBase::~BC_WindowBase:XDestroyWindow");
                        glXMakeContextCurrent(top_level->display, 0, 0, 0);
                        XDestroyWindow(top_level->display, win);
+                       unlock_window();
                        sync_unlock();
                }
                else
@@ -4197,6 +4199,15 @@ void BC_WindowBase::translate_coordinates(Window src_w,
        }
 }
 
+void BC_WindowBase::get_root_coordinates(int x, int y, int *abs_x, int *abs_y)
+{
+       translate_coordinates(win, top_level->rootwin, x, y, abs_x, abs_y);
+}
+
+void BC_WindowBase::get_win_coordinates(int abs_x, int abs_y, int *x, int *y)
+{
+       translate_coordinates(top_level->rootwin, win, abs_x, abs_y, x, y);
+}