On 05/01/2013 05:21 AM, Christopher Cope wrote:
I am unsure how the "enum x11drv_atoms" in the file dlls/winex11.dev/x11drv.h works. My /usr/include/Xatom.h defines XA_LAST_PREDEFINED as 68. Presumably, therefore XATOM_Rel_X and XATOM_Rel_X should be 81 and 82 respectively. However, when I dump the values I get 195 and 196. I am attempting to add XATOM_Abs_X and XATOM_Abs_X with values of 480 and 481 for a patch I'm working on. I could simply define the values elsewhere, but I assumed I should try to make it blend with the other code as much as possible. Any help is appreciated thank you.




I've written a quick C program to print those enums (it's attached; compile with "gcc -o xatomdump xatomdump.c -I wine/dlls/winex11.drv -I wine/include") and I get this output:
FIRST_XATOM=69
XATOM_Rel_X=81
XATOM_Rel_Y=82

So, your guess is right, the Rel_X and Rel_Y values are (supposed to be) 81/82. Maybe your compiler is doing something strange or looked at the wrong values by mistake?

Hope this helps,
Sam
#include <stdio.h>
#include "config.h"
#include "x11drv.h"

void _printatom(const char *name, enum x11drv_atoms value)
{
	printf("%s=%d\n", name, value);
}
#define printatom(atom) _printatom(#atom, atom)

int main(int argc, char *argv[])
{
	printatom(FIRST_XATOM);
	printatom(XATOM_Rel_X);
	printatom(XATOM_Rel_Y);
	return 0;
}


Reply via email to