diff --git a/hw/dmx/Makefile.am b/hw/dmx/Makefile.am index 95a5a4dc2..a63f14a77 100644 --- a/hw/dmx/Makefile.am +++ b/hw/dmx/Makefile.am @@ -80,6 +80,8 @@ Xdmx_SOURCES = dmx.c \ dmxvisual.h \ dmxwindow.c \ dmxwindow.h \ + dmxatom.c \ + dmxatom.h \ dmxlaunch.c \ dmxlaunch.h \ dmxcomp.c \ diff --git a/hw/dmx/dmxatom.c b/hw/dmx/dmxatom.c new file mode 100644 index 000000000..1eee7fad4 --- /dev/null +++ b/hw/dmx/dmxatom.c @@ -0,0 +1,56 @@ +/* + * Copyright © 2008 Novell, Inc. + * + * Permission to use, copy, modify, distribute, and sell this software + * and its documentation for any purpose is hereby granted without + * fee, provided that the above copyright notice appear in all copies + * and that both that copyright notice and this permission notice + * appear in supporting documentation, and that the name of + * Novell, Inc. not be used in advertising or publicity pertaining to + * distribution of the software without specific, written prior permission. + * Novell, Inc. makes no representations about the suitability of this + * software for any purpose. It is provided "as is" without express or + * implied warranty. + * + * NOVELL, INC. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN + * NO EVENT SHALL NOVELL, INC. BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS + * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, + * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION + * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * Author: David Reveman + */ + +#ifdef HAVE_DMX_CONFIG_H +#include +#endif + +#include "dmxatom.h" + +Atom +dmxAtom (DMXScreenInfo *dmxScreen, + Atom beAtom) +{ + char *name; + + name = XGetAtomName (dmxScreen->beDisplay, beAtom); + if (!name) + return None; + + return MakeAtom (name, strlen (name), TRUE); +} + +Atom +dmxBEAtom (DMXScreenInfo *dmxScreen, + Atom atom) +{ + char *name; + + name = NameForAtom (atom); + if (!name) + return None; + + return XInternAtom (dmxScreen->beDisplay, name, FALSE); +} diff --git a/hw/dmx/dmxatom.h b/hw/dmx/dmxatom.h new file mode 100644 index 000000000..2502b1eb9 --- /dev/null +++ b/hw/dmx/dmxatom.h @@ -0,0 +1,34 @@ +/* + * Copyright © 2008 Novell, Inc. + * + * Permission to use, copy, modify, distribute, and sell this software + * and its documentation for any purpose is hereby granted without + * fee, provided that the above copyright notice appear in all copies + * and that both that copyright notice and this permission notice + * appear in supporting documentation, and that the name of + * Novell, Inc. not be used in advertising or publicity pertaining to + * distribution of the software without specific, written prior permission. + * Novell, Inc. makes no representations about the suitability of this + * software for any purpose. It is provided "as is" without express or + * implied warranty. + * + * NOVELL, INC. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN + * NO EVENT SHALL NOVELL, INC. BE LIABLE FOR ANY SPECIAL, INDIRECT OR + * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS + * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, + * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION + * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + * Author: David Reveman + */ + +#ifndef DMXGRAB_H +#define DMXGRAB_H + +#include "dmx.h" + +extern Atom dmxAtom (DMXScreenInfo *dmxScreen, Atom beAtom); +extern Atom dmxBEAtom (DMXScreenInfo *dmxScreen, Atom atom); + +#endif /* DMXGRAB_H */