Author: matt
Date: 2011-05-26 09:43:21 -0700 (Thu, 26 May 2011)
New Revision: 8742
Log:
123: a few more fixes for FLTK3 on Linux
Modified:
branches/branch-3.0/fltk3/x.h
branches/branch-3.0/src/Fl_x.cxx
branches/branch-3.0/src/fl_color.cxx
branches/branch-3.0/src/fl_cursor.cxx
branches/branch-3.0/src/fl_dnd_x.cxx
Modified: branches/branch-3.0/fltk3/x.h
===================================================================
--- branches/branch-3.0/fltk3/x.h 2011-05-26 15:59:20 UTC (rev 8741)
+++ branches/branch-3.0/fltk3/x.h 2011-05-26 16:43:21 UTC (rev 8742)
@@ -127,7 +127,7 @@
#if defined(FL_LIBRARY) || defined(FLTK3_INTERNALS)
namespace fltk3 {
- extern FLTK3_EXPORT Window message_window;
+ extern FLTK3_EXPORT ::Window message_window;
}
extern FLTK3_EXPORT void *fl_xftfont;
FLTK3_EXPORT fltk3::Region XRectangleRegion(int x, int y, int w, int h); // in
fltk3::rect.cxx
Modified: branches/branch-3.0/src/Fl_x.cxx
===================================================================
--- branches/branch-3.0/src/Fl_x.cxx 2011-05-26 15:59:20 UTC (rev 8741)
+++ branches/branch-3.0/src/Fl_x.cxx 2011-05-26 16:43:21 UTC (rev 8742)
@@ -43,6 +43,7 @@
# include <fltk3/Tooltip.h>
# include <fltk3/draw.h>
# include <fltk3/PagedDevice.h>
+# include <fltk3/filename.h>
# include <stdio.h>
# include <stdlib.h>
# include "flstring.h"
@@ -53,7 +54,7 @@
# include <X11/Xlib.h>
# include <X11/keysym.h>
-static Fl_Xlib_Graphics_Driver fl_xlib_driver;
+static fltk3::XlibGraphicsDriver fl_xlib_driver;
static fltk3::DisplayDevice fl_xlib_display(&fl_xlib_driver);
FLTK3_EXPORT fltk3::GraphicsDriver *fltk3::graphics_driver =
(fltk3::GraphicsDriver*)&fl_xlib_driver; // the current target device of
graphics operations
fltk3::SurfaceDevice* fltk3::SurfaceDevice::_surface =
(fltk3::SurfaceDevice*)&fl_xlib_display; // the current target surface of
graphics operations
@@ -294,7 +295,9 @@
////////////////////////////////////////////////////////////////
Display *fl_display;
-Window fltk3::message_window = 0;
+namespace fltk3 {
+ ::Window message_window = 0;
+}
int fl_screen;
XVisualInfo *fl_visual;
Colormap fl_colormap;
@@ -707,8 +710,8 @@
void fltk3::get_mouse(int &xx, int &yy) {
fl_open_display();
- Window root = RootWindow(fl_display, fl_screen);
- Window c; int mx,my,cx,cy; unsigned int mask;
+ ::Window root = RootWindow(fl_display, fl_screen);
+ ::Window c; int mx,my,cx,cy; unsigned int mask;
XQueryPointer(fl_display,root,&root,&c,&mx,&my,&cx,&cy,&mask);
xx = mx;
yy = my;
@@ -742,13 +745,13 @@
fl_xid(fltk3::first_window()), fl_event_time);
}
-Window fl_dnd_source_window;
+::Window fl_dnd_source_window;
Atom *fl_dnd_source_types; // null-terminated list of data types being supplied
Atom fl_dnd_type;
Atom fl_dnd_source_action;
Atom fl_dnd_action;
-void fl_sendClientMessage(Window window, Atom message,
+void fl_sendClientMessage(::Window window, Atom message,
unsigned long d0,
unsigned long d1=0,
unsigned long d2=0,
@@ -863,8 +866,8 @@
{
XEvent xevent = thisevent;
fl_xevent = &thisevent;
- Window xid = xevent.xany.window;
- static Window xim_win = 0;
+ ::Window xid = xevent.xany.window;
+ static ::Window xim_win = 0;
if (fl_xim_ic && xevent.type == DestroyNotify &&
xid != xim_win && !fl_find(xid))
@@ -900,7 +903,7 @@
fltk3::set_spot(spotf, spots, spot.x, spot.y, spot.width, spot.height);
#else
if (fltk3::first_window() && fltk3::first_window()->modal()) {
- Window x = fl_xid(fltk3::first_window());
+ ::Window x = fl_xid(fltk3::first_window());
if (x != xim_win) {
xim_win = x;
XSetICValues(fl_xim_ic,
@@ -1166,7 +1169,7 @@
in_a_window = true;
fl_dnd_source_window = data[0];
fl_event_time = data[2];
- Window to_window = fl_xevent->xclient.window;
+ ::Window to_window = fl_xevent->xclient.window;
fltk3::e_text = unknown;
fltk3::e_length = unknown_len;
if (fltk3::handle(fltk3::DND_RELEASE, window)) {
@@ -1459,7 +1462,7 @@
// figure out where OS really put window
XWindowAttributes actual;
XGetWindowAttributes(fl_display, fl_xid(window), &actual);
- Window cr; int X, Y, W = actual.width, H = actual.height;
+ ::Window cr; int X, Y, W = actual.width, H = actual.height;
XTranslateCoordinates(fl_display, fl_xid(window), actual.root,
0, 0, &X, &Y, &cr);
@@ -1471,7 +1474,7 @@
case ReparentNotify: {
int xpos, ypos;
- Window junk;
+ ::Window junk;
// on some systems, the ReparentNotify event is not handled as we would
expect.
XErrorHandler oldHandler = XSetErrorHandler(catchXExceptions());
@@ -1537,7 +1540,7 @@
void fl_fix_focus(); // in Fl.cxx
-Fl_X* Fl_X::set_xid(fltk3::Window* win, Window winxid) {
+Fl_X* Fl_X::set_xid(fltk3::Window* win, ::Window winxid) {
Fl_X* xp = new Fl_X;
xp->xid = winxid;
xp->other_xid = 0;
@@ -1883,7 +1886,7 @@
#endif
}
-Window fl_window;
+::Window fl_window;
fltk3::Window *fltk3::Window::current_;
GC fl_gc;
@@ -1902,7 +1905,7 @@
#endif
}
-Window fl_xid_(const fltk3::Window* w)
+::Window fl_xid_(const fltk3::Window* w)
{
return Fl_X::i(w)->xid;
}
@@ -1911,7 +1914,7 @@
int fltk3::Window::decorated_h()
{
if (parent() || !shown()) return h();
- Window root, parent, *children;
+ ::Window root, parent, *children;
unsigned n;
XQueryTree(fl_display, i->xid, &root, &parent, &children, &n); if (n)
XFree(children);
XWindowAttributes attributes;
@@ -1922,7 +1925,7 @@
int fltk3::Window::decorated_w()
{
if (parent() || !shown()) return w();
- Window root, parent, *children;
+ ::Window root, parent, *children;
unsigned n;
XQueryTree(fl_display, i->xid, &root, &parent, &children, &n); if (n)
XFree(children);
XWindowAttributes attributes;
@@ -1940,7 +1943,7 @@
win->show();
fltk3::check();
win->make_current();
- Window root, parent, *children, child_win, from;
+ ::Window root, parent, *children, child_win, from;
unsigned n;
int bx, bt;
from = fl_window;
Modified: branches/branch-3.0/src/fl_color.cxx
===================================================================
--- branches/branch-3.0/src/fl_color.cxx 2011-05-26 15:59:20 UTC (rev
8741)
+++ branches/branch-3.0/src/fl_color.cxx 2011-05-26 16:43:21 UTC (rev
8742)
@@ -124,7 +124,7 @@
# define fl_overlay 0
# endif
-void Fl_Xlib_Graphics_Driver::color(fltk3::Color i) {
+void fltk3::XlibGraphicsDriver::color(fltk3::Color i) {
if (i & 0xffffff00) {
unsigned rgb = (unsigned)i;
fltk3::color((uchar)(rgb >> 24), (uchar)(rgb >> 16), (uchar)(rgb >> 8));
@@ -135,7 +135,7 @@
}
}
-void Fl_Xlib_Graphics_Driver::color(uchar r,uchar g,uchar b) {
+void fltk3::XlibGraphicsDriver::color(uchar r,uchar g,uchar b) {
fltk3::GraphicsDriver::color( fltk3::rgb_color(r, g, b) );
if(!fl_gc) return; // don't get a default gc if current window is not yet
created/valid
XSetForeground(fl_display, fl_gc, fl_xpixel(r,g,b));
Modified: branches/branch-3.0/src/fl_cursor.cxx
===================================================================
--- branches/branch-3.0/src/fl_cursor.cxx 2011-05-26 15:59:20 UTC (rev
8741)
+++ branches/branch-3.0/src/fl_cursor.cxx 2011-05-26 16:43:21 UTC (rev
8742)
@@ -243,7 +243,7 @@
static struct TableEntry {
uchar bits[CURSORSIZE*CURSORSIZE/8];
uchar mask[CURSORSIZE*CURSORSIZE/8];
- Cursor cursor;
+ ::Cursor cursor;
} table[] = {
{{ // fltk3::CURSOR_NS
0x00, 0x00, 0x80, 0x01, 0xc0, 0x03, 0xe0, 0x07, 0x80, 0x01, 0x80, 0x01,
@@ -282,7 +282,7 @@
void fltk3::Window::cursor(fltk3::Cursor c, fltk3::Color fg, fltk3::Color bg) {
if (!shown()) return;
- Cursor xc;
+ ::Cursor xc;
int deleteit = 0;
if (c == fltk3::CURSOR_DEFAULT) {
c = cursor_default;
@@ -297,10 +297,10 @@
TableEntry *q = (c > fltk3::CURSOR_NESW) ? table+4 :
table+(c-fltk3::CURSOR_NS);
if (!(q->cursor)) {
XColor dummy = { 0 };
- Pixmap p = XCreateBitmapFromData(fl_display,
+ ::Pixmap p = XCreateBitmapFromData(fl_display,
RootWindow(fl_display, fl_screen), (const char*)(q->bits),
CURSORSIZE, CURSORSIZE);
- Pixmap m = XCreateBitmapFromData(fl_display,
+ ::Pixmap m = XCreateBitmapFromData(fl_display,
RootWindow(fl_display, fl_screen), (const char*)(q->mask),
CURSORSIZE, CURSORSIZE);
q->cursor = XCreatePixmapCursor(fl_display, p,m,&dummy, &dummy,
Modified: branches/branch-3.0/src/fl_dnd_x.cxx
===================================================================
--- branches/branch-3.0/src/fl_dnd_x.cxx 2011-05-26 15:59:20 UTC (rev
8741)
+++ branches/branch-3.0/src/fl_dnd_x.cxx 2011-05-26 16:43:21 UTC (rev
8742)
@@ -48,7 +48,7 @@
extern char fl_i_own_selection[2];
extern char *fl_selection_buffer[2];
-extern void fl_sendClientMessage(Window window, Atom message,
+extern void fl_sendClientMessage(::Window window, Atom message,
unsigned long d0,
unsigned long d1=0,
unsigned long d2=0,
@@ -57,7 +57,7 @@
// return version # of Xdnd this window supports. Also change the
// window to the proxy if it uses a proxy:
-static int dnd_aware(Window& window) {
+static int dnd_aware(::Window& window) {
Atom actual; int format; unsigned long count, remaining;
unsigned char *data = 0;
XGetWindowProperty(fl_display, window, fl_XdndAware,
@@ -89,9 +89,9 @@
int fltk3::dnd() {
fltk3::Window *source_fl_win = fltk3::first_window();
fltk3::first_window()->cursor(fltk3::CURSOR_MOVE);
- Window source_window = fl_xid(fltk3::first_window());
+ ::Window source_window = fl_xid(fltk3::first_window());
fl_local_grab = grabfunc;
- Window target_window = 0;
+ ::Window target_window = 0;
fltk3::Window* local_window = 0;
int dndversion = 4; int dest_x, dest_y;
XSetSelectionOwner(fl_display, fl_XdndSelection, fltk3::message_window,
fl_event_time);
@@ -99,10 +99,10 @@
while (fltk3::pushed()) {
// figure out what window we are pointing at:
- Window new_window = 0; int new_version = 0;
+ ::Window new_window = 0; int new_version = 0;
fltk3::Window* new_local_window = 0;
- for (Window child = RootWindow(fl_display, fl_screen);;) {
- Window root; unsigned int junk3;
+ for (::Window child = RootWindow(fl_display, fl_screen);;) {
+ ::Window root; unsigned int junk3;
XQueryPointer(fl_display, child, &root, &child,
&e_x_root, &e_y_root, &dest_x, &dest_y, &junk3);
if (!child) {
_______________________________________________
fltk-commit mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-commit