public int ChangeAttributesOnRoot(XWindowAttributeFlags mask, XSetWindowAttributes attributes) { return 0; //return XChangeWindowAttributes (display.Handle, Root, mask, ref attributes); }
private static extern int XChangeWindowAttributes(IntPtr display, IntPtr w, XWindowAttributeFlags mask, IntPtr attributes);
public int ChangeAttributes(XWindowAttributeFlags mask, XSetWindowAttributes attributes) { IntPtr attr = Marshal.AllocHGlobal (Marshal.SizeOf (attributes)); Console.WriteLine ("Attributes size = {0}", Marshal.SizeOf (attributes)); // Console.WriteLine ("Attributes.background_pixmap = {0}", Marshal.SizeOf (attributes.background_pixmap)); // Console.WriteLine ("Attributes.background_pixel = {0}", Marshal.SizeOf (attributes.background_pixel)); // Console.WriteLine ("Attributes size = {0}", Marshal.SizeOf (attributes)); // Console.WriteLine ("Attributes size = {0}", Marshal.SizeOf (attributes)); // Console.WriteLine ("Attributes size = {0}", Marshal.SizeOf (attributes)); Marshal.StructureToPtr (attributes, attr, false); int result = XChangeWindowAttributes (display.Handle, Handle, mask, attr); Marshal.FreeHGlobal (attr); return result; }