From 369ad0d33e51035a3e48436fc85f60130b201437 Mon Sep 17 00:00:00 2001 From: "Andrew Gallant (Ocelot)" Date: Sat, 5 May 2012 18:22:24 -0400 Subject: extensions are working! extensions are working! --- nexgb/xproto.go | 2847 ++++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 2080 insertions(+), 767 deletions(-) (limited to 'nexgb/xproto.go') diff --git a/nexgb/xproto.go b/nexgb/xproto.go index d56f0a1..32fa6dd 100644 --- a/nexgb/xproto.go +++ b/nexgb/xproto.go @@ -1,10 +1,16 @@ package xgb /* - This file was generated by xproto.xml on May 5 2012 2:50:11am EDT. + This file was generated by xproto.xml on May 5 2012 5:43:45pm EDT. This file is automatically generated. Edit at your peril! */ +// Skipping definition for base type 'Int32' + +// Skipping definition for base type 'Void' + +// Skipping definition for base type 'Byte' + // Skipping definition for base type 'Int8' // Skipping definition for base type 'Card16' @@ -25,12 +31,6 @@ package xgb // Skipping definition for base type 'Int16' -// Skipping definition for base type 'Int32' - -// Skipping definition for base type 'Void' - -// Skipping definition for base type 'Byte' - const ( VisualClassStaticGray = 0 VisualClassGrayScale = 1 @@ -2731,6 +2731,23 @@ func (v KeyPressEvent) SequenceId() uint16 { return v.Sequence } +func (v KeyPressEvent) String() string { + fieldVals := make([]string, 0, 12) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Detail: %d", v.Detail)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Root: %d", v.Root)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Child: %d", v.Child)) + fieldVals = append(fieldVals, sprintf("RootX: %d", v.RootX)) + fieldVals = append(fieldVals, sprintf("RootY: %d", v.RootY)) + fieldVals = append(fieldVals, sprintf("EventX: %d", v.EventX)) + fieldVals = append(fieldVals, sprintf("EventY: %d", v.EventY)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + fieldVals = append(fieldVals, sprintf("SameScreen: %t", v.SameScreen)) + return "KeyPress {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[2] = NewKeyPressEvent } @@ -2865,6 +2882,23 @@ func (v ButtonPressEvent) SequenceId() uint16 { return v.Sequence } +func (v ButtonPressEvent) String() string { + fieldVals := make([]string, 0, 12) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Detail: %d", v.Detail)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Root: %d", v.Root)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Child: %d", v.Child)) + fieldVals = append(fieldVals, sprintf("RootX: %d", v.RootX)) + fieldVals = append(fieldVals, sprintf("RootY: %d", v.RootY)) + fieldVals = append(fieldVals, sprintf("EventX: %d", v.EventX)) + fieldVals = append(fieldVals, sprintf("EventY: %d", v.EventY)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + fieldVals = append(fieldVals, sprintf("SameScreen: %t", v.SameScreen)) + return "ButtonPress {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[4] = NewButtonPressEvent } @@ -2999,6 +3033,23 @@ func (v MotionNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v MotionNotifyEvent) String() string { + fieldVals := make([]string, 0, 12) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Detail: %d", v.Detail)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Root: %d", v.Root)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Child: %d", v.Child)) + fieldVals = append(fieldVals, sprintf("RootX: %d", v.RootX)) + fieldVals = append(fieldVals, sprintf("RootY: %d", v.RootY)) + fieldVals = append(fieldVals, sprintf("EventX: %d", v.EventX)) + fieldVals = append(fieldVals, sprintf("EventY: %d", v.EventY)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + fieldVals = append(fieldVals, sprintf("SameScreen: %t", v.SameScreen)) + return "MotionNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[6] = NewMotionNotifyEvent } @@ -3127,6 +3178,24 @@ func (v EnterNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v EnterNotifyEvent) String() string { + fieldVals := make([]string, 0, 12) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Detail: %d", v.Detail)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Root: %d", v.Root)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Child: %d", v.Child)) + fieldVals = append(fieldVals, sprintf("RootX: %d", v.RootX)) + fieldVals = append(fieldVals, sprintf("RootY: %d", v.RootY)) + fieldVals = append(fieldVals, sprintf("EventX: %d", v.EventX)) + fieldVals = append(fieldVals, sprintf("EventY: %d", v.EventY)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + fieldVals = append(fieldVals, sprintf("Mode: %d", v.Mode)) + fieldVals = append(fieldVals, sprintf("SameScreenFocus: %d", v.SameScreenFocus)) + return "EnterNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[7] = NewEnterNotifyEvent } @@ -3197,6 +3266,15 @@ func (v FocusInEvent) SequenceId() uint16 { return v.Sequence } +func (v FocusInEvent) String() string { + fieldVals := make([]string, 0, 4) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Detail: %d", v.Detail)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Mode: %d", v.Mode)) + return "FocusIn {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[9] = NewFocusInEvent } @@ -3243,6 +3321,11 @@ func (v KeymapNotifyEvent) SequenceId() uint16 { return uint16(0) } +func (v KeymapNotifyEvent) String() string { + fieldVals := make([]string, 0, 1) + return "KeymapNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[11] = NewKeymapNotifyEvent } @@ -3339,6 +3422,18 @@ func (v ExposeEvent) SequenceId() uint16 { return v.Sequence } +func (v ExposeEvent) String() string { + fieldVals := make([]string, 0, 8) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("X: %d", v.X)) + fieldVals = append(fieldVals, sprintf("Y: %d", v.Y)) + fieldVals = append(fieldVals, sprintf("Width: %d", v.Width)) + fieldVals = append(fieldVals, sprintf("Height: %d", v.Height)) + fieldVals = append(fieldVals, sprintf("Count: %d", v.Count)) + return "Expose {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[12] = NewExposeEvent } @@ -3449,6 +3544,20 @@ func (v GraphicsExposureEvent) SequenceId() uint16 { return v.Sequence } +func (v GraphicsExposureEvent) String() string { + fieldVals := make([]string, 0, 10) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Drawable: %d", v.Drawable)) + fieldVals = append(fieldVals, sprintf("X: %d", v.X)) + fieldVals = append(fieldVals, sprintf("Y: %d", v.Y)) + fieldVals = append(fieldVals, sprintf("Width: %d", v.Width)) + fieldVals = append(fieldVals, sprintf("Height: %d", v.Height)) + fieldVals = append(fieldVals, sprintf("MinorOpcode: %d", v.MinorOpcode)) + fieldVals = append(fieldVals, sprintf("Count: %d", v.Count)) + fieldVals = append(fieldVals, sprintf("MajorOpcode: %d", v.MajorOpcode)) + return "GraphicsExposure {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[13] = NewGraphicsExposureEvent } @@ -3524,6 +3633,15 @@ func (v NoExposureEvent) SequenceId() uint16 { return v.Sequence } +func (v NoExposureEvent) String() string { + fieldVals := make([]string, 0, 5) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Drawable: %d", v.Drawable)) + fieldVals = append(fieldVals, sprintf("MinorOpcode: %d", v.MinorOpcode)) + fieldVals = append(fieldVals, sprintf("MajorOpcode: %d", v.MajorOpcode)) + return "NoExposure {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[14] = NewNoExposureEvent } @@ -3592,6 +3710,14 @@ func (v VisibilityNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v VisibilityNotifyEvent) String() string { + fieldVals := make([]string, 0, 4) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + return "VisibilityNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[15] = NewVisibilityNotifyEvent } @@ -3710,6 +3836,20 @@ func (v CreateNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v CreateNotifyEvent) String() string { + fieldVals := make([]string, 0, 10) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Parent: %d", v.Parent)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("X: %d", v.X)) + fieldVals = append(fieldVals, sprintf("Y: %d", v.Y)) + fieldVals = append(fieldVals, sprintf("Width: %d", v.Width)) + fieldVals = append(fieldVals, sprintf("Height: %d", v.Height)) + fieldVals = append(fieldVals, sprintf("BorderWidth: %d", v.BorderWidth)) + fieldVals = append(fieldVals, sprintf("OverrideRedirect: %t", v.OverrideRedirect)) + return "CreateNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[16] = NewCreateNotifyEvent } @@ -3773,6 +3913,14 @@ func (v DestroyNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v DestroyNotifyEvent) String() string { + fieldVals := make([]string, 0, 3) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + return "DestroyNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[17] = NewDestroyNotifyEvent } @@ -3856,6 +4004,15 @@ func (v UnmapNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v UnmapNotifyEvent) String() string { + fieldVals := make([]string, 0, 5) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("FromConfigure: %t", v.FromConfigure)) + return "UnmapNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[18] = NewUnmapNotifyEvent } @@ -3939,6 +4096,15 @@ func (v MapNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v MapNotifyEvent) String() string { + fieldVals := make([]string, 0, 5) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("OverrideRedirect: %t", v.OverrideRedirect)) + return "MapNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[19] = NewMapNotifyEvent } @@ -4002,6 +4168,14 @@ func (v MapRequestEvent) SequenceId() uint16 { return v.Sequence } +func (v MapRequestEvent) String() string { + fieldVals := make([]string, 0, 3) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Parent: %d", v.Parent)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + return "MapRequest {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[20] = NewMapRequestEvent } @@ -4106,6 +4280,18 @@ func (v ReparentNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v ReparentNotifyEvent) String() string { + fieldVals := make([]string, 0, 8) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("Parent: %d", v.Parent)) + fieldVals = append(fieldVals, sprintf("X: %d", v.X)) + fieldVals = append(fieldVals, sprintf("Y: %d", v.Y)) + fieldVals = append(fieldVals, sprintf("OverrideRedirect: %t", v.OverrideRedirect)) + return "ReparentNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[21] = NewReparentNotifyEvent } @@ -4231,6 +4417,21 @@ func (v ConfigureNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v ConfigureNotifyEvent) String() string { + fieldVals := make([]string, 0, 11) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("AboveSibling: %d", v.AboveSibling)) + fieldVals = append(fieldVals, sprintf("X: %d", v.X)) + fieldVals = append(fieldVals, sprintf("Y: %d", v.Y)) + fieldVals = append(fieldVals, sprintf("Width: %d", v.Width)) + fieldVals = append(fieldVals, sprintf("Height: %d", v.Height)) + fieldVals = append(fieldVals, sprintf("BorderWidth: %d", v.BorderWidth)) + fieldVals = append(fieldVals, sprintf("OverrideRedirect: %t", v.OverrideRedirect)) + return "ConfigureNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[22] = NewConfigureNotifyEvent } @@ -4345,6 +4546,22 @@ func (v ConfigureRequestEvent) SequenceId() uint16 { return v.Sequence } +func (v ConfigureRequestEvent) String() string { + fieldVals := make([]string, 0, 10) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("StackMode: %d", v.StackMode)) + fieldVals = append(fieldVals, sprintf("Parent: %d", v.Parent)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("Sibling: %d", v.Sibling)) + fieldVals = append(fieldVals, sprintf("X: %d", v.X)) + fieldVals = append(fieldVals, sprintf("Y: %d", v.Y)) + fieldVals = append(fieldVals, sprintf("Width: %d", v.Width)) + fieldVals = append(fieldVals, sprintf("Height: %d", v.Height)) + fieldVals = append(fieldVals, sprintf("BorderWidth: %d", v.BorderWidth)) + fieldVals = append(fieldVals, sprintf("ValueMask: %d", v.ValueMask)) + return "ConfigureRequest {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[23] = NewConfigureRequestEvent } @@ -4422,6 +4639,16 @@ func (v GravityNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v GravityNotifyEvent) String() string { + fieldVals := make([]string, 0, 5) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("X: %d", v.X)) + fieldVals = append(fieldVals, sprintf("Y: %d", v.Y)) + return "GravityNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[24] = NewGravityNotifyEvent } @@ -4492,6 +4719,15 @@ func (v ResizeRequestEvent) SequenceId() uint16 { return v.Sequence } +func (v ResizeRequestEvent) String() string { + fieldVals := make([]string, 0, 4) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("Width: %d", v.Width)) + fieldVals = append(fieldVals, sprintf("Height: %d", v.Height)) + return "ResizeRequest {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[25] = NewResizeRequestEvent } @@ -4572,6 +4808,15 @@ func (v CirculateNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v CirculateNotifyEvent) String() string { + fieldVals := make([]string, 0, 6) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("Place: %d", v.Place)) + return "CirculateNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[26] = NewCirculateNotifyEvent } @@ -4654,6 +4899,16 @@ func (v PropertyNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v PropertyNotifyEvent) String() string { + fieldVals := make([]string, 0, 6) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("Atom: %d", v.Atom)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + return "PropertyNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[28] = NewPropertyNotifyEvent } @@ -4724,6 +4979,15 @@ func (v SelectionClearEvent) SequenceId() uint16 { return v.Sequence } +func (v SelectionClearEvent) String() string { + fieldVals := make([]string, 0, 4) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Owner: %d", v.Owner)) + fieldVals = append(fieldVals, sprintf("Selection: %d", v.Selection)) + return "SelectionClear {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[29] = NewSelectionClearEvent } @@ -4815,6 +5079,18 @@ func (v SelectionRequestEvent) SequenceId() uint16 { return v.Sequence } +func (v SelectionRequestEvent) String() string { + fieldVals := make([]string, 0, 7) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Owner: %d", v.Owner)) + fieldVals = append(fieldVals, sprintf("Requestor: %d", v.Requestor)) + fieldVals = append(fieldVals, sprintf("Selection: %d", v.Selection)) + fieldVals = append(fieldVals, sprintf("Target: %d", v.Target)) + fieldVals = append(fieldVals, sprintf("Property: %d", v.Property)) + return "SelectionRequest {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[30] = NewSelectionRequestEvent } @@ -4899,6 +5175,17 @@ func (v SelectionNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v SelectionNotifyEvent) String() string { + fieldVals := make([]string, 0, 6) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Requestor: %d", v.Requestor)) + fieldVals = append(fieldVals, sprintf("Selection: %d", v.Selection)) + fieldVals = append(fieldVals, sprintf("Target: %d", v.Target)) + fieldVals = append(fieldVals, sprintf("Property: %d", v.Property)) + return "SelectionNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[31] = NewSelectionNotifyEvent } @@ -4989,6 +5276,16 @@ func (v ColormapNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v ColormapNotifyEvent) String() string { + fieldVals := make([]string, 0, 6) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("Colormap: %d", v.Colormap)) + fieldVals = append(fieldVals, sprintf("New: %t", v.New)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + return "ColormapNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[32] = NewColormapNotifyEvent } @@ -5064,6 +5361,15 @@ func (v ClientMessageEvent) SequenceId() uint16 { return v.Sequence } +func (v ClientMessageEvent) String() string { + fieldVals := make([]string, 0, 4) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Format: %d", v.Format)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("Type: %d", v.Type)) + return "ClientMessage {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[33] = NewClientMessageEvent } @@ -5139,6 +5445,15 @@ func (v MappingNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v MappingNotifyEvent) String() string { + fieldVals := make([]string, 0, 5) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Request: %d", v.Request)) + fieldVals = append(fieldVals, sprintf("FirstKeycode: %d", v.FirstKeycode)) + fieldVals = append(fieldVals, sprintf("Count: %d", v.Count)) + return "MappingNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[34] = NewMappingNotifyEvent } @@ -5163,6 +5478,23 @@ func (v KeyReleaseEvent) SequenceId() uint16 { return v.Sequence } +func (v KeyReleaseEvent) String() string { + fieldVals := make([]string, 0, 12) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Detail: %d", v.Detail)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Root: %d", v.Root)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Child: %d", v.Child)) + fieldVals = append(fieldVals, sprintf("RootX: %d", v.RootX)) + fieldVals = append(fieldVals, sprintf("RootY: %d", v.RootY)) + fieldVals = append(fieldVals, sprintf("EventX: %d", v.EventX)) + fieldVals = append(fieldVals, sprintf("EventY: %d", v.EventY)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + fieldVals = append(fieldVals, sprintf("SameScreen: %t", v.SameScreen)) + return "KeyRelease {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[3] = NewKeyReleaseEvent } @@ -5187,6 +5519,23 @@ func (v ButtonReleaseEvent) SequenceId() uint16 { return v.Sequence } +func (v ButtonReleaseEvent) String() string { + fieldVals := make([]string, 0, 12) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Detail: %d", v.Detail)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Root: %d", v.Root)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Child: %d", v.Child)) + fieldVals = append(fieldVals, sprintf("RootX: %d", v.RootX)) + fieldVals = append(fieldVals, sprintf("RootY: %d", v.RootY)) + fieldVals = append(fieldVals, sprintf("EventX: %d", v.EventX)) + fieldVals = append(fieldVals, sprintf("EventY: %d", v.EventY)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + fieldVals = append(fieldVals, sprintf("SameScreen: %t", v.SameScreen)) + return "ButtonRelease {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[5] = NewButtonReleaseEvent } @@ -5211,6 +5560,24 @@ func (v LeaveNotifyEvent) SequenceId() uint16 { return v.Sequence } +func (v LeaveNotifyEvent) String() string { + fieldVals := make([]string, 0, 12) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Detail: %d", v.Detail)) + fieldVals = append(fieldVals, sprintf("Time: %d", v.Time)) + fieldVals = append(fieldVals, sprintf("Root: %d", v.Root)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Child: %d", v.Child)) + fieldVals = append(fieldVals, sprintf("RootX: %d", v.RootX)) + fieldVals = append(fieldVals, sprintf("RootY: %d", v.RootY)) + fieldVals = append(fieldVals, sprintf("EventX: %d", v.EventX)) + fieldVals = append(fieldVals, sprintf("EventY: %d", v.EventY)) + fieldVals = append(fieldVals, sprintf("State: %d", v.State)) + fieldVals = append(fieldVals, sprintf("Mode: %d", v.Mode)) + fieldVals = append(fieldVals, sprintf("SameScreenFocus: %d", v.SameScreenFocus)) + return "LeaveNotify {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[8] = NewLeaveNotifyEvent } @@ -5235,6 +5602,15 @@ func (v FocusOutEvent) SequenceId() uint16 { return v.Sequence } +func (v FocusOutEvent) String() string { + fieldVals := make([]string, 0, 4) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Detail: %d", v.Detail)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Mode: %d", v.Mode)) + return "FocusOut {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[10] = NewFocusOutEvent } @@ -5259,6 +5635,15 @@ func (v CirculateRequestEvent) SequenceId() uint16 { return v.Sequence } +func (v CirculateRequestEvent) String() string { + fieldVals := make([]string, 0, 6) + fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence)) + fieldVals = append(fieldVals, sprintf("Event: %d", v.Event)) + fieldVals = append(fieldVals, sprintf("Window: %d", v.Window)) + fieldVals = append(fieldVals, sprintf("Place: %d", v.Place)) + return "CirculateRequest {" + stringsJoin(fieldVals, ", ") + "}" +} + func init() { newEventFuncs[27] = NewCirculateRequestEvent } @@ -5931,23 +6316,29 @@ func init() { // Request CreateWindow // size: pad((28 + (4 + pad((4 * popCount(int(ValueMask))))))) -type CreateWindowCookie cookie +type CreateWindowCookie struct { + *cookie +} // Write request to wire for CreateWindow func (c *Conn) CreateWindow(Depth byte, Wid Id, Parent Id, X int16, Y int16, Width uint16, Height uint16, BorderWidth uint16, Class uint16, Visual Visualid, ValueMask uint32, ValueList []uint32) CreateWindowCookie { cookie := c.newCookie(false, false) - c.newRequest(createWindowRequest(Depth, Wid, Parent, X, Y, Width, Height, BorderWidth, Class, Visual, ValueMask, ValueList), cookie) - return CreateWindowCookie(cookie) + c.newRequest(c.createWindowRequest(Depth, Wid, Parent, X, Y, Width, Height, BorderWidth, Class, Visual, ValueMask, ValueList), cookie) + return CreateWindowCookie{cookie} } func (c *Conn) CreateWindowChecked(Depth byte, Wid Id, Parent Id, X int16, Y int16, Width uint16, Height uint16, BorderWidth uint16, Class uint16, Visual Visualid, ValueMask uint32, ValueList []uint32) CreateWindowCookie { cookie := c.newCookie(true, false) - c.newRequest(createWindowRequest(Depth, Wid, Parent, X, Y, Width, Height, BorderWidth, Class, Visual, ValueMask, ValueList), cookie) - return CreateWindowCookie(cookie) + c.newRequest(c.createWindowRequest(Depth, Wid, Parent, X, Y, Width, Height, BorderWidth, Class, Visual, ValueMask, ValueList), cookie) + return CreateWindowCookie{cookie} +} + +func (cook CreateWindowCookie) Check() error { + return cook.check() } // Write request to wire for CreateWindow -func createWindowRequest(Depth byte, Wid Id, Parent Id, X int16, Y int16, Width uint16, Height uint16, BorderWidth uint16, Class uint16, Visual Visualid, ValueMask uint32, ValueList []uint32) []byte { +func (c *Conn) createWindowRequest(Depth byte, Wid Id, Parent Id, X int16, Y int16, Width uint16, Height uint16, BorderWidth uint16, Class uint16, Visual Visualid, ValueMask uint32, ValueList []uint32) []byte { size := pad((28 + (4 + pad((4 * popCount(int(ValueMask))))))) b := 0 buf := make([]byte, size) @@ -6001,23 +6392,29 @@ func createWindowRequest(Depth byte, Wid Id, Parent Id, X int16, Y int16, Width // Request ChangeWindowAttributes // size: pad((8 + (4 + pad((4 * popCount(int(ValueMask))))))) -type ChangeWindowAttributesCookie cookie +type ChangeWindowAttributesCookie struct { + *cookie +} // Write request to wire for ChangeWindowAttributes func (c *Conn) ChangeWindowAttributes(Window Id, ValueMask uint32, ValueList []uint32) ChangeWindowAttributesCookie { cookie := c.newCookie(false, false) - c.newRequest(changeWindowAttributesRequest(Window, ValueMask, ValueList), cookie) - return ChangeWindowAttributesCookie(cookie) + c.newRequest(c.changeWindowAttributesRequest(Window, ValueMask, ValueList), cookie) + return ChangeWindowAttributesCookie{cookie} } func (c *Conn) ChangeWindowAttributesChecked(Window Id, ValueMask uint32, ValueList []uint32) ChangeWindowAttributesCookie { cookie := c.newCookie(true, false) - c.newRequest(changeWindowAttributesRequest(Window, ValueMask, ValueList), cookie) - return ChangeWindowAttributesCookie(cookie) + c.newRequest(c.changeWindowAttributesRequest(Window, ValueMask, ValueList), cookie) + return ChangeWindowAttributesCookie{cookie} +} + +func (cook ChangeWindowAttributesCookie) Check() error { + return cook.check() } // Write request to wire for ChangeWindowAttributes -func changeWindowAttributesRequest(Window Id, ValueMask uint32, ValueList []uint32) []byte { +func (c *Conn) changeWindowAttributesRequest(Window Id, ValueMask uint32, ValueList []uint32) []byte { size := pad((8 + (4 + pad((4 * popCount(int(ValueMask))))))) b := 0 buf := make([]byte, size) @@ -6046,18 +6443,20 @@ func changeWindowAttributesRequest(Window Id, ValueMask uint32, ValueList []uint // Request GetWindowAttributes // size: 8 -type GetWindowAttributesCookie cookie +type GetWindowAttributesCookie struct { + *cookie +} func (c *Conn) GetWindowAttributes(Window Id) GetWindowAttributesCookie { cookie := c.newCookie(true, true) - c.newRequest(getWindowAttributesRequest(Window), cookie) - return GetWindowAttributesCookie(cookie) + c.newRequest(c.getWindowAttributesRequest(Window), cookie) + return GetWindowAttributesCookie{cookie} } func (c *Conn) GetWindowAttributesUnchecked(Window Id) GetWindowAttributesCookie { cookie := c.newCookie(false, true) - c.newRequest(getWindowAttributesRequest(Window), cookie) - return GetWindowAttributesCookie(cookie) + c.newRequest(c.getWindowAttributesRequest(Window), cookie) + return GetWindowAttributesCookie{cookie} } // Request reply for GetWindowAttributes @@ -6085,10 +6484,13 @@ type GetWindowAttributesReply struct { // Waits and reads reply data from request GetWindowAttributes func (cook GetWindowAttributesCookie) Reply() (*GetWindowAttributesReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getWindowAttributesReply(buf), nil } @@ -6165,8 +6567,12 @@ func getWindowAttributesReply(buf []byte) *GetWindowAttributesReply { return v } +func (cook GetWindowAttributesCookie) Check() error { + return cook.check() +} + // Write request to wire for GetWindowAttributes -func getWindowAttributesRequest(Window Id) []byte { +func (c *Conn) getWindowAttributesRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6187,23 +6593,29 @@ func getWindowAttributesRequest(Window Id) []byte { // Request DestroyWindow // size: 8 -type DestroyWindowCookie cookie +type DestroyWindowCookie struct { + *cookie +} // Write request to wire for DestroyWindow func (c *Conn) DestroyWindow(Window Id) DestroyWindowCookie { cookie := c.newCookie(false, false) - c.newRequest(destroyWindowRequest(Window), cookie) - return DestroyWindowCookie(cookie) + c.newRequest(c.destroyWindowRequest(Window), cookie) + return DestroyWindowCookie{cookie} } func (c *Conn) DestroyWindowChecked(Window Id) DestroyWindowCookie { cookie := c.newCookie(true, false) - c.newRequest(destroyWindowRequest(Window), cookie) - return DestroyWindowCookie(cookie) + c.newRequest(c.destroyWindowRequest(Window), cookie) + return DestroyWindowCookie{cookie} +} + +func (cook DestroyWindowCookie) Check() error { + return cook.check() } // Write request to wire for DestroyWindow -func destroyWindowRequest(Window Id) []byte { +func (c *Conn) destroyWindowRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6224,23 +6636,29 @@ func destroyWindowRequest(Window Id) []byte { // Request DestroySubwindows // size: 8 -type DestroySubwindowsCookie cookie +type DestroySubwindowsCookie struct { + *cookie +} // Write request to wire for DestroySubwindows func (c *Conn) DestroySubwindows(Window Id) DestroySubwindowsCookie { cookie := c.newCookie(false, false) - c.newRequest(destroySubwindowsRequest(Window), cookie) - return DestroySubwindowsCookie(cookie) + c.newRequest(c.destroySubwindowsRequest(Window), cookie) + return DestroySubwindowsCookie{cookie} } func (c *Conn) DestroySubwindowsChecked(Window Id) DestroySubwindowsCookie { cookie := c.newCookie(true, false) - c.newRequest(destroySubwindowsRequest(Window), cookie) - return DestroySubwindowsCookie(cookie) + c.newRequest(c.destroySubwindowsRequest(Window), cookie) + return DestroySubwindowsCookie{cookie} +} + +func (cook DestroySubwindowsCookie) Check() error { + return cook.check() } // Write request to wire for DestroySubwindows -func destroySubwindowsRequest(Window Id) []byte { +func (c *Conn) destroySubwindowsRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6261,23 +6679,29 @@ func destroySubwindowsRequest(Window Id) []byte { // Request ChangeSaveSet // size: 8 -type ChangeSaveSetCookie cookie +type ChangeSaveSetCookie struct { + *cookie +} // Write request to wire for ChangeSaveSet func (c *Conn) ChangeSaveSet(Mode byte, Window Id) ChangeSaveSetCookie { cookie := c.newCookie(false, false) - c.newRequest(changeSaveSetRequest(Mode, Window), cookie) - return ChangeSaveSetCookie(cookie) + c.newRequest(c.changeSaveSetRequest(Mode, Window), cookie) + return ChangeSaveSetCookie{cookie} } func (c *Conn) ChangeSaveSetChecked(Mode byte, Window Id) ChangeSaveSetCookie { cookie := c.newCookie(true, false) - c.newRequest(changeSaveSetRequest(Mode, Window), cookie) - return ChangeSaveSetCookie(cookie) + c.newRequest(c.changeSaveSetRequest(Mode, Window), cookie) + return ChangeSaveSetCookie{cookie} +} + +func (cook ChangeSaveSetCookie) Check() error { + return cook.check() } // Write request to wire for ChangeSaveSet -func changeSaveSetRequest(Mode byte, Window Id) []byte { +func (c *Conn) changeSaveSetRequest(Mode byte, Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6299,23 +6723,29 @@ func changeSaveSetRequest(Mode byte, Window Id) []byte { // Request ReparentWindow // size: 16 -type ReparentWindowCookie cookie +type ReparentWindowCookie struct { + *cookie +} // Write request to wire for ReparentWindow func (c *Conn) ReparentWindow(Window Id, Parent Id, X int16, Y int16) ReparentWindowCookie { cookie := c.newCookie(false, false) - c.newRequest(reparentWindowRequest(Window, Parent, X, Y), cookie) - return ReparentWindowCookie(cookie) + c.newRequest(c.reparentWindowRequest(Window, Parent, X, Y), cookie) + return ReparentWindowCookie{cookie} } func (c *Conn) ReparentWindowChecked(Window Id, Parent Id, X int16, Y int16) ReparentWindowCookie { cookie := c.newCookie(true, false) - c.newRequest(reparentWindowRequest(Window, Parent, X, Y), cookie) - return ReparentWindowCookie(cookie) + c.newRequest(c.reparentWindowRequest(Window, Parent, X, Y), cookie) + return ReparentWindowCookie{cookie} +} + +func (cook ReparentWindowCookie) Check() error { + return cook.check() } // Write request to wire for ReparentWindow -func reparentWindowRequest(Window Id, Parent Id, X int16, Y int16) []byte { +func (c *Conn) reparentWindowRequest(Window Id, Parent Id, X int16, Y int16) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -6345,23 +6775,29 @@ func reparentWindowRequest(Window Id, Parent Id, X int16, Y int16) []byte { // Request MapWindow // size: 8 -type MapWindowCookie cookie +type MapWindowCookie struct { + *cookie +} // Write request to wire for MapWindow func (c *Conn) MapWindow(Window Id) MapWindowCookie { cookie := c.newCookie(false, false) - c.newRequest(mapWindowRequest(Window), cookie) - return MapWindowCookie(cookie) + c.newRequest(c.mapWindowRequest(Window), cookie) + return MapWindowCookie{cookie} } func (c *Conn) MapWindowChecked(Window Id) MapWindowCookie { cookie := c.newCookie(true, false) - c.newRequest(mapWindowRequest(Window), cookie) - return MapWindowCookie(cookie) + c.newRequest(c.mapWindowRequest(Window), cookie) + return MapWindowCookie{cookie} +} + +func (cook MapWindowCookie) Check() error { + return cook.check() } // Write request to wire for MapWindow -func mapWindowRequest(Window Id) []byte { +func (c *Conn) mapWindowRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6382,23 +6818,29 @@ func mapWindowRequest(Window Id) []byte { // Request MapSubwindows // size: 8 -type MapSubwindowsCookie cookie +type MapSubwindowsCookie struct { + *cookie +} // Write request to wire for MapSubwindows func (c *Conn) MapSubwindows(Window Id) MapSubwindowsCookie { cookie := c.newCookie(false, false) - c.newRequest(mapSubwindowsRequest(Window), cookie) - return MapSubwindowsCookie(cookie) + c.newRequest(c.mapSubwindowsRequest(Window), cookie) + return MapSubwindowsCookie{cookie} } func (c *Conn) MapSubwindowsChecked(Window Id) MapSubwindowsCookie { cookie := c.newCookie(true, false) - c.newRequest(mapSubwindowsRequest(Window), cookie) - return MapSubwindowsCookie(cookie) + c.newRequest(c.mapSubwindowsRequest(Window), cookie) + return MapSubwindowsCookie{cookie} +} + +func (cook MapSubwindowsCookie) Check() error { + return cook.check() } // Write request to wire for MapSubwindows -func mapSubwindowsRequest(Window Id) []byte { +func (c *Conn) mapSubwindowsRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6419,23 +6861,29 @@ func mapSubwindowsRequest(Window Id) []byte { // Request UnmapWindow // size: 8 -type UnmapWindowCookie cookie +type UnmapWindowCookie struct { + *cookie +} // Write request to wire for UnmapWindow func (c *Conn) UnmapWindow(Window Id) UnmapWindowCookie { cookie := c.newCookie(false, false) - c.newRequest(unmapWindowRequest(Window), cookie) - return UnmapWindowCookie(cookie) + c.newRequest(c.unmapWindowRequest(Window), cookie) + return UnmapWindowCookie{cookie} } func (c *Conn) UnmapWindowChecked(Window Id) UnmapWindowCookie { cookie := c.newCookie(true, false) - c.newRequest(unmapWindowRequest(Window), cookie) - return UnmapWindowCookie(cookie) + c.newRequest(c.unmapWindowRequest(Window), cookie) + return UnmapWindowCookie{cookie} +} + +func (cook UnmapWindowCookie) Check() error { + return cook.check() } // Write request to wire for UnmapWindow -func unmapWindowRequest(Window Id) []byte { +func (c *Conn) unmapWindowRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6456,23 +6904,29 @@ func unmapWindowRequest(Window Id) []byte { // Request UnmapSubwindows // size: 8 -type UnmapSubwindowsCookie cookie +type UnmapSubwindowsCookie struct { + *cookie +} // Write request to wire for UnmapSubwindows func (c *Conn) UnmapSubwindows(Window Id) UnmapSubwindowsCookie { cookie := c.newCookie(false, false) - c.newRequest(unmapSubwindowsRequest(Window), cookie) - return UnmapSubwindowsCookie(cookie) + c.newRequest(c.unmapSubwindowsRequest(Window), cookie) + return UnmapSubwindowsCookie{cookie} } func (c *Conn) UnmapSubwindowsChecked(Window Id) UnmapSubwindowsCookie { cookie := c.newCookie(true, false) - c.newRequest(unmapSubwindowsRequest(Window), cookie) - return UnmapSubwindowsCookie(cookie) + c.newRequest(c.unmapSubwindowsRequest(Window), cookie) + return UnmapSubwindowsCookie{cookie} +} + +func (cook UnmapSubwindowsCookie) Check() error { + return cook.check() } // Write request to wire for UnmapSubwindows -func unmapSubwindowsRequest(Window Id) []byte { +func (c *Conn) unmapSubwindowsRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6493,23 +6947,29 @@ func unmapSubwindowsRequest(Window Id) []byte { // Request ConfigureWindow // size: pad((10 + (2 + pad((4 * popCount(int(ValueMask))))))) -type ConfigureWindowCookie cookie +type ConfigureWindowCookie struct { + *cookie +} // Write request to wire for ConfigureWindow func (c *Conn) ConfigureWindow(Window Id, ValueMask uint16, ValueList []uint32) ConfigureWindowCookie { cookie := c.newCookie(false, false) - c.newRequest(configureWindowRequest(Window, ValueMask, ValueList), cookie) - return ConfigureWindowCookie(cookie) + c.newRequest(c.configureWindowRequest(Window, ValueMask, ValueList), cookie) + return ConfigureWindowCookie{cookie} } func (c *Conn) ConfigureWindowChecked(Window Id, ValueMask uint16, ValueList []uint32) ConfigureWindowCookie { cookie := c.newCookie(true, false) - c.newRequest(configureWindowRequest(Window, ValueMask, ValueList), cookie) - return ConfigureWindowCookie(cookie) + c.newRequest(c.configureWindowRequest(Window, ValueMask, ValueList), cookie) + return ConfigureWindowCookie{cookie} +} + +func (cook ConfigureWindowCookie) Check() error { + return cook.check() } // Write request to wire for ConfigureWindow -func configureWindowRequest(Window Id, ValueMask uint16, ValueList []uint32) []byte { +func (c *Conn) configureWindowRequest(Window Id, ValueMask uint16, ValueList []uint32) []byte { size := pad((10 + (2 + pad((4 * popCount(int(ValueMask))))))) b := 0 buf := make([]byte, size) @@ -6541,23 +7001,29 @@ func configureWindowRequest(Window Id, ValueMask uint16, ValueList []uint32) []b // Request CirculateWindow // size: 8 -type CirculateWindowCookie cookie +type CirculateWindowCookie struct { + *cookie +} // Write request to wire for CirculateWindow func (c *Conn) CirculateWindow(Direction byte, Window Id) CirculateWindowCookie { cookie := c.newCookie(false, false) - c.newRequest(circulateWindowRequest(Direction, Window), cookie) - return CirculateWindowCookie(cookie) + c.newRequest(c.circulateWindowRequest(Direction, Window), cookie) + return CirculateWindowCookie{cookie} } func (c *Conn) CirculateWindowChecked(Direction byte, Window Id) CirculateWindowCookie { cookie := c.newCookie(true, false) - c.newRequest(circulateWindowRequest(Direction, Window), cookie) - return CirculateWindowCookie(cookie) + c.newRequest(c.circulateWindowRequest(Direction, Window), cookie) + return CirculateWindowCookie{cookie} +} + +func (cook CirculateWindowCookie) Check() error { + return cook.check() } // Write request to wire for CirculateWindow -func circulateWindowRequest(Direction byte, Window Id) []byte { +func (c *Conn) circulateWindowRequest(Direction byte, Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6579,18 +7045,20 @@ func circulateWindowRequest(Direction byte, Window Id) []byte { // Request GetGeometry // size: 8 -type GetGeometryCookie cookie +type GetGeometryCookie struct { + *cookie +} func (c *Conn) GetGeometry(Drawable Id) GetGeometryCookie { cookie := c.newCookie(true, true) - c.newRequest(getGeometryRequest(Drawable), cookie) - return GetGeometryCookie(cookie) + c.newRequest(c.getGeometryRequest(Drawable), cookie) + return GetGeometryCookie{cookie} } func (c *Conn) GetGeometryUnchecked(Drawable Id) GetGeometryCookie { cookie := c.newCookie(false, true) - c.newRequest(getGeometryRequest(Drawable), cookie) - return GetGeometryCookie(cookie) + c.newRequest(c.getGeometryRequest(Drawable), cookie) + return GetGeometryCookie{cookie} } // Request reply for GetGeometry @@ -6610,10 +7078,13 @@ type GetGeometryReply struct { // Waits and reads reply data from request GetGeometry func (cook GetGeometryCookie) Reply() (*GetGeometryReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getGeometryReply(buf), nil } @@ -6654,8 +7125,12 @@ func getGeometryReply(buf []byte) *GetGeometryReply { return v } +func (cook GetGeometryCookie) Check() error { + return cook.check() +} + // Write request to wire for GetGeometry -func getGeometryRequest(Drawable Id) []byte { +func (c *Conn) getGeometryRequest(Drawable Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6676,18 +7151,20 @@ func getGeometryRequest(Drawable Id) []byte { // Request QueryTree // size: 8 -type QueryTreeCookie cookie +type QueryTreeCookie struct { + *cookie +} func (c *Conn) QueryTree(Window Id) QueryTreeCookie { cookie := c.newCookie(true, true) - c.newRequest(queryTreeRequest(Window), cookie) - return QueryTreeCookie(cookie) + c.newRequest(c.queryTreeRequest(Window), cookie) + return QueryTreeCookie{cookie} } func (c *Conn) QueryTreeUnchecked(Window Id) QueryTreeCookie { cookie := c.newCookie(false, true) - c.newRequest(queryTreeRequest(Window), cookie) - return QueryTreeCookie(cookie) + c.newRequest(c.queryTreeRequest(Window), cookie) + return QueryTreeCookie{cookie} } // Request reply for QueryTree @@ -6705,10 +7182,13 @@ type QueryTreeReply struct { // Waits and reads reply data from request QueryTree func (cook QueryTreeCookie) Reply() (*QueryTreeReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return queryTreeReply(buf), nil } @@ -6746,8 +7226,12 @@ func queryTreeReply(buf []byte) *QueryTreeReply { return v } +func (cook QueryTreeCookie) Check() error { + return cook.check() +} + // Write request to wire for QueryTree -func queryTreeRequest(Window Id) []byte { +func (c *Conn) queryTreeRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6768,18 +7252,20 @@ func queryTreeRequest(Window Id) []byte { // Request InternAtom // size: pad((8 + pad((int(NameLen) * 1)))) -type InternAtomCookie cookie +type InternAtomCookie struct { + *cookie +} func (c *Conn) InternAtom(OnlyIfExists bool, NameLen uint16, Name string) InternAtomCookie { cookie := c.newCookie(true, true) - c.newRequest(internAtomRequest(OnlyIfExists, NameLen, Name), cookie) - return InternAtomCookie(cookie) + c.newRequest(c.internAtomRequest(OnlyIfExists, NameLen, Name), cookie) + return InternAtomCookie{cookie} } func (c *Conn) InternAtomUnchecked(OnlyIfExists bool, NameLen uint16, Name string) InternAtomCookie { cookie := c.newCookie(false, true) - c.newRequest(internAtomRequest(OnlyIfExists, NameLen, Name), cookie) - return InternAtomCookie(cookie) + c.newRequest(c.internAtomRequest(OnlyIfExists, NameLen, Name), cookie) + return InternAtomCookie{cookie} } // Request reply for InternAtom @@ -6793,10 +7279,13 @@ type InternAtomReply struct { // Waits and reads reply data from request InternAtom func (cook InternAtomCookie) Reply() (*InternAtomReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return internAtomReply(buf), nil } @@ -6819,8 +7308,12 @@ func internAtomReply(buf []byte) *InternAtomReply { return v } +func (cook InternAtomCookie) Check() error { + return cook.check() +} + // Write request to wire for InternAtom -func internAtomRequest(OnlyIfExists bool, NameLen uint16, Name string) []byte { +func (c *Conn) internAtomRequest(OnlyIfExists bool, NameLen uint16, Name string) []byte { size := pad((8 + pad((int(NameLen) * 1)))) b := 0 buf := make([]byte, size) @@ -6851,18 +7344,20 @@ func internAtomRequest(OnlyIfExists bool, NameLen uint16, Name string) []byte { // Request GetAtomName // size: 8 -type GetAtomNameCookie cookie +type GetAtomNameCookie struct { + *cookie +} func (c *Conn) GetAtomName(Atom Id) GetAtomNameCookie { cookie := c.newCookie(true, true) - c.newRequest(getAtomNameRequest(Atom), cookie) - return GetAtomNameCookie(cookie) + c.newRequest(c.getAtomNameRequest(Atom), cookie) + return GetAtomNameCookie{cookie} } func (c *Conn) GetAtomNameUnchecked(Atom Id) GetAtomNameCookie { cookie := c.newCookie(false, true) - c.newRequest(getAtomNameRequest(Atom), cookie) - return GetAtomNameCookie(cookie) + c.newRequest(c.getAtomNameRequest(Atom), cookie) + return GetAtomNameCookie{cookie} } // Request reply for GetAtomName @@ -6878,10 +7373,13 @@ type GetAtomNameReply struct { // Waits and reads reply data from request GetAtomName func (cook GetAtomNameCookie) Reply() (*GetAtomNameReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getAtomNameReply(buf), nil } @@ -6913,8 +7411,12 @@ func getAtomNameReply(buf []byte) *GetAtomNameReply { return v } +func (cook GetAtomNameCookie) Check() error { + return cook.check() +} + // Write request to wire for GetAtomName -func getAtomNameRequest(Atom Id) []byte { +func (c *Conn) getAtomNameRequest(Atom Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -6935,23 +7437,29 @@ func getAtomNameRequest(Atom Id) []byte { // Request ChangeProperty // size: pad((24 + pad((((int(DataLen) * int(Format)) / 8) * 1)))) -type ChangePropertyCookie cookie +type ChangePropertyCookie struct { + *cookie +} // Write request to wire for ChangeProperty func (c *Conn) ChangeProperty(Mode byte, Window Id, Property Id, Type Id, Format byte, DataLen uint32, Data []byte) ChangePropertyCookie { cookie := c.newCookie(false, false) - c.newRequest(changePropertyRequest(Mode, Window, Property, Type, Format, DataLen, Data), cookie) - return ChangePropertyCookie(cookie) + c.newRequest(c.changePropertyRequest(Mode, Window, Property, Type, Format, DataLen, Data), cookie) + return ChangePropertyCookie{cookie} } func (c *Conn) ChangePropertyChecked(Mode byte, Window Id, Property Id, Type Id, Format byte, DataLen uint32, Data []byte) ChangePropertyCookie { cookie := c.newCookie(true, false) - c.newRequest(changePropertyRequest(Mode, Window, Property, Type, Format, DataLen, Data), cookie) - return ChangePropertyCookie(cookie) + c.newRequest(c.changePropertyRequest(Mode, Window, Property, Type, Format, DataLen, Data), cookie) + return ChangePropertyCookie{cookie} +} + +func (cook ChangePropertyCookie) Check() error { + return cook.check() } // Write request to wire for ChangeProperty -func changePropertyRequest(Mode byte, Window Id, Property Id, Type Id, Format byte, DataLen uint32, Data []byte) []byte { +func (c *Conn) changePropertyRequest(Mode byte, Window Id, Property Id, Type Id, Format byte, DataLen uint32, Data []byte) []byte { size := pad((24 + pad((((int(DataLen) * int(Format)) / 8) * 1)))) b := 0 buf := make([]byte, size) @@ -6990,23 +7498,29 @@ func changePropertyRequest(Mode byte, Window Id, Property Id, Type Id, Format by // Request DeleteProperty // size: 12 -type DeletePropertyCookie cookie +type DeletePropertyCookie struct { + *cookie +} // Write request to wire for DeleteProperty func (c *Conn) DeleteProperty(Window Id, Property Id) DeletePropertyCookie { cookie := c.newCookie(false, false) - c.newRequest(deletePropertyRequest(Window, Property), cookie) - return DeletePropertyCookie(cookie) + c.newRequest(c.deletePropertyRequest(Window, Property), cookie) + return DeletePropertyCookie{cookie} } func (c *Conn) DeletePropertyChecked(Window Id, Property Id) DeletePropertyCookie { cookie := c.newCookie(true, false) - c.newRequest(deletePropertyRequest(Window, Property), cookie) - return DeletePropertyCookie(cookie) + c.newRequest(c.deletePropertyRequest(Window, Property), cookie) + return DeletePropertyCookie{cookie} +} + +func (cook DeletePropertyCookie) Check() error { + return cook.check() } // Write request to wire for DeleteProperty -func deletePropertyRequest(Window Id, Property Id) []byte { +func (c *Conn) deletePropertyRequest(Window Id, Property Id) []byte { size := 12 b := 0 buf := make([]byte, size) @@ -7030,18 +7544,20 @@ func deletePropertyRequest(Window Id, Property Id) []byte { // Request GetProperty // size: 24 -type GetPropertyCookie cookie +type GetPropertyCookie struct { + *cookie +} func (c *Conn) GetProperty(Delete bool, Window Id, Property Id, Type Id, LongOffset uint32, LongLength uint32) GetPropertyCookie { cookie := c.newCookie(true, true) - c.newRequest(getPropertyRequest(Delete, Window, Property, Type, LongOffset, LongLength), cookie) - return GetPropertyCookie(cookie) + c.newRequest(c.getPropertyRequest(Delete, Window, Property, Type, LongOffset, LongLength), cookie) + return GetPropertyCookie{cookie} } func (c *Conn) GetPropertyUnchecked(Delete bool, Window Id, Property Id, Type Id, LongOffset uint32, LongLength uint32) GetPropertyCookie { cookie := c.newCookie(false, true) - c.newRequest(getPropertyRequest(Delete, Window, Property, Type, LongOffset, LongLength), cookie) - return GetPropertyCookie(cookie) + c.newRequest(c.getPropertyRequest(Delete, Window, Property, Type, LongOffset, LongLength), cookie) + return GetPropertyCookie{cookie} } // Request reply for GetProperty @@ -7059,10 +7575,13 @@ type GetPropertyReply struct { // Waits and reads reply data from request GetProperty func (cook GetPropertyCookie) Reply() (*GetPropertyReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getPropertyReply(buf), nil } @@ -7098,8 +7617,12 @@ func getPropertyReply(buf []byte) *GetPropertyReply { return v } +func (cook GetPropertyCookie) Check() error { + return cook.check() +} + // Write request to wire for GetProperty -func getPropertyRequest(Delete bool, Window Id, Property Id, Type Id, LongOffset uint32, LongLength uint32) []byte { +func (c *Conn) getPropertyRequest(Delete bool, Window Id, Property Id, Type Id, LongOffset uint32, LongLength uint32) []byte { size := 24 b := 0 buf := make([]byte, size) @@ -7137,18 +7660,20 @@ func getPropertyRequest(Delete bool, Window Id, Property Id, Type Id, LongOffset // Request ListProperties // size: 8 -type ListPropertiesCookie cookie +type ListPropertiesCookie struct { + *cookie +} func (c *Conn) ListProperties(Window Id) ListPropertiesCookie { cookie := c.newCookie(true, true) - c.newRequest(listPropertiesRequest(Window), cookie) - return ListPropertiesCookie(cookie) + c.newRequest(c.listPropertiesRequest(Window), cookie) + return ListPropertiesCookie{cookie} } func (c *Conn) ListPropertiesUnchecked(Window Id) ListPropertiesCookie { cookie := c.newCookie(false, true) - c.newRequest(listPropertiesRequest(Window), cookie) - return ListPropertiesCookie(cookie) + c.newRequest(c.listPropertiesRequest(Window), cookie) + return ListPropertiesCookie{cookie} } // Request reply for ListProperties @@ -7164,10 +7689,13 @@ type ListPropertiesReply struct { // Waits and reads reply data from request ListProperties func (cook ListPropertiesCookie) Reply() (*ListPropertiesReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return listPropertiesReply(buf), nil } @@ -7199,8 +7727,12 @@ func listPropertiesReply(buf []byte) *ListPropertiesReply { return v } +func (cook ListPropertiesCookie) Check() error { + return cook.check() +} + // Write request to wire for ListProperties -func listPropertiesRequest(Window Id) []byte { +func (c *Conn) listPropertiesRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -7221,23 +7753,29 @@ func listPropertiesRequest(Window Id) []byte { // Request SetSelectionOwner // size: 16 -type SetSelectionOwnerCookie cookie +type SetSelectionOwnerCookie struct { + *cookie +} // Write request to wire for SetSelectionOwner func (c *Conn) SetSelectionOwner(Owner Id, Selection Id, Time Timestamp) SetSelectionOwnerCookie { cookie := c.newCookie(false, false) - c.newRequest(setSelectionOwnerRequest(Owner, Selection, Time), cookie) - return SetSelectionOwnerCookie(cookie) + c.newRequest(c.setSelectionOwnerRequest(Owner, Selection, Time), cookie) + return SetSelectionOwnerCookie{cookie} } func (c *Conn) SetSelectionOwnerChecked(Owner Id, Selection Id, Time Timestamp) SetSelectionOwnerCookie { cookie := c.newCookie(true, false) - c.newRequest(setSelectionOwnerRequest(Owner, Selection, Time), cookie) - return SetSelectionOwnerCookie(cookie) + c.newRequest(c.setSelectionOwnerRequest(Owner, Selection, Time), cookie) + return SetSelectionOwnerCookie{cookie} +} + +func (cook SetSelectionOwnerCookie) Check() error { + return cook.check() } // Write request to wire for SetSelectionOwner -func setSelectionOwnerRequest(Owner Id, Selection Id, Time Timestamp) []byte { +func (c *Conn) setSelectionOwnerRequest(Owner Id, Selection Id, Time Timestamp) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -7264,18 +7802,20 @@ func setSelectionOwnerRequest(Owner Id, Selection Id, Time Timestamp) []byte { // Request GetSelectionOwner // size: 8 -type GetSelectionOwnerCookie cookie +type GetSelectionOwnerCookie struct { + *cookie +} func (c *Conn) GetSelectionOwner(Selection Id) GetSelectionOwnerCookie { cookie := c.newCookie(true, true) - c.newRequest(getSelectionOwnerRequest(Selection), cookie) - return GetSelectionOwnerCookie(cookie) + c.newRequest(c.getSelectionOwnerRequest(Selection), cookie) + return GetSelectionOwnerCookie{cookie} } func (c *Conn) GetSelectionOwnerUnchecked(Selection Id) GetSelectionOwnerCookie { cookie := c.newCookie(false, true) - c.newRequest(getSelectionOwnerRequest(Selection), cookie) - return GetSelectionOwnerCookie(cookie) + c.newRequest(c.getSelectionOwnerRequest(Selection), cookie) + return GetSelectionOwnerCookie{cookie} } // Request reply for GetSelectionOwner @@ -7289,10 +7829,13 @@ type GetSelectionOwnerReply struct { // Waits and reads reply data from request GetSelectionOwner func (cook GetSelectionOwnerCookie) Reply() (*GetSelectionOwnerReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getSelectionOwnerReply(buf), nil } @@ -7315,8 +7858,12 @@ func getSelectionOwnerReply(buf []byte) *GetSelectionOwnerReply { return v } +func (cook GetSelectionOwnerCookie) Check() error { + return cook.check() +} + // Write request to wire for GetSelectionOwner -func getSelectionOwnerRequest(Selection Id) []byte { +func (c *Conn) getSelectionOwnerRequest(Selection Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -7337,23 +7884,29 @@ func getSelectionOwnerRequest(Selection Id) []byte { // Request ConvertSelection // size: 24 -type ConvertSelectionCookie cookie +type ConvertSelectionCookie struct { + *cookie +} // Write request to wire for ConvertSelection func (c *Conn) ConvertSelection(Requestor Id, Selection Id, Target Id, Property Id, Time Timestamp) ConvertSelectionCookie { cookie := c.newCookie(false, false) - c.newRequest(convertSelectionRequest(Requestor, Selection, Target, Property, Time), cookie) - return ConvertSelectionCookie(cookie) + c.newRequest(c.convertSelectionRequest(Requestor, Selection, Target, Property, Time), cookie) + return ConvertSelectionCookie{cookie} } func (c *Conn) ConvertSelectionChecked(Requestor Id, Selection Id, Target Id, Property Id, Time Timestamp) ConvertSelectionCookie { cookie := c.newCookie(true, false) - c.newRequest(convertSelectionRequest(Requestor, Selection, Target, Property, Time), cookie) - return ConvertSelectionCookie(cookie) + c.newRequest(c.convertSelectionRequest(Requestor, Selection, Target, Property, Time), cookie) + return ConvertSelectionCookie{cookie} +} + +func (cook ConvertSelectionCookie) Check() error { + return cook.check() } // Write request to wire for ConvertSelection -func convertSelectionRequest(Requestor Id, Selection Id, Target Id, Property Id, Time Timestamp) []byte { +func (c *Conn) convertSelectionRequest(Requestor Id, Selection Id, Target Id, Property Id, Time Timestamp) []byte { size := 24 b := 0 buf := make([]byte, size) @@ -7386,23 +7939,29 @@ func convertSelectionRequest(Requestor Id, Selection Id, Target Id, Property Id, // Request SendEvent // size: pad((12 + pad(32))) -type SendEventCookie cookie +type SendEventCookie struct { + *cookie +} // Write request to wire for SendEvent func (c *Conn) SendEvent(Propagate bool, Destination Id, EventMask uint32, Event string) SendEventCookie { cookie := c.newCookie(false, false) - c.newRequest(sendEventRequest(Propagate, Destination, EventMask, Event), cookie) - return SendEventCookie(cookie) + c.newRequest(c.sendEventRequest(Propagate, Destination, EventMask, Event), cookie) + return SendEventCookie{cookie} } func (c *Conn) SendEventChecked(Propagate bool, Destination Id, EventMask uint32, Event string) SendEventCookie { cookie := c.newCookie(true, false) - c.newRequest(sendEventRequest(Propagate, Destination, EventMask, Event), cookie) - return SendEventCookie(cookie) + c.newRequest(c.sendEventRequest(Propagate, Destination, EventMask, Event), cookie) + return SendEventCookie{cookie} +} + +func (cook SendEventCookie) Check() error { + return cook.check() } // Write request to wire for SendEvent -func sendEventRequest(Propagate bool, Destination Id, EventMask uint32, Event string) []byte { +func (c *Conn) sendEventRequest(Propagate bool, Destination Id, EventMask uint32, Event string) []byte { size := pad((12 + pad(32))) b := 0 buf := make([]byte, size) @@ -7434,18 +7993,20 @@ func sendEventRequest(Propagate bool, Destination Id, EventMask uint32, Event st // Request GrabPointer // size: 24 -type GrabPointerCookie cookie +type GrabPointerCookie struct { + *cookie +} func (c *Conn) GrabPointer(OwnerEvents bool, GrabWindow Id, EventMask uint16, PointerMode byte, KeyboardMode byte, ConfineTo Id, Cursor Id, Time Timestamp) GrabPointerCookie { cookie := c.newCookie(true, true) - c.newRequest(grabPointerRequest(OwnerEvents, GrabWindow, EventMask, PointerMode, KeyboardMode, ConfineTo, Cursor, Time), cookie) - return GrabPointerCookie(cookie) + c.newRequest(c.grabPointerRequest(OwnerEvents, GrabWindow, EventMask, PointerMode, KeyboardMode, ConfineTo, Cursor, Time), cookie) + return GrabPointerCookie{cookie} } func (c *Conn) GrabPointerUnchecked(OwnerEvents bool, GrabWindow Id, EventMask uint16, PointerMode byte, KeyboardMode byte, ConfineTo Id, Cursor Id, Time Timestamp) GrabPointerCookie { cookie := c.newCookie(false, true) - c.newRequest(grabPointerRequest(OwnerEvents, GrabWindow, EventMask, PointerMode, KeyboardMode, ConfineTo, Cursor, Time), cookie) - return GrabPointerCookie(cookie) + c.newRequest(c.grabPointerRequest(OwnerEvents, GrabWindow, EventMask, PointerMode, KeyboardMode, ConfineTo, Cursor, Time), cookie) + return GrabPointerCookie{cookie} } // Request reply for GrabPointer @@ -7458,10 +8019,13 @@ type GrabPointerReply struct { // Waits and reads reply data from request GrabPointer func (cook GrabPointerCookie) Reply() (*GrabPointerReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return grabPointerReply(buf), nil } @@ -7473,11 +8037,21 @@ func grabPointerReply(buf []byte) *GrabPointerReply { v.Status = buf[b] b += 1 + v.Sequence = Get16(buf[b:]) + b += 2 + + v.Length = Get32(buf[b:]) // 4-byte units + b += 4 + return v } +func (cook GrabPointerCookie) Check() error { + return cook.check() +} + // Write request to wire for GrabPointer -func grabPointerRequest(OwnerEvents bool, GrabWindow Id, EventMask uint16, PointerMode byte, KeyboardMode byte, ConfineTo Id, Cursor Id, Time Timestamp) []byte { +func (c *Conn) grabPointerRequest(OwnerEvents bool, GrabWindow Id, EventMask uint16, PointerMode byte, KeyboardMode byte, ConfineTo Id, Cursor Id, Time Timestamp) []byte { size := 24 b := 0 buf := make([]byte, size) @@ -7521,23 +8095,29 @@ func grabPointerRequest(OwnerEvents bool, GrabWindow Id, EventMask uint16, Point // Request UngrabPointer // size: 8 -type UngrabPointerCookie cookie +type UngrabPointerCookie struct { + *cookie +} // Write request to wire for UngrabPointer func (c *Conn) UngrabPointer(Time Timestamp) UngrabPointerCookie { cookie := c.newCookie(false, false) - c.newRequest(ungrabPointerRequest(Time), cookie) - return UngrabPointerCookie(cookie) + c.newRequest(c.ungrabPointerRequest(Time), cookie) + return UngrabPointerCookie{cookie} } func (c *Conn) UngrabPointerChecked(Time Timestamp) UngrabPointerCookie { cookie := c.newCookie(true, false) - c.newRequest(ungrabPointerRequest(Time), cookie) - return UngrabPointerCookie(cookie) + c.newRequest(c.ungrabPointerRequest(Time), cookie) + return UngrabPointerCookie{cookie} +} + +func (cook UngrabPointerCookie) Check() error { + return cook.check() } // Write request to wire for UngrabPointer -func ungrabPointerRequest(Time Timestamp) []byte { +func (c *Conn) ungrabPointerRequest(Time Timestamp) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -7558,23 +8138,29 @@ func ungrabPointerRequest(Time Timestamp) []byte { // Request GrabButton // size: 24 -type GrabButtonCookie cookie +type GrabButtonCookie struct { + *cookie +} // Write request to wire for GrabButton func (c *Conn) GrabButton(OwnerEvents bool, GrabWindow Id, EventMask uint16, PointerMode byte, KeyboardMode byte, ConfineTo Id, Cursor Id, Button byte, Modifiers uint16) GrabButtonCookie { cookie := c.newCookie(false, false) - c.newRequest(grabButtonRequest(OwnerEvents, GrabWindow, EventMask, PointerMode, KeyboardMode, ConfineTo, Cursor, Button, Modifiers), cookie) - return GrabButtonCookie(cookie) + c.newRequest(c.grabButtonRequest(OwnerEvents, GrabWindow, EventMask, PointerMode, KeyboardMode, ConfineTo, Cursor, Button, Modifiers), cookie) + return GrabButtonCookie{cookie} } func (c *Conn) GrabButtonChecked(OwnerEvents bool, GrabWindow Id, EventMask uint16, PointerMode byte, KeyboardMode byte, ConfineTo Id, Cursor Id, Button byte, Modifiers uint16) GrabButtonCookie { cookie := c.newCookie(true, false) - c.newRequest(grabButtonRequest(OwnerEvents, GrabWindow, EventMask, PointerMode, KeyboardMode, ConfineTo, Cursor, Button, Modifiers), cookie) - return GrabButtonCookie(cookie) + c.newRequest(c.grabButtonRequest(OwnerEvents, GrabWindow, EventMask, PointerMode, KeyboardMode, ConfineTo, Cursor, Button, Modifiers), cookie) + return GrabButtonCookie{cookie} +} + +func (cook GrabButtonCookie) Check() error { + return cook.check() } // Write request to wire for GrabButton -func grabButtonRequest(OwnerEvents bool, GrabWindow Id, EventMask uint16, PointerMode byte, KeyboardMode byte, ConfineTo Id, Cursor Id, Button byte, Modifiers uint16) []byte { +func (c *Conn) grabButtonRequest(OwnerEvents bool, GrabWindow Id, EventMask uint16, PointerMode byte, KeyboardMode byte, ConfineTo Id, Cursor Id, Button byte, Modifiers uint16) []byte { size := 24 b := 0 buf := make([]byte, size) @@ -7623,23 +8209,29 @@ func grabButtonRequest(OwnerEvents bool, GrabWindow Id, EventMask uint16, Pointe // Request UngrabButton // size: 12 -type UngrabButtonCookie cookie +type UngrabButtonCookie struct { + *cookie +} // Write request to wire for UngrabButton func (c *Conn) UngrabButton(Button byte, GrabWindow Id, Modifiers uint16) UngrabButtonCookie { cookie := c.newCookie(false, false) - c.newRequest(ungrabButtonRequest(Button, GrabWindow, Modifiers), cookie) - return UngrabButtonCookie(cookie) + c.newRequest(c.ungrabButtonRequest(Button, GrabWindow, Modifiers), cookie) + return UngrabButtonCookie{cookie} } func (c *Conn) UngrabButtonChecked(Button byte, GrabWindow Id, Modifiers uint16) UngrabButtonCookie { cookie := c.newCookie(true, false) - c.newRequest(ungrabButtonRequest(Button, GrabWindow, Modifiers), cookie) - return UngrabButtonCookie(cookie) + c.newRequest(c.ungrabButtonRequest(Button, GrabWindow, Modifiers), cookie) + return UngrabButtonCookie{cookie} +} + +func (cook UngrabButtonCookie) Check() error { + return cook.check() } // Write request to wire for UngrabButton -func ungrabButtonRequest(Button byte, GrabWindow Id, Modifiers uint16) []byte { +func (c *Conn) ungrabButtonRequest(Button byte, GrabWindow Id, Modifiers uint16) []byte { size := 12 b := 0 buf := make([]byte, size) @@ -7666,23 +8258,29 @@ func ungrabButtonRequest(Button byte, GrabWindow Id, Modifiers uint16) []byte { // Request ChangeActivePointerGrab // size: 16 -type ChangeActivePointerGrabCookie cookie +type ChangeActivePointerGrabCookie struct { + *cookie +} // Write request to wire for ChangeActivePointerGrab func (c *Conn) ChangeActivePointerGrab(Cursor Id, Time Timestamp, EventMask uint16) ChangeActivePointerGrabCookie { cookie := c.newCookie(false, false) - c.newRequest(changeActivePointerGrabRequest(Cursor, Time, EventMask), cookie) - return ChangeActivePointerGrabCookie(cookie) + c.newRequest(c.changeActivePointerGrabRequest(Cursor, Time, EventMask), cookie) + return ChangeActivePointerGrabCookie{cookie} } func (c *Conn) ChangeActivePointerGrabChecked(Cursor Id, Time Timestamp, EventMask uint16) ChangeActivePointerGrabCookie { cookie := c.newCookie(true, false) - c.newRequest(changeActivePointerGrabRequest(Cursor, Time, EventMask), cookie) - return ChangeActivePointerGrabCookie(cookie) + c.newRequest(c.changeActivePointerGrabRequest(Cursor, Time, EventMask), cookie) + return ChangeActivePointerGrabCookie{cookie} +} + +func (cook ChangeActivePointerGrabCookie) Check() error { + return cook.check() } // Write request to wire for ChangeActivePointerGrab -func changeActivePointerGrabRequest(Cursor Id, Time Timestamp, EventMask uint16) []byte { +func (c *Conn) changeActivePointerGrabRequest(Cursor Id, Time Timestamp, EventMask uint16) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -7711,18 +8309,20 @@ func changeActivePointerGrabRequest(Cursor Id, Time Timestamp, EventMask uint16) // Request GrabKeyboard // size: 16 -type GrabKeyboardCookie cookie +type GrabKeyboardCookie struct { + *cookie +} func (c *Conn) GrabKeyboard(OwnerEvents bool, GrabWindow Id, Time Timestamp, PointerMode byte, KeyboardMode byte) GrabKeyboardCookie { cookie := c.newCookie(true, true) - c.newRequest(grabKeyboardRequest(OwnerEvents, GrabWindow, Time, PointerMode, KeyboardMode), cookie) - return GrabKeyboardCookie(cookie) + c.newRequest(c.grabKeyboardRequest(OwnerEvents, GrabWindow, Time, PointerMode, KeyboardMode), cookie) + return GrabKeyboardCookie{cookie} } func (c *Conn) GrabKeyboardUnchecked(OwnerEvents bool, GrabWindow Id, Time Timestamp, PointerMode byte, KeyboardMode byte) GrabKeyboardCookie { cookie := c.newCookie(false, true) - c.newRequest(grabKeyboardRequest(OwnerEvents, GrabWindow, Time, PointerMode, KeyboardMode), cookie) - return GrabKeyboardCookie(cookie) + c.newRequest(c.grabKeyboardRequest(OwnerEvents, GrabWindow, Time, PointerMode, KeyboardMode), cookie) + return GrabKeyboardCookie{cookie} } // Request reply for GrabKeyboard @@ -7735,10 +8335,13 @@ type GrabKeyboardReply struct { // Waits and reads reply data from request GrabKeyboard func (cook GrabKeyboardCookie) Reply() (*GrabKeyboardReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return grabKeyboardReply(buf), nil } @@ -7750,11 +8353,21 @@ func grabKeyboardReply(buf []byte) *GrabKeyboardReply { v.Status = buf[b] b += 1 + v.Sequence = Get16(buf[b:]) + b += 2 + + v.Length = Get32(buf[b:]) // 4-byte units + b += 4 + return v } +func (cook GrabKeyboardCookie) Check() error { + return cook.check() +} + // Write request to wire for GrabKeyboard -func grabKeyboardRequest(OwnerEvents bool, GrabWindow Id, Time Timestamp, PointerMode byte, KeyboardMode byte) []byte { +func (c *Conn) grabKeyboardRequest(OwnerEvents bool, GrabWindow Id, Time Timestamp, PointerMode byte, KeyboardMode byte) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -7791,23 +8404,29 @@ func grabKeyboardRequest(OwnerEvents bool, GrabWindow Id, Time Timestamp, Pointe // Request UngrabKeyboard // size: 8 -type UngrabKeyboardCookie cookie +type UngrabKeyboardCookie struct { + *cookie +} // Write request to wire for UngrabKeyboard func (c *Conn) UngrabKeyboard(Time Timestamp) UngrabKeyboardCookie { cookie := c.newCookie(false, false) - c.newRequest(ungrabKeyboardRequest(Time), cookie) - return UngrabKeyboardCookie(cookie) + c.newRequest(c.ungrabKeyboardRequest(Time), cookie) + return UngrabKeyboardCookie{cookie} } func (c *Conn) UngrabKeyboardChecked(Time Timestamp) UngrabKeyboardCookie { cookie := c.newCookie(true, false) - c.newRequest(ungrabKeyboardRequest(Time), cookie) - return UngrabKeyboardCookie(cookie) + c.newRequest(c.ungrabKeyboardRequest(Time), cookie) + return UngrabKeyboardCookie{cookie} +} + +func (cook UngrabKeyboardCookie) Check() error { + return cook.check() } // Write request to wire for UngrabKeyboard -func ungrabKeyboardRequest(Time Timestamp) []byte { +func (c *Conn) ungrabKeyboardRequest(Time Timestamp) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -7828,23 +8447,29 @@ func ungrabKeyboardRequest(Time Timestamp) []byte { // Request GrabKey // size: 16 -type GrabKeyCookie cookie +type GrabKeyCookie struct { + *cookie +} // Write request to wire for GrabKey func (c *Conn) GrabKey(OwnerEvents bool, GrabWindow Id, Modifiers uint16, Key Keycode, PointerMode byte, KeyboardMode byte) GrabKeyCookie { cookie := c.newCookie(false, false) - c.newRequest(grabKeyRequest(OwnerEvents, GrabWindow, Modifiers, Key, PointerMode, KeyboardMode), cookie) - return GrabKeyCookie(cookie) + c.newRequest(c.grabKeyRequest(OwnerEvents, GrabWindow, Modifiers, Key, PointerMode, KeyboardMode), cookie) + return GrabKeyCookie{cookie} } func (c *Conn) GrabKeyChecked(OwnerEvents bool, GrabWindow Id, Modifiers uint16, Key Keycode, PointerMode byte, KeyboardMode byte) GrabKeyCookie { cookie := c.newCookie(true, false) - c.newRequest(grabKeyRequest(OwnerEvents, GrabWindow, Modifiers, Key, PointerMode, KeyboardMode), cookie) - return GrabKeyCookie(cookie) + c.newRequest(c.grabKeyRequest(OwnerEvents, GrabWindow, Modifiers, Key, PointerMode, KeyboardMode), cookie) + return GrabKeyCookie{cookie} +} + +func (cook GrabKeyCookie) Check() error { + return cook.check() } // Write request to wire for GrabKey -func grabKeyRequest(OwnerEvents bool, GrabWindow Id, Modifiers uint16, Key Keycode, PointerMode byte, KeyboardMode byte) []byte { +func (c *Conn) grabKeyRequest(OwnerEvents bool, GrabWindow Id, Modifiers uint16, Key Keycode, PointerMode byte, KeyboardMode byte) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -7884,23 +8509,29 @@ func grabKeyRequest(OwnerEvents bool, GrabWindow Id, Modifiers uint16, Key Keyco // Request UngrabKey // size: 12 -type UngrabKeyCookie cookie +type UngrabKeyCookie struct { + *cookie +} // Write request to wire for UngrabKey func (c *Conn) UngrabKey(Key Keycode, GrabWindow Id, Modifiers uint16) UngrabKeyCookie { cookie := c.newCookie(false, false) - c.newRequest(ungrabKeyRequest(Key, GrabWindow, Modifiers), cookie) - return UngrabKeyCookie(cookie) + c.newRequest(c.ungrabKeyRequest(Key, GrabWindow, Modifiers), cookie) + return UngrabKeyCookie{cookie} } func (c *Conn) UngrabKeyChecked(Key Keycode, GrabWindow Id, Modifiers uint16) UngrabKeyCookie { cookie := c.newCookie(true, false) - c.newRequest(ungrabKeyRequest(Key, GrabWindow, Modifiers), cookie) - return UngrabKeyCookie(cookie) + c.newRequest(c.ungrabKeyRequest(Key, GrabWindow, Modifiers), cookie) + return UngrabKeyCookie{cookie} +} + +func (cook UngrabKeyCookie) Check() error { + return cook.check() } // Write request to wire for UngrabKey -func ungrabKeyRequest(Key Keycode, GrabWindow Id, Modifiers uint16) []byte { +func (c *Conn) ungrabKeyRequest(Key Keycode, GrabWindow Id, Modifiers uint16) []byte { size := 12 b := 0 buf := make([]byte, size) @@ -7927,23 +8558,29 @@ func ungrabKeyRequest(Key Keycode, GrabWindow Id, Modifiers uint16) []byte { // Request AllowEvents // size: 8 -type AllowEventsCookie cookie +type AllowEventsCookie struct { + *cookie +} // Write request to wire for AllowEvents func (c *Conn) AllowEvents(Mode byte, Time Timestamp) AllowEventsCookie { cookie := c.newCookie(false, false) - c.newRequest(allowEventsRequest(Mode, Time), cookie) - return AllowEventsCookie(cookie) + c.newRequest(c.allowEventsRequest(Mode, Time), cookie) + return AllowEventsCookie{cookie} } func (c *Conn) AllowEventsChecked(Mode byte, Time Timestamp) AllowEventsCookie { cookie := c.newCookie(true, false) - c.newRequest(allowEventsRequest(Mode, Time), cookie) - return AllowEventsCookie(cookie) + c.newRequest(c.allowEventsRequest(Mode, Time), cookie) + return AllowEventsCookie{cookie} +} + +func (cook AllowEventsCookie) Check() error { + return cook.check() } // Write request to wire for AllowEvents -func allowEventsRequest(Mode byte, Time Timestamp) []byte { +func (c *Conn) allowEventsRequest(Mode byte, Time Timestamp) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -7965,23 +8602,29 @@ func allowEventsRequest(Mode byte, Time Timestamp) []byte { // Request GrabServer // size: 4 -type GrabServerCookie cookie +type GrabServerCookie struct { + *cookie +} // Write request to wire for GrabServer func (c *Conn) GrabServer() GrabServerCookie { cookie := c.newCookie(false, false) - c.newRequest(grabServerRequest(), cookie) - return GrabServerCookie(cookie) + c.newRequest(c.grabServerRequest(), cookie) + return GrabServerCookie{cookie} } func (c *Conn) GrabServerChecked() GrabServerCookie { cookie := c.newCookie(true, false) - c.newRequest(grabServerRequest(), cookie) - return GrabServerCookie(cookie) + c.newRequest(c.grabServerRequest(), cookie) + return GrabServerCookie{cookie} +} + +func (cook GrabServerCookie) Check() error { + return cook.check() } // Write request to wire for GrabServer -func grabServerRequest() []byte { +func (c *Conn) grabServerRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -7989,28 +8632,38 @@ func grabServerRequest() []byte { buf[b] = 36 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request UngrabServer // size: 4 -type UngrabServerCookie cookie +type UngrabServerCookie struct { + *cookie +} // Write request to wire for UngrabServer func (c *Conn) UngrabServer() UngrabServerCookie { cookie := c.newCookie(false, false) - c.newRequest(ungrabServerRequest(), cookie) - return UngrabServerCookie(cookie) + c.newRequest(c.ungrabServerRequest(), cookie) + return UngrabServerCookie{cookie} } func (c *Conn) UngrabServerChecked() UngrabServerCookie { cookie := c.newCookie(true, false) - c.newRequest(ungrabServerRequest(), cookie) - return UngrabServerCookie(cookie) + c.newRequest(c.ungrabServerRequest(), cookie) + return UngrabServerCookie{cookie} +} + +func (cook UngrabServerCookie) Check() error { + return cook.check() } // Write request to wire for UngrabServer -func ungrabServerRequest() []byte { +func (c *Conn) ungrabServerRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -8018,23 +8671,29 @@ func ungrabServerRequest() []byte { buf[b] = 37 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request QueryPointer // size: 8 -type QueryPointerCookie cookie +type QueryPointerCookie struct { + *cookie +} func (c *Conn) QueryPointer(Window Id) QueryPointerCookie { cookie := c.newCookie(true, true) - c.newRequest(queryPointerRequest(Window), cookie) - return QueryPointerCookie(cookie) + c.newRequest(c.queryPointerRequest(Window), cookie) + return QueryPointerCookie{cookie} } func (c *Conn) QueryPointerUnchecked(Window Id) QueryPointerCookie { cookie := c.newCookie(false, true) - c.newRequest(queryPointerRequest(Window), cookie) - return QueryPointerCookie(cookie) + c.newRequest(c.queryPointerRequest(Window), cookie) + return QueryPointerCookie{cookie} } // Request reply for QueryPointer @@ -8055,10 +8714,13 @@ type QueryPointerReply struct { // Waits and reads reply data from request QueryPointer func (cook QueryPointerCookie) Reply() (*QueryPointerReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return queryPointerReply(buf), nil } @@ -8106,8 +8768,12 @@ func queryPointerReply(buf []byte) *QueryPointerReply { return v } +func (cook QueryPointerCookie) Check() error { + return cook.check() +} + // Write request to wire for QueryPointer -func queryPointerRequest(Window Id) []byte { +func (c *Conn) queryPointerRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -8128,18 +8794,20 @@ func queryPointerRequest(Window Id) []byte { // Request GetMotionEvents // size: 16 -type GetMotionEventsCookie cookie +type GetMotionEventsCookie struct { + *cookie +} func (c *Conn) GetMotionEvents(Window Id, Start Timestamp, Stop Timestamp) GetMotionEventsCookie { cookie := c.newCookie(true, true) - c.newRequest(getMotionEventsRequest(Window, Start, Stop), cookie) - return GetMotionEventsCookie(cookie) + c.newRequest(c.getMotionEventsRequest(Window, Start, Stop), cookie) + return GetMotionEventsCookie{cookie} } func (c *Conn) GetMotionEventsUnchecked(Window Id, Start Timestamp, Stop Timestamp) GetMotionEventsCookie { cookie := c.newCookie(false, true) - c.newRequest(getMotionEventsRequest(Window, Start, Stop), cookie) - return GetMotionEventsCookie(cookie) + c.newRequest(c.getMotionEventsRequest(Window, Start, Stop), cookie) + return GetMotionEventsCookie{cookie} } // Request reply for GetMotionEvents @@ -8155,10 +8823,13 @@ type GetMotionEventsReply struct { // Waits and reads reply data from request GetMotionEvents func (cook GetMotionEventsCookie) Reply() (*GetMotionEventsReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getMotionEventsReply(buf), nil } @@ -8186,8 +8857,12 @@ func getMotionEventsReply(buf []byte) *GetMotionEventsReply { return v } +func (cook GetMotionEventsCookie) Check() error { + return cook.check() +} + // Write request to wire for GetMotionEvents -func getMotionEventsRequest(Window Id, Start Timestamp, Stop Timestamp) []byte { +func (c *Conn) getMotionEventsRequest(Window Id, Start Timestamp, Stop Timestamp) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -8214,18 +8889,20 @@ func getMotionEventsRequest(Window Id, Start Timestamp, Stop Timestamp) []byte { // Request TranslateCoordinates // size: 16 -type TranslateCoordinatesCookie cookie +type TranslateCoordinatesCookie struct { + *cookie +} func (c *Conn) TranslateCoordinates(SrcWindow Id, DstWindow Id, SrcX int16, SrcY int16) TranslateCoordinatesCookie { cookie := c.newCookie(true, true) - c.newRequest(translateCoordinatesRequest(SrcWindow, DstWindow, SrcX, SrcY), cookie) - return TranslateCoordinatesCookie(cookie) + c.newRequest(c.translateCoordinatesRequest(SrcWindow, DstWindow, SrcX, SrcY), cookie) + return TranslateCoordinatesCookie{cookie} } func (c *Conn) TranslateCoordinatesUnchecked(SrcWindow Id, DstWindow Id, SrcX int16, SrcY int16) TranslateCoordinatesCookie { cookie := c.newCookie(false, true) - c.newRequest(translateCoordinatesRequest(SrcWindow, DstWindow, SrcX, SrcY), cookie) - return TranslateCoordinatesCookie(cookie) + c.newRequest(c.translateCoordinatesRequest(SrcWindow, DstWindow, SrcX, SrcY), cookie) + return TranslateCoordinatesCookie{cookie} } // Request reply for TranslateCoordinates @@ -8241,10 +8918,13 @@ type TranslateCoordinatesReply struct { // Waits and reads reply data from request TranslateCoordinates func (cook TranslateCoordinatesCookie) Reply() (*TranslateCoordinatesReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return translateCoordinatesReply(buf), nil } @@ -8278,8 +8958,12 @@ func translateCoordinatesReply(buf []byte) *TranslateCoordinatesReply { return v } +func (cook TranslateCoordinatesCookie) Check() error { + return cook.check() +} + // Write request to wire for TranslateCoordinates -func translateCoordinatesRequest(SrcWindow Id, DstWindow Id, SrcX int16, SrcY int16) []byte { +func (c *Conn) translateCoordinatesRequest(SrcWindow Id, DstWindow Id, SrcX int16, SrcY int16) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -8309,23 +8993,29 @@ func translateCoordinatesRequest(SrcWindow Id, DstWindow Id, SrcX int16, SrcY in // Request WarpPointer // size: 24 -type WarpPointerCookie cookie +type WarpPointerCookie struct { + *cookie +} // Write request to wire for WarpPointer func (c *Conn) WarpPointer(SrcWindow Id, DstWindow Id, SrcX int16, SrcY int16, SrcWidth uint16, SrcHeight uint16, DstX int16, DstY int16) WarpPointerCookie { cookie := c.newCookie(false, false) - c.newRequest(warpPointerRequest(SrcWindow, DstWindow, SrcX, SrcY, SrcWidth, SrcHeight, DstX, DstY), cookie) - return WarpPointerCookie(cookie) + c.newRequest(c.warpPointerRequest(SrcWindow, DstWindow, SrcX, SrcY, SrcWidth, SrcHeight, DstX, DstY), cookie) + return WarpPointerCookie{cookie} } func (c *Conn) WarpPointerChecked(SrcWindow Id, DstWindow Id, SrcX int16, SrcY int16, SrcWidth uint16, SrcHeight uint16, DstX int16, DstY int16) WarpPointerCookie { cookie := c.newCookie(true, false) - c.newRequest(warpPointerRequest(SrcWindow, DstWindow, SrcX, SrcY, SrcWidth, SrcHeight, DstX, DstY), cookie) - return WarpPointerCookie(cookie) + c.newRequest(c.warpPointerRequest(SrcWindow, DstWindow, SrcX, SrcY, SrcWidth, SrcHeight, DstX, DstY), cookie) + return WarpPointerCookie{cookie} +} + +func (cook WarpPointerCookie) Check() error { + return cook.check() } // Write request to wire for WarpPointer -func warpPointerRequest(SrcWindow Id, DstWindow Id, SrcX int16, SrcY int16, SrcWidth uint16, SrcHeight uint16, DstX int16, DstY int16) []byte { +func (c *Conn) warpPointerRequest(SrcWindow Id, DstWindow Id, SrcX int16, SrcY int16, SrcWidth uint16, SrcHeight uint16, DstX int16, DstY int16) []byte { size := 24 b := 0 buf := make([]byte, size) @@ -8367,23 +9057,29 @@ func warpPointerRequest(SrcWindow Id, DstWindow Id, SrcX int16, SrcY int16, SrcW // Request SetInputFocus // size: 12 -type SetInputFocusCookie cookie +type SetInputFocusCookie struct { + *cookie +} // Write request to wire for SetInputFocus func (c *Conn) SetInputFocus(RevertTo byte, Focus Id, Time Timestamp) SetInputFocusCookie { cookie := c.newCookie(false, false) - c.newRequest(setInputFocusRequest(RevertTo, Focus, Time), cookie) - return SetInputFocusCookie(cookie) + c.newRequest(c.setInputFocusRequest(RevertTo, Focus, Time), cookie) + return SetInputFocusCookie{cookie} } func (c *Conn) SetInputFocusChecked(RevertTo byte, Focus Id, Time Timestamp) SetInputFocusCookie { cookie := c.newCookie(true, false) - c.newRequest(setInputFocusRequest(RevertTo, Focus, Time), cookie) - return SetInputFocusCookie(cookie) + c.newRequest(c.setInputFocusRequest(RevertTo, Focus, Time), cookie) + return SetInputFocusCookie{cookie} +} + +func (cook SetInputFocusCookie) Check() error { + return cook.check() } // Write request to wire for SetInputFocus -func setInputFocusRequest(RevertTo byte, Focus Id, Time Timestamp) []byte { +func (c *Conn) setInputFocusRequest(RevertTo byte, Focus Id, Time Timestamp) []byte { size := 12 b := 0 buf := make([]byte, size) @@ -8408,18 +9104,20 @@ func setInputFocusRequest(RevertTo byte, Focus Id, Time Timestamp) []byte { // Request GetInputFocus // size: 4 -type GetInputFocusCookie cookie +type GetInputFocusCookie struct { + *cookie +} func (c *Conn) GetInputFocus() GetInputFocusCookie { cookie := c.newCookie(true, true) - c.newRequest(getInputFocusRequest(), cookie) - return GetInputFocusCookie(cookie) + c.newRequest(c.getInputFocusRequest(), cookie) + return GetInputFocusCookie{cookie} } func (c *Conn) GetInputFocusUnchecked() GetInputFocusCookie { cookie := c.newCookie(false, true) - c.newRequest(getInputFocusRequest(), cookie) - return GetInputFocusCookie(cookie) + c.newRequest(c.getInputFocusRequest(), cookie) + return GetInputFocusCookie{cookie} } // Request reply for GetInputFocus @@ -8433,10 +9131,13 @@ type GetInputFocusReply struct { // Waits and reads reply data from request GetInputFocus func (cook GetInputFocusCookie) Reply() (*GetInputFocusReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getInputFocusReply(buf), nil } @@ -8460,8 +9161,12 @@ func getInputFocusReply(buf []byte) *GetInputFocusReply { return v } +func (cook GetInputFocusCookie) Check() error { + return cook.check() +} + // Write request to wire for GetInputFocus -func getInputFocusRequest() []byte { +func (c *Conn) getInputFocusRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -8469,23 +9174,29 @@ func getInputFocusRequest() []byte { buf[b] = 43 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request QueryKeymap // size: 4 -type QueryKeymapCookie cookie +type QueryKeymapCookie struct { + *cookie +} func (c *Conn) QueryKeymap() QueryKeymapCookie { cookie := c.newCookie(true, true) - c.newRequest(queryKeymapRequest(), cookie) - return QueryKeymapCookie(cookie) + c.newRequest(c.queryKeymapRequest(), cookie) + return QueryKeymapCookie{cookie} } func (c *Conn) QueryKeymapUnchecked() QueryKeymapCookie { cookie := c.newCookie(false, true) - c.newRequest(queryKeymapRequest(), cookie) - return QueryKeymapCookie(cookie) + c.newRequest(c.queryKeymapRequest(), cookie) + return QueryKeymapCookie{cookie} } // Request reply for QueryKeymap @@ -8499,10 +9210,13 @@ type QueryKeymapReply struct { // Waits and reads reply data from request QueryKeymap func (cook QueryKeymapCookie) Reply() (*QueryKeymapReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return queryKeymapReply(buf), nil } @@ -8526,8 +9240,12 @@ func queryKeymapReply(buf []byte) *QueryKeymapReply { return v } +func (cook QueryKeymapCookie) Check() error { + return cook.check() +} + // Write request to wire for QueryKeymap -func queryKeymapRequest() []byte { +func (c *Conn) queryKeymapRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -8535,28 +9253,38 @@ func queryKeymapRequest() []byte { buf[b] = 44 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request OpenFont // size: pad((12 + pad((int(NameLen) * 1)))) -type OpenFontCookie cookie +type OpenFontCookie struct { + *cookie +} // Write request to wire for OpenFont func (c *Conn) OpenFont(Fid Id, NameLen uint16, Name string) OpenFontCookie { cookie := c.newCookie(false, false) - c.newRequest(openFontRequest(Fid, NameLen, Name), cookie) - return OpenFontCookie(cookie) + c.newRequest(c.openFontRequest(Fid, NameLen, Name), cookie) + return OpenFontCookie{cookie} } func (c *Conn) OpenFontChecked(Fid Id, NameLen uint16, Name string) OpenFontCookie { cookie := c.newCookie(true, false) - c.newRequest(openFontRequest(Fid, NameLen, Name), cookie) - return OpenFontCookie(cookie) + c.newRequest(c.openFontRequest(Fid, NameLen, Name), cookie) + return OpenFontCookie{cookie} +} + +func (cook OpenFontCookie) Check() error { + return cook.check() } // Write request to wire for OpenFont -func openFontRequest(Fid Id, NameLen uint16, Name string) []byte { +func (c *Conn) openFontRequest(Fid Id, NameLen uint16, Name string) []byte { size := pad((12 + pad((int(NameLen) * 1)))) b := 0 buf := make([]byte, size) @@ -8585,23 +9313,29 @@ func openFontRequest(Fid Id, NameLen uint16, Name string) []byte { // Request CloseFont // size: 8 -type CloseFontCookie cookie +type CloseFontCookie struct { + *cookie +} // Write request to wire for CloseFont func (c *Conn) CloseFont(Font Id) CloseFontCookie { cookie := c.newCookie(false, false) - c.newRequest(closeFontRequest(Font), cookie) - return CloseFontCookie(cookie) + c.newRequest(c.closeFontRequest(Font), cookie) + return CloseFontCookie{cookie} } func (c *Conn) CloseFontChecked(Font Id) CloseFontCookie { cookie := c.newCookie(true, false) - c.newRequest(closeFontRequest(Font), cookie) - return CloseFontCookie(cookie) + c.newRequest(c.closeFontRequest(Font), cookie) + return CloseFontCookie{cookie} +} + +func (cook CloseFontCookie) Check() error { + return cook.check() } // Write request to wire for CloseFont -func closeFontRequest(Font Id) []byte { +func (c *Conn) closeFontRequest(Font Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -8622,18 +9356,20 @@ func closeFontRequest(Font Id) []byte { // Request QueryFont // size: 8 -type QueryFontCookie cookie +type QueryFontCookie struct { + *cookie +} func (c *Conn) QueryFont(Font Id) QueryFontCookie { cookie := c.newCookie(true, true) - c.newRequest(queryFontRequest(Font), cookie) - return QueryFontCookie(cookie) + c.newRequest(c.queryFontRequest(Font), cookie) + return QueryFontCookie{cookie} } func (c *Conn) QueryFontUnchecked(Font Id) QueryFontCookie { cookie := c.newCookie(false, true) - c.newRequest(queryFontRequest(Font), cookie) - return QueryFontCookie(cookie) + c.newRequest(c.queryFontRequest(Font), cookie) + return QueryFontCookie{cookie} } // Request reply for QueryFont @@ -8663,10 +9399,13 @@ type QueryFontReply struct { // Waits and reads reply data from request QueryFont func (cook QueryFontCookie) Reply() (*QueryFontReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return queryFontReply(buf), nil } @@ -8739,8 +9478,12 @@ func queryFontReply(buf []byte) *QueryFontReply { return v } +func (cook QueryFontCookie) Check() error { + return cook.check() +} + // Write request to wire for QueryFont -func queryFontRequest(Font Id) []byte { +func (c *Conn) queryFontRequest(Font Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -8761,18 +9504,20 @@ func queryFontRequest(Font Id) []byte { // Request QueryTextExtents // size: pad((8 + pad((len(String) * 2)))) -type QueryTextExtentsCookie cookie +type QueryTextExtentsCookie struct { + *cookie +} func (c *Conn) QueryTextExtents(Font Id, String []Char2b, StringLen uint16) QueryTextExtentsCookie { cookie := c.newCookie(true, true) - c.newRequest(queryTextExtentsRequest(Font, String, StringLen), cookie) - return QueryTextExtentsCookie(cookie) + c.newRequest(c.queryTextExtentsRequest(Font, String, StringLen), cookie) + return QueryTextExtentsCookie{cookie} } func (c *Conn) QueryTextExtentsUnchecked(Font Id, String []Char2b, StringLen uint16) QueryTextExtentsCookie { cookie := c.newCookie(false, true) - c.newRequest(queryTextExtentsRequest(Font, String, StringLen), cookie) - return QueryTextExtentsCookie(cookie) + c.newRequest(c.queryTextExtentsRequest(Font, String, StringLen), cookie) + return QueryTextExtentsCookie{cookie} } // Request reply for QueryTextExtents @@ -8792,10 +9537,13 @@ type QueryTextExtentsReply struct { // Waits and reads reply data from request QueryTextExtents func (cook QueryTextExtentsCookie) Reply() (*QueryTextExtentsReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return queryTextExtentsReply(buf), nil } @@ -8837,8 +9585,12 @@ func queryTextExtentsReply(buf []byte) *QueryTextExtentsReply { return v } +func (cook QueryTextExtentsCookie) Check() error { + return cook.check() +} + // Write request to wire for QueryTextExtents -func queryTextExtentsRequest(Font Id, String []Char2b, StringLen uint16) []byte { +func (c *Conn) queryTextExtentsRequest(Font Id, String []Char2b, StringLen uint16) []byte { size := pad((8 + pad((len(String) * 2)))) b := 0 buf := make([]byte, size) @@ -8864,18 +9616,20 @@ func queryTextExtentsRequest(Font Id, String []Char2b, StringLen uint16) []byte // Request ListFonts // size: pad((8 + pad((int(PatternLen) * 1)))) -type ListFontsCookie cookie +type ListFontsCookie struct { + *cookie +} func (c *Conn) ListFonts(MaxNames uint16, PatternLen uint16, Pattern string) ListFontsCookie { cookie := c.newCookie(true, true) - c.newRequest(listFontsRequest(MaxNames, PatternLen, Pattern), cookie) - return ListFontsCookie(cookie) + c.newRequest(c.listFontsRequest(MaxNames, PatternLen, Pattern), cookie) + return ListFontsCookie{cookie} } func (c *Conn) ListFontsUnchecked(MaxNames uint16, PatternLen uint16, Pattern string) ListFontsCookie { cookie := c.newCookie(false, true) - c.newRequest(listFontsRequest(MaxNames, PatternLen, Pattern), cookie) - return ListFontsCookie(cookie) + c.newRequest(c.listFontsRequest(MaxNames, PatternLen, Pattern), cookie) + return ListFontsCookie{cookie} } // Request reply for ListFonts @@ -8891,10 +9645,13 @@ type ListFontsReply struct { // Waits and reads reply data from request ListFonts func (cook ListFontsCookie) Reply() (*ListFontsReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return listFontsReply(buf), nil } @@ -8922,8 +9679,12 @@ func listFontsReply(buf []byte) *ListFontsReply { return v } +func (cook ListFontsCookie) Check() error { + return cook.check() +} + // Write request to wire for ListFonts -func listFontsRequest(MaxNames uint16, PatternLen uint16, Pattern string) []byte { +func (c *Conn) listFontsRequest(MaxNames uint16, PatternLen uint16, Pattern string) []byte { size := pad((8 + pad((int(PatternLen) * 1)))) b := 0 buf := make([]byte, size) @@ -8950,18 +9711,20 @@ func listFontsRequest(MaxNames uint16, PatternLen uint16, Pattern string) []byte // Request ListFontsWithInfo // size: pad((8 + pad((int(PatternLen) * 1)))) -type ListFontsWithInfoCookie cookie +type ListFontsWithInfoCookie struct { + *cookie +} func (c *Conn) ListFontsWithInfo(MaxNames uint16, PatternLen uint16, Pattern string) ListFontsWithInfoCookie { cookie := c.newCookie(true, true) - c.newRequest(listFontsWithInfoRequest(MaxNames, PatternLen, Pattern), cookie) - return ListFontsWithInfoCookie(cookie) + c.newRequest(c.listFontsWithInfoRequest(MaxNames, PatternLen, Pattern), cookie) + return ListFontsWithInfoCookie{cookie} } func (c *Conn) ListFontsWithInfoUnchecked(MaxNames uint16, PatternLen uint16, Pattern string) ListFontsWithInfoCookie { cookie := c.newCookie(false, true) - c.newRequest(listFontsWithInfoRequest(MaxNames, PatternLen, Pattern), cookie) - return ListFontsWithInfoCookie(cookie) + c.newRequest(c.listFontsWithInfoRequest(MaxNames, PatternLen, Pattern), cookie) + return ListFontsWithInfoCookie{cookie} } // Request reply for ListFontsWithInfo @@ -8991,10 +9754,13 @@ type ListFontsWithInfoReply struct { // Waits and reads reply data from request ListFontsWithInfo func (cook ListFontsWithInfoCookie) Reply() (*ListFontsWithInfoReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return listFontsWithInfoReply(buf), nil } @@ -9072,8 +9838,12 @@ func listFontsWithInfoReply(buf []byte) *ListFontsWithInfoReply { return v } +func (cook ListFontsWithInfoCookie) Check() error { + return cook.check() +} + // Write request to wire for ListFontsWithInfo -func listFontsWithInfoRequest(MaxNames uint16, PatternLen uint16, Pattern string) []byte { +func (c *Conn) listFontsWithInfoRequest(MaxNames uint16, PatternLen uint16, Pattern string) []byte { size := pad((8 + pad((int(PatternLen) * 1)))) b := 0 buf := make([]byte, size) @@ -9100,23 +9870,29 @@ func listFontsWithInfoRequest(MaxNames uint16, PatternLen uint16, Pattern string // Request SetFontPath // size: pad((8 + StrListSize(Font))) -type SetFontPathCookie cookie +type SetFontPathCookie struct { + *cookie +} // Write request to wire for SetFontPath func (c *Conn) SetFontPath(FontQty uint16, Font []Str) SetFontPathCookie { cookie := c.newCookie(false, false) - c.newRequest(setFontPathRequest(FontQty, Font), cookie) - return SetFontPathCookie(cookie) + c.newRequest(c.setFontPathRequest(FontQty, Font), cookie) + return SetFontPathCookie{cookie} } func (c *Conn) SetFontPathChecked(FontQty uint16, Font []Str) SetFontPathCookie { cookie := c.newCookie(true, false) - c.newRequest(setFontPathRequest(FontQty, Font), cookie) - return SetFontPathCookie(cookie) + c.newRequest(c.setFontPathRequest(FontQty, Font), cookie) + return SetFontPathCookie{cookie} +} + +func (cook SetFontPathCookie) Check() error { + return cook.check() } // Write request to wire for SetFontPath -func setFontPathRequest(FontQty uint16, Font []Str) []byte { +func (c *Conn) setFontPathRequest(FontQty uint16, Font []Str) []byte { size := pad((8 + StrListSize(Font))) b := 0 buf := make([]byte, size) @@ -9141,18 +9917,20 @@ func setFontPathRequest(FontQty uint16, Font []Str) []byte { // Request GetFontPath // size: 4 -type GetFontPathCookie cookie +type GetFontPathCookie struct { + *cookie +} func (c *Conn) GetFontPath() GetFontPathCookie { cookie := c.newCookie(true, true) - c.newRequest(getFontPathRequest(), cookie) - return GetFontPathCookie(cookie) + c.newRequest(c.getFontPathRequest(), cookie) + return GetFontPathCookie{cookie} } func (c *Conn) GetFontPathUnchecked() GetFontPathCookie { cookie := c.newCookie(false, true) - c.newRequest(getFontPathRequest(), cookie) - return GetFontPathCookie(cookie) + c.newRequest(c.getFontPathRequest(), cookie) + return GetFontPathCookie{cookie} } // Request reply for GetFontPath @@ -9168,10 +9946,13 @@ type GetFontPathReply struct { // Waits and reads reply data from request GetFontPath func (cook GetFontPathCookie) Reply() (*GetFontPathReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getFontPathReply(buf), nil } @@ -9199,8 +9980,12 @@ func getFontPathReply(buf []byte) *GetFontPathReply { return v } +func (cook GetFontPathCookie) Check() error { + return cook.check() +} + // Write request to wire for GetFontPath -func getFontPathRequest() []byte { +func (c *Conn) getFontPathRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -9208,28 +9993,38 @@ func getFontPathRequest() []byte { buf[b] = 52 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request CreatePixmap // size: 16 -type CreatePixmapCookie cookie +type CreatePixmapCookie struct { + *cookie +} // Write request to wire for CreatePixmap func (c *Conn) CreatePixmap(Depth byte, Pid Id, Drawable Id, Width uint16, Height uint16) CreatePixmapCookie { cookie := c.newCookie(false, false) - c.newRequest(createPixmapRequest(Depth, Pid, Drawable, Width, Height), cookie) - return CreatePixmapCookie(cookie) + c.newRequest(c.createPixmapRequest(Depth, Pid, Drawable, Width, Height), cookie) + return CreatePixmapCookie{cookie} } func (c *Conn) CreatePixmapChecked(Depth byte, Pid Id, Drawable Id, Width uint16, Height uint16) CreatePixmapCookie { cookie := c.newCookie(true, false) - c.newRequest(createPixmapRequest(Depth, Pid, Drawable, Width, Height), cookie) - return CreatePixmapCookie(cookie) + c.newRequest(c.createPixmapRequest(Depth, Pid, Drawable, Width, Height), cookie) + return CreatePixmapCookie{cookie} +} + +func (cook CreatePixmapCookie) Check() error { + return cook.check() } // Write request to wire for CreatePixmap -func createPixmapRequest(Depth byte, Pid Id, Drawable Id, Width uint16, Height uint16) []byte { +func (c *Conn) createPixmapRequest(Depth byte, Pid Id, Drawable Id, Width uint16, Height uint16) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -9260,23 +10055,29 @@ func createPixmapRequest(Depth byte, Pid Id, Drawable Id, Width uint16, Height u // Request FreePixmap // size: 8 -type FreePixmapCookie cookie +type FreePixmapCookie struct { + *cookie +} // Write request to wire for FreePixmap func (c *Conn) FreePixmap(Pixmap Id) FreePixmapCookie { cookie := c.newCookie(false, false) - c.newRequest(freePixmapRequest(Pixmap), cookie) - return FreePixmapCookie(cookie) + c.newRequest(c.freePixmapRequest(Pixmap), cookie) + return FreePixmapCookie{cookie} } func (c *Conn) FreePixmapChecked(Pixmap Id) FreePixmapCookie { cookie := c.newCookie(true, false) - c.newRequest(freePixmapRequest(Pixmap), cookie) - return FreePixmapCookie(cookie) + c.newRequest(c.freePixmapRequest(Pixmap), cookie) + return FreePixmapCookie{cookie} +} + +func (cook FreePixmapCookie) Check() error { + return cook.check() } // Write request to wire for FreePixmap -func freePixmapRequest(Pixmap Id) []byte { +func (c *Conn) freePixmapRequest(Pixmap Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -9297,23 +10098,29 @@ func freePixmapRequest(Pixmap Id) []byte { // Request CreateGC // size: pad((12 + (4 + pad((4 * popCount(int(ValueMask))))))) -type CreateGCCookie cookie +type CreateGCCookie struct { + *cookie +} // Write request to wire for CreateGC func (c *Conn) CreateGC(Cid Id, Drawable Id, ValueMask uint32, ValueList []uint32) CreateGCCookie { cookie := c.newCookie(false, false) - c.newRequest(createGCRequest(Cid, Drawable, ValueMask, ValueList), cookie) - return CreateGCCookie(cookie) + c.newRequest(c.createGCRequest(Cid, Drawable, ValueMask, ValueList), cookie) + return CreateGCCookie{cookie} } func (c *Conn) CreateGCChecked(Cid Id, Drawable Id, ValueMask uint32, ValueList []uint32) CreateGCCookie { cookie := c.newCookie(true, false) - c.newRequest(createGCRequest(Cid, Drawable, ValueMask, ValueList), cookie) - return CreateGCCookie(cookie) + c.newRequest(c.createGCRequest(Cid, Drawable, ValueMask, ValueList), cookie) + return CreateGCCookie{cookie} +} + +func (cook CreateGCCookie) Check() error { + return cook.check() } // Write request to wire for CreateGC -func createGCRequest(Cid Id, Drawable Id, ValueMask uint32, ValueList []uint32) []byte { +func (c *Conn) createGCRequest(Cid Id, Drawable Id, ValueMask uint32, ValueList []uint32) []byte { size := pad((12 + (4 + pad((4 * popCount(int(ValueMask))))))) b := 0 buf := make([]byte, size) @@ -9345,23 +10152,29 @@ func createGCRequest(Cid Id, Drawable Id, ValueMask uint32, ValueList []uint32) // Request ChangeGC // size: pad((8 + (4 + pad((4 * popCount(int(ValueMask))))))) -type ChangeGCCookie cookie +type ChangeGCCookie struct { + *cookie +} // Write request to wire for ChangeGC func (c *Conn) ChangeGC(Gc Id, ValueMask uint32, ValueList []uint32) ChangeGCCookie { cookie := c.newCookie(false, false) - c.newRequest(changeGCRequest(Gc, ValueMask, ValueList), cookie) - return ChangeGCCookie(cookie) + c.newRequest(c.changeGCRequest(Gc, ValueMask, ValueList), cookie) + return ChangeGCCookie{cookie} } func (c *Conn) ChangeGCChecked(Gc Id, ValueMask uint32, ValueList []uint32) ChangeGCCookie { cookie := c.newCookie(true, false) - c.newRequest(changeGCRequest(Gc, ValueMask, ValueList), cookie) - return ChangeGCCookie(cookie) + c.newRequest(c.changeGCRequest(Gc, ValueMask, ValueList), cookie) + return ChangeGCCookie{cookie} +} + +func (cook ChangeGCCookie) Check() error { + return cook.check() } // Write request to wire for ChangeGC -func changeGCRequest(Gc Id, ValueMask uint32, ValueList []uint32) []byte { +func (c *Conn) changeGCRequest(Gc Id, ValueMask uint32, ValueList []uint32) []byte { size := pad((8 + (4 + pad((4 * popCount(int(ValueMask))))))) b := 0 buf := make([]byte, size) @@ -9390,23 +10203,29 @@ func changeGCRequest(Gc Id, ValueMask uint32, ValueList []uint32) []byte { // Request CopyGC // size: 16 -type CopyGCCookie cookie +type CopyGCCookie struct { + *cookie +} // Write request to wire for CopyGC func (c *Conn) CopyGC(SrcGc Id, DstGc Id, ValueMask uint32) CopyGCCookie { cookie := c.newCookie(false, false) - c.newRequest(copyGCRequest(SrcGc, DstGc, ValueMask), cookie) - return CopyGCCookie(cookie) + c.newRequest(c.copyGCRequest(SrcGc, DstGc, ValueMask), cookie) + return CopyGCCookie{cookie} } func (c *Conn) CopyGCChecked(SrcGc Id, DstGc Id, ValueMask uint32) CopyGCCookie { cookie := c.newCookie(true, false) - c.newRequest(copyGCRequest(SrcGc, DstGc, ValueMask), cookie) - return CopyGCCookie(cookie) + c.newRequest(c.copyGCRequest(SrcGc, DstGc, ValueMask), cookie) + return CopyGCCookie{cookie} +} + +func (cook CopyGCCookie) Check() error { + return cook.check() } // Write request to wire for CopyGC -func copyGCRequest(SrcGc Id, DstGc Id, ValueMask uint32) []byte { +func (c *Conn) copyGCRequest(SrcGc Id, DstGc Id, ValueMask uint32) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -9433,23 +10252,29 @@ func copyGCRequest(SrcGc Id, DstGc Id, ValueMask uint32) []byte { // Request SetDashes // size: pad((12 + pad((int(DashesLen) * 1)))) -type SetDashesCookie cookie +type SetDashesCookie struct { + *cookie +} // Write request to wire for SetDashes func (c *Conn) SetDashes(Gc Id, DashOffset uint16, DashesLen uint16, Dashes []byte) SetDashesCookie { cookie := c.newCookie(false, false) - c.newRequest(setDashesRequest(Gc, DashOffset, DashesLen, Dashes), cookie) - return SetDashesCookie(cookie) + c.newRequest(c.setDashesRequest(Gc, DashOffset, DashesLen, Dashes), cookie) + return SetDashesCookie{cookie} } func (c *Conn) SetDashesChecked(Gc Id, DashOffset uint16, DashesLen uint16, Dashes []byte) SetDashesCookie { cookie := c.newCookie(true, false) - c.newRequest(setDashesRequest(Gc, DashOffset, DashesLen, Dashes), cookie) - return SetDashesCookie(cookie) + c.newRequest(c.setDashesRequest(Gc, DashOffset, DashesLen, Dashes), cookie) + return SetDashesCookie{cookie} +} + +func (cook SetDashesCookie) Check() error { + return cook.check() } // Write request to wire for SetDashes -func setDashesRequest(Gc Id, DashOffset uint16, DashesLen uint16, Dashes []byte) []byte { +func (c *Conn) setDashesRequest(Gc Id, DashOffset uint16, DashesLen uint16, Dashes []byte) []byte { size := pad((12 + pad((int(DashesLen) * 1)))) b := 0 buf := make([]byte, size) @@ -9479,23 +10304,29 @@ func setDashesRequest(Gc Id, DashOffset uint16, DashesLen uint16, Dashes []byte) // Request SetClipRectangles // size: pad((12 + pad((len(Rectangles) * 8)))) -type SetClipRectanglesCookie cookie +type SetClipRectanglesCookie struct { + *cookie +} // Write request to wire for SetClipRectangles func (c *Conn) SetClipRectangles(Ordering byte, Gc Id, ClipXOrigin int16, ClipYOrigin int16, Rectangles []Rectangle) SetClipRectanglesCookie { cookie := c.newCookie(false, false) - c.newRequest(setClipRectanglesRequest(Ordering, Gc, ClipXOrigin, ClipYOrigin, Rectangles), cookie) - return SetClipRectanglesCookie(cookie) + c.newRequest(c.setClipRectanglesRequest(Ordering, Gc, ClipXOrigin, ClipYOrigin, Rectangles), cookie) + return SetClipRectanglesCookie{cookie} } func (c *Conn) SetClipRectanglesChecked(Ordering byte, Gc Id, ClipXOrigin int16, ClipYOrigin int16, Rectangles []Rectangle) SetClipRectanglesCookie { cookie := c.newCookie(true, false) - c.newRequest(setClipRectanglesRequest(Ordering, Gc, ClipXOrigin, ClipYOrigin, Rectangles), cookie) - return SetClipRectanglesCookie(cookie) + c.newRequest(c.setClipRectanglesRequest(Ordering, Gc, ClipXOrigin, ClipYOrigin, Rectangles), cookie) + return SetClipRectanglesCookie{cookie} +} + +func (cook SetClipRectanglesCookie) Check() error { + return cook.check() } // Write request to wire for SetClipRectangles -func setClipRectanglesRequest(Ordering byte, Gc Id, ClipXOrigin int16, ClipYOrigin int16, Rectangles []Rectangle) []byte { +func (c *Conn) setClipRectanglesRequest(Ordering byte, Gc Id, ClipXOrigin int16, ClipYOrigin int16, Rectangles []Rectangle) []byte { size := pad((12 + pad((len(Rectangles) * 8)))) b := 0 buf := make([]byte, size) @@ -9525,23 +10356,29 @@ func setClipRectanglesRequest(Ordering byte, Gc Id, ClipXOrigin int16, ClipYOrig // Request FreeGC // size: 8 -type FreeGCCookie cookie +type FreeGCCookie struct { + *cookie +} // Write request to wire for FreeGC func (c *Conn) FreeGC(Gc Id) FreeGCCookie { cookie := c.newCookie(false, false) - c.newRequest(freeGCRequest(Gc), cookie) - return FreeGCCookie(cookie) + c.newRequest(c.freeGCRequest(Gc), cookie) + return FreeGCCookie{cookie} } func (c *Conn) FreeGCChecked(Gc Id) FreeGCCookie { cookie := c.newCookie(true, false) - c.newRequest(freeGCRequest(Gc), cookie) - return FreeGCCookie(cookie) + c.newRequest(c.freeGCRequest(Gc), cookie) + return FreeGCCookie{cookie} +} + +func (cook FreeGCCookie) Check() error { + return cook.check() } // Write request to wire for FreeGC -func freeGCRequest(Gc Id) []byte { +func (c *Conn) freeGCRequest(Gc Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -9562,23 +10399,29 @@ func freeGCRequest(Gc Id) []byte { // Request ClearArea // size: 16 -type ClearAreaCookie cookie +type ClearAreaCookie struct { + *cookie +} // Write request to wire for ClearArea func (c *Conn) ClearArea(Exposures bool, Window Id, X int16, Y int16, Width uint16, Height uint16) ClearAreaCookie { cookie := c.newCookie(false, false) - c.newRequest(clearAreaRequest(Exposures, Window, X, Y, Width, Height), cookie) - return ClearAreaCookie(cookie) + c.newRequest(c.clearAreaRequest(Exposures, Window, X, Y, Width, Height), cookie) + return ClearAreaCookie{cookie} } func (c *Conn) ClearAreaChecked(Exposures bool, Window Id, X int16, Y int16, Width uint16, Height uint16) ClearAreaCookie { cookie := c.newCookie(true, false) - c.newRequest(clearAreaRequest(Exposures, Window, X, Y, Width, Height), cookie) - return ClearAreaCookie(cookie) + c.newRequest(c.clearAreaRequest(Exposures, Window, X, Y, Width, Height), cookie) + return ClearAreaCookie{cookie} +} + +func (cook ClearAreaCookie) Check() error { + return cook.check() } // Write request to wire for ClearArea -func clearAreaRequest(Exposures bool, Window Id, X int16, Y int16, Width uint16, Height uint16) []byte { +func (c *Conn) clearAreaRequest(Exposures bool, Window Id, X int16, Y int16, Width uint16, Height uint16) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -9616,23 +10459,29 @@ func clearAreaRequest(Exposures bool, Window Id, X int16, Y int16, Width uint16, // Request CopyArea // size: 28 -type CopyAreaCookie cookie +type CopyAreaCookie struct { + *cookie +} // Write request to wire for CopyArea func (c *Conn) CopyArea(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY int16, DstX int16, DstY int16, Width uint16, Height uint16) CopyAreaCookie { cookie := c.newCookie(false, false) - c.newRequest(copyAreaRequest(SrcDrawable, DstDrawable, Gc, SrcX, SrcY, DstX, DstY, Width, Height), cookie) - return CopyAreaCookie(cookie) + c.newRequest(c.copyAreaRequest(SrcDrawable, DstDrawable, Gc, SrcX, SrcY, DstX, DstY, Width, Height), cookie) + return CopyAreaCookie{cookie} } func (c *Conn) CopyAreaChecked(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY int16, DstX int16, DstY int16, Width uint16, Height uint16) CopyAreaCookie { cookie := c.newCookie(true, false) - c.newRequest(copyAreaRequest(SrcDrawable, DstDrawable, Gc, SrcX, SrcY, DstX, DstY, Width, Height), cookie) - return CopyAreaCookie(cookie) + c.newRequest(c.copyAreaRequest(SrcDrawable, DstDrawable, Gc, SrcX, SrcY, DstX, DstY, Width, Height), cookie) + return CopyAreaCookie{cookie} +} + +func (cook CopyAreaCookie) Check() error { + return cook.check() } // Write request to wire for CopyArea -func copyAreaRequest(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY int16, DstX int16, DstY int16, Width uint16, Height uint16) []byte { +func (c *Conn) copyAreaRequest(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY int16, DstX int16, DstY int16, Width uint16, Height uint16) []byte { size := 28 b := 0 buf := make([]byte, size) @@ -9677,23 +10526,29 @@ func copyAreaRequest(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY int // Request CopyPlane // size: 32 -type CopyPlaneCookie cookie +type CopyPlaneCookie struct { + *cookie +} // Write request to wire for CopyPlane func (c *Conn) CopyPlane(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY int16, DstX int16, DstY int16, Width uint16, Height uint16, BitPlane uint32) CopyPlaneCookie { cookie := c.newCookie(false, false) - c.newRequest(copyPlaneRequest(SrcDrawable, DstDrawable, Gc, SrcX, SrcY, DstX, DstY, Width, Height, BitPlane), cookie) - return CopyPlaneCookie(cookie) + c.newRequest(c.copyPlaneRequest(SrcDrawable, DstDrawable, Gc, SrcX, SrcY, DstX, DstY, Width, Height, BitPlane), cookie) + return CopyPlaneCookie{cookie} } func (c *Conn) CopyPlaneChecked(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY int16, DstX int16, DstY int16, Width uint16, Height uint16, BitPlane uint32) CopyPlaneCookie { cookie := c.newCookie(true, false) - c.newRequest(copyPlaneRequest(SrcDrawable, DstDrawable, Gc, SrcX, SrcY, DstX, DstY, Width, Height, BitPlane), cookie) - return CopyPlaneCookie(cookie) + c.newRequest(c.copyPlaneRequest(SrcDrawable, DstDrawable, Gc, SrcX, SrcY, DstX, DstY, Width, Height, BitPlane), cookie) + return CopyPlaneCookie{cookie} +} + +func (cook CopyPlaneCookie) Check() error { + return cook.check() } // Write request to wire for CopyPlane -func copyPlaneRequest(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY int16, DstX int16, DstY int16, Width uint16, Height uint16, BitPlane uint32) []byte { +func (c *Conn) copyPlaneRequest(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY int16, DstX int16, DstY int16, Width uint16, Height uint16, BitPlane uint32) []byte { size := 32 b := 0 buf := make([]byte, size) @@ -9741,23 +10596,29 @@ func copyPlaneRequest(SrcDrawable Id, DstDrawable Id, Gc Id, SrcX int16, SrcY in // Request PolyPoint // size: pad((12 + pad((len(Points) * 4)))) -type PolyPointCookie cookie +type PolyPointCookie struct { + *cookie +} // Write request to wire for PolyPoint func (c *Conn) PolyPoint(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) PolyPointCookie { cookie := c.newCookie(false, false) - c.newRequest(polyPointRequest(CoordinateMode, Drawable, Gc, Points), cookie) - return PolyPointCookie(cookie) + c.newRequest(c.polyPointRequest(CoordinateMode, Drawable, Gc, Points), cookie) + return PolyPointCookie{cookie} } func (c *Conn) PolyPointChecked(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) PolyPointCookie { cookie := c.newCookie(true, false) - c.newRequest(polyPointRequest(CoordinateMode, Drawable, Gc, Points), cookie) - return PolyPointCookie(cookie) + c.newRequest(c.polyPointRequest(CoordinateMode, Drawable, Gc, Points), cookie) + return PolyPointCookie{cookie} +} + +func (cook PolyPointCookie) Check() error { + return cook.check() } // Write request to wire for PolyPoint -func polyPointRequest(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) []byte { +func (c *Conn) polyPointRequest(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) []byte { size := pad((12 + pad((len(Points) * 4)))) b := 0 buf := make([]byte, size) @@ -9784,23 +10645,29 @@ func polyPointRequest(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) [ // Request PolyLine // size: pad((12 + pad((len(Points) * 4)))) -type PolyLineCookie cookie +type PolyLineCookie struct { + *cookie +} // Write request to wire for PolyLine func (c *Conn) PolyLine(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) PolyLineCookie { cookie := c.newCookie(false, false) - c.newRequest(polyLineRequest(CoordinateMode, Drawable, Gc, Points), cookie) - return PolyLineCookie(cookie) + c.newRequest(c.polyLineRequest(CoordinateMode, Drawable, Gc, Points), cookie) + return PolyLineCookie{cookie} } func (c *Conn) PolyLineChecked(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) PolyLineCookie { cookie := c.newCookie(true, false) - c.newRequest(polyLineRequest(CoordinateMode, Drawable, Gc, Points), cookie) - return PolyLineCookie(cookie) + c.newRequest(c.polyLineRequest(CoordinateMode, Drawable, Gc, Points), cookie) + return PolyLineCookie{cookie} +} + +func (cook PolyLineCookie) Check() error { + return cook.check() } // Write request to wire for PolyLine -func polyLineRequest(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) []byte { +func (c *Conn) polyLineRequest(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) []byte { size := pad((12 + pad((len(Points) * 4)))) b := 0 buf := make([]byte, size) @@ -9827,23 +10694,29 @@ func polyLineRequest(CoordinateMode byte, Drawable Id, Gc Id, Points []Point) [] // Request PolySegment // size: pad((12 + pad((len(Segments) * 8)))) -type PolySegmentCookie cookie +type PolySegmentCookie struct { + *cookie +} // Write request to wire for PolySegment func (c *Conn) PolySegment(Drawable Id, Gc Id, Segments []Segment) PolySegmentCookie { cookie := c.newCookie(false, false) - c.newRequest(polySegmentRequest(Drawable, Gc, Segments), cookie) - return PolySegmentCookie(cookie) + c.newRequest(c.polySegmentRequest(Drawable, Gc, Segments), cookie) + return PolySegmentCookie{cookie} } func (c *Conn) PolySegmentChecked(Drawable Id, Gc Id, Segments []Segment) PolySegmentCookie { cookie := c.newCookie(true, false) - c.newRequest(polySegmentRequest(Drawable, Gc, Segments), cookie) - return PolySegmentCookie(cookie) + c.newRequest(c.polySegmentRequest(Drawable, Gc, Segments), cookie) + return PolySegmentCookie{cookie} +} + +func (cook PolySegmentCookie) Check() error { + return cook.check() } // Write request to wire for PolySegment -func polySegmentRequest(Drawable Id, Gc Id, Segments []Segment) []byte { +func (c *Conn) polySegmentRequest(Drawable Id, Gc Id, Segments []Segment) []byte { size := pad((12 + pad((len(Segments) * 8)))) b := 0 buf := make([]byte, size) @@ -9869,23 +10742,29 @@ func polySegmentRequest(Drawable Id, Gc Id, Segments []Segment) []byte { // Request PolyRectangle // size: pad((12 + pad((len(Rectangles) * 8)))) -type PolyRectangleCookie cookie +type PolyRectangleCookie struct { + *cookie +} // Write request to wire for PolyRectangle func (c *Conn) PolyRectangle(Drawable Id, Gc Id, Rectangles []Rectangle) PolyRectangleCookie { cookie := c.newCookie(false, false) - c.newRequest(polyRectangleRequest(Drawable, Gc, Rectangles), cookie) - return PolyRectangleCookie(cookie) + c.newRequest(c.polyRectangleRequest(Drawable, Gc, Rectangles), cookie) + return PolyRectangleCookie{cookie} } func (c *Conn) PolyRectangleChecked(Drawable Id, Gc Id, Rectangles []Rectangle) PolyRectangleCookie { cookie := c.newCookie(true, false) - c.newRequest(polyRectangleRequest(Drawable, Gc, Rectangles), cookie) - return PolyRectangleCookie(cookie) + c.newRequest(c.polyRectangleRequest(Drawable, Gc, Rectangles), cookie) + return PolyRectangleCookie{cookie} +} + +func (cook PolyRectangleCookie) Check() error { + return cook.check() } // Write request to wire for PolyRectangle -func polyRectangleRequest(Drawable Id, Gc Id, Rectangles []Rectangle) []byte { +func (c *Conn) polyRectangleRequest(Drawable Id, Gc Id, Rectangles []Rectangle) []byte { size := pad((12 + pad((len(Rectangles) * 8)))) b := 0 buf := make([]byte, size) @@ -9911,23 +10790,29 @@ func polyRectangleRequest(Drawable Id, Gc Id, Rectangles []Rectangle) []byte { // Request PolyArc // size: pad((12 + pad((len(Arcs) * 12)))) -type PolyArcCookie cookie +type PolyArcCookie struct { + *cookie +} // Write request to wire for PolyArc func (c *Conn) PolyArc(Drawable Id, Gc Id, Arcs []Arc) PolyArcCookie { cookie := c.newCookie(false, false) - c.newRequest(polyArcRequest(Drawable, Gc, Arcs), cookie) - return PolyArcCookie(cookie) + c.newRequest(c.polyArcRequest(Drawable, Gc, Arcs), cookie) + return PolyArcCookie{cookie} } func (c *Conn) PolyArcChecked(Drawable Id, Gc Id, Arcs []Arc) PolyArcCookie { cookie := c.newCookie(true, false) - c.newRequest(polyArcRequest(Drawable, Gc, Arcs), cookie) - return PolyArcCookie(cookie) + c.newRequest(c.polyArcRequest(Drawable, Gc, Arcs), cookie) + return PolyArcCookie{cookie} +} + +func (cook PolyArcCookie) Check() error { + return cook.check() } // Write request to wire for PolyArc -func polyArcRequest(Drawable Id, Gc Id, Arcs []Arc) []byte { +func (c *Conn) polyArcRequest(Drawable Id, Gc Id, Arcs []Arc) []byte { size := pad((12 + pad((len(Arcs) * 12)))) b := 0 buf := make([]byte, size) @@ -9953,23 +10838,29 @@ func polyArcRequest(Drawable Id, Gc Id, Arcs []Arc) []byte { // Request FillPoly // size: pad((16 + pad((len(Points) * 4)))) -type FillPolyCookie cookie +type FillPolyCookie struct { + *cookie +} // Write request to wire for FillPoly func (c *Conn) FillPoly(Drawable Id, Gc Id, Shape byte, CoordinateMode byte, Points []Point) FillPolyCookie { cookie := c.newCookie(false, false) - c.newRequest(fillPolyRequest(Drawable, Gc, Shape, CoordinateMode, Points), cookie) - return FillPolyCookie(cookie) + c.newRequest(c.fillPolyRequest(Drawable, Gc, Shape, CoordinateMode, Points), cookie) + return FillPolyCookie{cookie} } func (c *Conn) FillPolyChecked(Drawable Id, Gc Id, Shape byte, CoordinateMode byte, Points []Point) FillPolyCookie { cookie := c.newCookie(true, false) - c.newRequest(fillPolyRequest(Drawable, Gc, Shape, CoordinateMode, Points), cookie) - return FillPolyCookie(cookie) + c.newRequest(c.fillPolyRequest(Drawable, Gc, Shape, CoordinateMode, Points), cookie) + return FillPolyCookie{cookie} +} + +func (cook FillPolyCookie) Check() error { + return cook.check() } // Write request to wire for FillPoly -func fillPolyRequest(Drawable Id, Gc Id, Shape byte, CoordinateMode byte, Points []Point) []byte { +func (c *Conn) fillPolyRequest(Drawable Id, Gc Id, Shape byte, CoordinateMode byte, Points []Point) []byte { size := pad((16 + pad((len(Points) * 4)))) b := 0 buf := make([]byte, size) @@ -10003,23 +10894,29 @@ func fillPolyRequest(Drawable Id, Gc Id, Shape byte, CoordinateMode byte, Points // Request PolyFillRectangle // size: pad((12 + pad((len(Rectangles) * 8)))) -type PolyFillRectangleCookie cookie +type PolyFillRectangleCookie struct { + *cookie +} // Write request to wire for PolyFillRectangle func (c *Conn) PolyFillRectangle(Drawable Id, Gc Id, Rectangles []Rectangle) PolyFillRectangleCookie { cookie := c.newCookie(false, false) - c.newRequest(polyFillRectangleRequest(Drawable, Gc, Rectangles), cookie) - return PolyFillRectangleCookie(cookie) + c.newRequest(c.polyFillRectangleRequest(Drawable, Gc, Rectangles), cookie) + return PolyFillRectangleCookie{cookie} } func (c *Conn) PolyFillRectangleChecked(Drawable Id, Gc Id, Rectangles []Rectangle) PolyFillRectangleCookie { cookie := c.newCookie(true, false) - c.newRequest(polyFillRectangleRequest(Drawable, Gc, Rectangles), cookie) - return PolyFillRectangleCookie(cookie) + c.newRequest(c.polyFillRectangleRequest(Drawable, Gc, Rectangles), cookie) + return PolyFillRectangleCookie{cookie} +} + +func (cook PolyFillRectangleCookie) Check() error { + return cook.check() } // Write request to wire for PolyFillRectangle -func polyFillRectangleRequest(Drawable Id, Gc Id, Rectangles []Rectangle) []byte { +func (c *Conn) polyFillRectangleRequest(Drawable Id, Gc Id, Rectangles []Rectangle) []byte { size := pad((12 + pad((len(Rectangles) * 8)))) b := 0 buf := make([]byte, size) @@ -10045,23 +10942,29 @@ func polyFillRectangleRequest(Drawable Id, Gc Id, Rectangles []Rectangle) []byte // Request PolyFillArc // size: pad((12 + pad((len(Arcs) * 12)))) -type PolyFillArcCookie cookie +type PolyFillArcCookie struct { + *cookie +} // Write request to wire for PolyFillArc func (c *Conn) PolyFillArc(Drawable Id, Gc Id, Arcs []Arc) PolyFillArcCookie { cookie := c.newCookie(false, false) - c.newRequest(polyFillArcRequest(Drawable, Gc, Arcs), cookie) - return PolyFillArcCookie(cookie) + c.newRequest(c.polyFillArcRequest(Drawable, Gc, Arcs), cookie) + return PolyFillArcCookie{cookie} } func (c *Conn) PolyFillArcChecked(Drawable Id, Gc Id, Arcs []Arc) PolyFillArcCookie { cookie := c.newCookie(true, false) - c.newRequest(polyFillArcRequest(Drawable, Gc, Arcs), cookie) - return PolyFillArcCookie(cookie) + c.newRequest(c.polyFillArcRequest(Drawable, Gc, Arcs), cookie) + return PolyFillArcCookie{cookie} +} + +func (cook PolyFillArcCookie) Check() error { + return cook.check() } // Write request to wire for PolyFillArc -func polyFillArcRequest(Drawable Id, Gc Id, Arcs []Arc) []byte { +func (c *Conn) polyFillArcRequest(Drawable Id, Gc Id, Arcs []Arc) []byte { size := pad((12 + pad((len(Arcs) * 12)))) b := 0 buf := make([]byte, size) @@ -10087,23 +10990,29 @@ func polyFillArcRequest(Drawable Id, Gc Id, Arcs []Arc) []byte { // Request PutImage // size: pad((24 + pad((len(Data) * 1)))) -type PutImageCookie cookie +type PutImageCookie struct { + *cookie +} // Write request to wire for PutImage func (c *Conn) PutImage(Format byte, Drawable Id, Gc Id, Width uint16, Height uint16, DstX int16, DstY int16, LeftPad byte, Depth byte, Data []byte) PutImageCookie { cookie := c.newCookie(false, false) - c.newRequest(putImageRequest(Format, Drawable, Gc, Width, Height, DstX, DstY, LeftPad, Depth, Data), cookie) - return PutImageCookie(cookie) + c.newRequest(c.putImageRequest(Format, Drawable, Gc, Width, Height, DstX, DstY, LeftPad, Depth, Data), cookie) + return PutImageCookie{cookie} } func (c *Conn) PutImageChecked(Format byte, Drawable Id, Gc Id, Width uint16, Height uint16, DstX int16, DstY int16, LeftPad byte, Depth byte, Data []byte) PutImageCookie { cookie := c.newCookie(true, false) - c.newRequest(putImageRequest(Format, Drawable, Gc, Width, Height, DstX, DstY, LeftPad, Depth, Data), cookie) - return PutImageCookie(cookie) + c.newRequest(c.putImageRequest(Format, Drawable, Gc, Width, Height, DstX, DstY, LeftPad, Depth, Data), cookie) + return PutImageCookie{cookie} +} + +func (cook PutImageCookie) Check() error { + return cook.check() } // Write request to wire for PutImage -func putImageRequest(Format byte, Drawable Id, Gc Id, Width uint16, Height uint16, DstX int16, DstY int16, LeftPad byte, Depth byte, Data []byte) []byte { +func (c *Conn) putImageRequest(Format byte, Drawable Id, Gc Id, Width uint16, Height uint16, DstX int16, DstY int16, LeftPad byte, Depth byte, Data []byte) []byte { size := pad((24 + pad((len(Data) * 1)))) b := 0 buf := make([]byte, size) @@ -10151,18 +11060,20 @@ func putImageRequest(Format byte, Drawable Id, Gc Id, Width uint16, Height uint1 // Request GetImage // size: 20 -type GetImageCookie cookie +type GetImageCookie struct { + *cookie +} func (c *Conn) GetImage(Format byte, Drawable Id, X int16, Y int16, Width uint16, Height uint16, PlaneMask uint32) GetImageCookie { cookie := c.newCookie(true, true) - c.newRequest(getImageRequest(Format, Drawable, X, Y, Width, Height, PlaneMask), cookie) - return GetImageCookie(cookie) + c.newRequest(c.getImageRequest(Format, Drawable, X, Y, Width, Height, PlaneMask), cookie) + return GetImageCookie{cookie} } func (c *Conn) GetImageUnchecked(Format byte, Drawable Id, X int16, Y int16, Width uint16, Height uint16, PlaneMask uint32) GetImageCookie { cookie := c.newCookie(false, true) - c.newRequest(getImageRequest(Format, Drawable, X, Y, Width, Height, PlaneMask), cookie) - return GetImageCookie(cookie) + c.newRequest(c.getImageRequest(Format, Drawable, X, Y, Width, Height, PlaneMask), cookie) + return GetImageCookie{cookie} } // Request reply for GetImage @@ -10178,10 +11089,13 @@ type GetImageReply struct { // Waits and reads reply data from request GetImage func (cook GetImageCookie) Reply() (*GetImageReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getImageReply(buf), nil } @@ -10211,8 +11125,12 @@ func getImageReply(buf []byte) *GetImageReply { return v } +func (cook GetImageCookie) Check() error { + return cook.check() +} + // Write request to wire for GetImage -func getImageRequest(Format byte, Drawable Id, X int16, Y int16, Width uint16, Height uint16, PlaneMask uint32) []byte { +func (c *Conn) getImageRequest(Format byte, Drawable Id, X int16, Y int16, Width uint16, Height uint16, PlaneMask uint32) []byte { size := 20 b := 0 buf := make([]byte, size) @@ -10249,23 +11167,29 @@ func getImageRequest(Format byte, Drawable Id, X int16, Y int16, Width uint16, H // Request PolyText8 // size: pad((16 + pad((len(Items) * 1)))) -type PolyText8Cookie cookie +type PolyText8Cookie struct { + *cookie +} // Write request to wire for PolyText8 func (c *Conn) PolyText8(Drawable Id, Gc Id, X int16, Y int16, Items []byte) PolyText8Cookie { cookie := c.newCookie(false, false) - c.newRequest(polyText8Request(Drawable, Gc, X, Y, Items), cookie) - return PolyText8Cookie(cookie) + c.newRequest(c.polyText8Request(Drawable, Gc, X, Y, Items), cookie) + return PolyText8Cookie{cookie} } func (c *Conn) PolyText8Checked(Drawable Id, Gc Id, X int16, Y int16, Items []byte) PolyText8Cookie { cookie := c.newCookie(true, false) - c.newRequest(polyText8Request(Drawable, Gc, X, Y, Items), cookie) - return PolyText8Cookie(cookie) + c.newRequest(c.polyText8Request(Drawable, Gc, X, Y, Items), cookie) + return PolyText8Cookie{cookie} +} + +func (cook PolyText8Cookie) Check() error { + return cook.check() } // Write request to wire for PolyText8 -func polyText8Request(Drawable Id, Gc Id, X int16, Y int16, Items []byte) []byte { +func (c *Conn) polyText8Request(Drawable Id, Gc Id, X int16, Y int16, Items []byte) []byte { size := pad((16 + pad((len(Items) * 1)))) b := 0 buf := make([]byte, size) @@ -10298,23 +11222,29 @@ func polyText8Request(Drawable Id, Gc Id, X int16, Y int16, Items []byte) []byte // Request PolyText16 // size: pad((16 + pad((len(Items) * 1)))) -type PolyText16Cookie cookie +type PolyText16Cookie struct { + *cookie +} // Write request to wire for PolyText16 func (c *Conn) PolyText16(Drawable Id, Gc Id, X int16, Y int16, Items []byte) PolyText16Cookie { cookie := c.newCookie(false, false) - c.newRequest(polyText16Request(Drawable, Gc, X, Y, Items), cookie) - return PolyText16Cookie(cookie) + c.newRequest(c.polyText16Request(Drawable, Gc, X, Y, Items), cookie) + return PolyText16Cookie{cookie} } func (c *Conn) PolyText16Checked(Drawable Id, Gc Id, X int16, Y int16, Items []byte) PolyText16Cookie { cookie := c.newCookie(true, false) - c.newRequest(polyText16Request(Drawable, Gc, X, Y, Items), cookie) - return PolyText16Cookie(cookie) + c.newRequest(c.polyText16Request(Drawable, Gc, X, Y, Items), cookie) + return PolyText16Cookie{cookie} +} + +func (cook PolyText16Cookie) Check() error { + return cook.check() } // Write request to wire for PolyText16 -func polyText16Request(Drawable Id, Gc Id, X int16, Y int16, Items []byte) []byte { +func (c *Conn) polyText16Request(Drawable Id, Gc Id, X int16, Y int16, Items []byte) []byte { size := pad((16 + pad((len(Items) * 1)))) b := 0 buf := make([]byte, size) @@ -10347,23 +11277,29 @@ func polyText16Request(Drawable Id, Gc Id, X int16, Y int16, Items []byte) []byt // Request ImageText8 // size: pad((16 + pad((int(StringLen) * 1)))) -type ImageText8Cookie cookie +type ImageText8Cookie struct { + *cookie +} // Write request to wire for ImageText8 func (c *Conn) ImageText8(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, String string) ImageText8Cookie { cookie := c.newCookie(false, false) - c.newRequest(imageText8Request(StringLen, Drawable, Gc, X, Y, String), cookie) - return ImageText8Cookie(cookie) + c.newRequest(c.imageText8Request(StringLen, Drawable, Gc, X, Y, String), cookie) + return ImageText8Cookie{cookie} } func (c *Conn) ImageText8Checked(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, String string) ImageText8Cookie { cookie := c.newCookie(true, false) - c.newRequest(imageText8Request(StringLen, Drawable, Gc, X, Y, String), cookie) - return ImageText8Cookie(cookie) + c.newRequest(c.imageText8Request(StringLen, Drawable, Gc, X, Y, String), cookie) + return ImageText8Cookie{cookie} +} + +func (cook ImageText8Cookie) Check() error { + return cook.check() } // Write request to wire for ImageText8 -func imageText8Request(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, String string) []byte { +func (c *Conn) imageText8Request(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, String string) []byte { size := pad((16 + pad((int(StringLen) * 1)))) b := 0 buf := make([]byte, size) @@ -10397,23 +11333,29 @@ func imageText8Request(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, Str // Request ImageText16 // size: pad((16 + pad((int(StringLen) * 2)))) -type ImageText16Cookie cookie +type ImageText16Cookie struct { + *cookie +} // Write request to wire for ImageText16 func (c *Conn) ImageText16(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, String []Char2b) ImageText16Cookie { cookie := c.newCookie(false, false) - c.newRequest(imageText16Request(StringLen, Drawable, Gc, X, Y, String), cookie) - return ImageText16Cookie(cookie) + c.newRequest(c.imageText16Request(StringLen, Drawable, Gc, X, Y, String), cookie) + return ImageText16Cookie{cookie} } func (c *Conn) ImageText16Checked(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, String []Char2b) ImageText16Cookie { cookie := c.newCookie(true, false) - c.newRequest(imageText16Request(StringLen, Drawable, Gc, X, Y, String), cookie) - return ImageText16Cookie(cookie) + c.newRequest(c.imageText16Request(StringLen, Drawable, Gc, X, Y, String), cookie) + return ImageText16Cookie{cookie} +} + +func (cook ImageText16Cookie) Check() error { + return cook.check() } // Write request to wire for ImageText16 -func imageText16Request(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, String []Char2b) []byte { +func (c *Conn) imageText16Request(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, String []Char2b) []byte { size := pad((16 + pad((int(StringLen) * 2)))) b := 0 buf := make([]byte, size) @@ -10446,23 +11388,29 @@ func imageText16Request(StringLen byte, Drawable Id, Gc Id, X int16, Y int16, St // Request CreateColormap // size: 16 -type CreateColormapCookie cookie +type CreateColormapCookie struct { + *cookie +} // Write request to wire for CreateColormap func (c *Conn) CreateColormap(Alloc byte, Mid Id, Window Id, Visual Visualid) CreateColormapCookie { cookie := c.newCookie(false, false) - c.newRequest(createColormapRequest(Alloc, Mid, Window, Visual), cookie) - return CreateColormapCookie(cookie) + c.newRequest(c.createColormapRequest(Alloc, Mid, Window, Visual), cookie) + return CreateColormapCookie{cookie} } func (c *Conn) CreateColormapChecked(Alloc byte, Mid Id, Window Id, Visual Visualid) CreateColormapCookie { cookie := c.newCookie(true, false) - c.newRequest(createColormapRequest(Alloc, Mid, Window, Visual), cookie) - return CreateColormapCookie(cookie) + c.newRequest(c.createColormapRequest(Alloc, Mid, Window, Visual), cookie) + return CreateColormapCookie{cookie} +} + +func (cook CreateColormapCookie) Check() error { + return cook.check() } // Write request to wire for CreateColormap -func createColormapRequest(Alloc byte, Mid Id, Window Id, Visual Visualid) []byte { +func (c *Conn) createColormapRequest(Alloc byte, Mid Id, Window Id, Visual Visualid) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -10490,23 +11438,29 @@ func createColormapRequest(Alloc byte, Mid Id, Window Id, Visual Visualid) []byt // Request FreeColormap // size: 8 -type FreeColormapCookie cookie +type FreeColormapCookie struct { + *cookie +} // Write request to wire for FreeColormap func (c *Conn) FreeColormap(Cmap Id) FreeColormapCookie { cookie := c.newCookie(false, false) - c.newRequest(freeColormapRequest(Cmap), cookie) - return FreeColormapCookie(cookie) + c.newRequest(c.freeColormapRequest(Cmap), cookie) + return FreeColormapCookie{cookie} } func (c *Conn) FreeColormapChecked(Cmap Id) FreeColormapCookie { cookie := c.newCookie(true, false) - c.newRequest(freeColormapRequest(Cmap), cookie) - return FreeColormapCookie(cookie) + c.newRequest(c.freeColormapRequest(Cmap), cookie) + return FreeColormapCookie{cookie} +} + +func (cook FreeColormapCookie) Check() error { + return cook.check() } // Write request to wire for FreeColormap -func freeColormapRequest(Cmap Id) []byte { +func (c *Conn) freeColormapRequest(Cmap Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -10527,23 +11481,29 @@ func freeColormapRequest(Cmap Id) []byte { // Request CopyColormapAndFree // size: 12 -type CopyColormapAndFreeCookie cookie +type CopyColormapAndFreeCookie struct { + *cookie +} // Write request to wire for CopyColormapAndFree func (c *Conn) CopyColormapAndFree(Mid Id, SrcCmap Id) CopyColormapAndFreeCookie { cookie := c.newCookie(false, false) - c.newRequest(copyColormapAndFreeRequest(Mid, SrcCmap), cookie) - return CopyColormapAndFreeCookie(cookie) + c.newRequest(c.copyColormapAndFreeRequest(Mid, SrcCmap), cookie) + return CopyColormapAndFreeCookie{cookie} } func (c *Conn) CopyColormapAndFreeChecked(Mid Id, SrcCmap Id) CopyColormapAndFreeCookie { cookie := c.newCookie(true, false) - c.newRequest(copyColormapAndFreeRequest(Mid, SrcCmap), cookie) - return CopyColormapAndFreeCookie(cookie) + c.newRequest(c.copyColormapAndFreeRequest(Mid, SrcCmap), cookie) + return CopyColormapAndFreeCookie{cookie} +} + +func (cook CopyColormapAndFreeCookie) Check() error { + return cook.check() } // Write request to wire for CopyColormapAndFree -func copyColormapAndFreeRequest(Mid Id, SrcCmap Id) []byte { +func (c *Conn) copyColormapAndFreeRequest(Mid Id, SrcCmap Id) []byte { size := 12 b := 0 buf := make([]byte, size) @@ -10567,23 +11527,29 @@ func copyColormapAndFreeRequest(Mid Id, SrcCmap Id) []byte { // Request InstallColormap // size: 8 -type InstallColormapCookie cookie +type InstallColormapCookie struct { + *cookie +} // Write request to wire for InstallColormap func (c *Conn) InstallColormap(Cmap Id) InstallColormapCookie { cookie := c.newCookie(false, false) - c.newRequest(installColormapRequest(Cmap), cookie) - return InstallColormapCookie(cookie) + c.newRequest(c.installColormapRequest(Cmap), cookie) + return InstallColormapCookie{cookie} } func (c *Conn) InstallColormapChecked(Cmap Id) InstallColormapCookie { cookie := c.newCookie(true, false) - c.newRequest(installColormapRequest(Cmap), cookie) - return InstallColormapCookie(cookie) + c.newRequest(c.installColormapRequest(Cmap), cookie) + return InstallColormapCookie{cookie} +} + +func (cook InstallColormapCookie) Check() error { + return cook.check() } // Write request to wire for InstallColormap -func installColormapRequest(Cmap Id) []byte { +func (c *Conn) installColormapRequest(Cmap Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -10604,23 +11570,29 @@ func installColormapRequest(Cmap Id) []byte { // Request UninstallColormap // size: 8 -type UninstallColormapCookie cookie +type UninstallColormapCookie struct { + *cookie +} // Write request to wire for UninstallColormap func (c *Conn) UninstallColormap(Cmap Id) UninstallColormapCookie { cookie := c.newCookie(false, false) - c.newRequest(uninstallColormapRequest(Cmap), cookie) - return UninstallColormapCookie(cookie) + c.newRequest(c.uninstallColormapRequest(Cmap), cookie) + return UninstallColormapCookie{cookie} } func (c *Conn) UninstallColormapChecked(Cmap Id) UninstallColormapCookie { cookie := c.newCookie(true, false) - c.newRequest(uninstallColormapRequest(Cmap), cookie) - return UninstallColormapCookie(cookie) + c.newRequest(c.uninstallColormapRequest(Cmap), cookie) + return UninstallColormapCookie{cookie} +} + +func (cook UninstallColormapCookie) Check() error { + return cook.check() } // Write request to wire for UninstallColormap -func uninstallColormapRequest(Cmap Id) []byte { +func (c *Conn) uninstallColormapRequest(Cmap Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -10641,18 +11613,20 @@ func uninstallColormapRequest(Cmap Id) []byte { // Request ListInstalledColormaps // size: 8 -type ListInstalledColormapsCookie cookie +type ListInstalledColormapsCookie struct { + *cookie +} func (c *Conn) ListInstalledColormaps(Window Id) ListInstalledColormapsCookie { cookie := c.newCookie(true, true) - c.newRequest(listInstalledColormapsRequest(Window), cookie) - return ListInstalledColormapsCookie(cookie) + c.newRequest(c.listInstalledColormapsRequest(Window), cookie) + return ListInstalledColormapsCookie{cookie} } func (c *Conn) ListInstalledColormapsUnchecked(Window Id) ListInstalledColormapsCookie { cookie := c.newCookie(false, true) - c.newRequest(listInstalledColormapsRequest(Window), cookie) - return ListInstalledColormapsCookie(cookie) + c.newRequest(c.listInstalledColormapsRequest(Window), cookie) + return ListInstalledColormapsCookie{cookie} } // Request reply for ListInstalledColormaps @@ -10668,10 +11642,13 @@ type ListInstalledColormapsReply struct { // Waits and reads reply data from request ListInstalledColormaps func (cook ListInstalledColormapsCookie) Reply() (*ListInstalledColormapsReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return listInstalledColormapsReply(buf), nil } @@ -10703,8 +11680,12 @@ func listInstalledColormapsReply(buf []byte) *ListInstalledColormapsReply { return v } +func (cook ListInstalledColormapsCookie) Check() error { + return cook.check() +} + // Write request to wire for ListInstalledColormaps -func listInstalledColormapsRequest(Window Id) []byte { +func (c *Conn) listInstalledColormapsRequest(Window Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -10725,18 +11706,20 @@ func listInstalledColormapsRequest(Window Id) []byte { // Request AllocColor // size: 16 -type AllocColorCookie cookie +type AllocColorCookie struct { + *cookie +} func (c *Conn) AllocColor(Cmap Id, Red uint16, Green uint16, Blue uint16) AllocColorCookie { cookie := c.newCookie(true, true) - c.newRequest(allocColorRequest(Cmap, Red, Green, Blue), cookie) - return AllocColorCookie(cookie) + c.newRequest(c.allocColorRequest(Cmap, Red, Green, Blue), cookie) + return AllocColorCookie{cookie} } func (c *Conn) AllocColorUnchecked(Cmap Id, Red uint16, Green uint16, Blue uint16) AllocColorCookie { cookie := c.newCookie(false, true) - c.newRequest(allocColorRequest(Cmap, Red, Green, Blue), cookie) - return AllocColorCookie(cookie) + c.newRequest(c.allocColorRequest(Cmap, Red, Green, Blue), cookie) + return AllocColorCookie{cookie} } // Request reply for AllocColor @@ -10754,10 +11737,13 @@ type AllocColorReply struct { // Waits and reads reply data from request AllocColor func (cook AllocColorCookie) Reply() (*AllocColorReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return allocColorReply(buf), nil } @@ -10791,8 +11777,12 @@ func allocColorReply(buf []byte) *AllocColorReply { return v } +func (cook AllocColorCookie) Check() error { + return cook.check() +} + // Write request to wire for AllocColor -func allocColorRequest(Cmap Id, Red uint16, Green uint16, Blue uint16) []byte { +func (c *Conn) allocColorRequest(Cmap Id, Red uint16, Green uint16, Blue uint16) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -10824,18 +11814,20 @@ func allocColorRequest(Cmap Id, Red uint16, Green uint16, Blue uint16) []byte { // Request AllocNamedColor // size: pad((12 + pad((int(NameLen) * 1)))) -type AllocNamedColorCookie cookie +type AllocNamedColorCookie struct { + *cookie +} func (c *Conn) AllocNamedColor(Cmap Id, NameLen uint16, Name string) AllocNamedColorCookie { cookie := c.newCookie(true, true) - c.newRequest(allocNamedColorRequest(Cmap, NameLen, Name), cookie) - return AllocNamedColorCookie(cookie) + c.newRequest(c.allocNamedColorRequest(Cmap, NameLen, Name), cookie) + return AllocNamedColorCookie{cookie} } func (c *Conn) AllocNamedColorUnchecked(Cmap Id, NameLen uint16, Name string) AllocNamedColorCookie { cookie := c.newCookie(false, true) - c.newRequest(allocNamedColorRequest(Cmap, NameLen, Name), cookie) - return AllocNamedColorCookie(cookie) + c.newRequest(c.allocNamedColorRequest(Cmap, NameLen, Name), cookie) + return AllocNamedColorCookie{cookie} } // Request reply for AllocNamedColor @@ -10855,10 +11847,13 @@ type AllocNamedColorReply struct { // Waits and reads reply data from request AllocNamedColor func (cook AllocNamedColorCookie) Reply() (*AllocNamedColorReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return allocNamedColorReply(buf), nil } @@ -10899,8 +11894,12 @@ func allocNamedColorReply(buf []byte) *AllocNamedColorReply { return v } +func (cook AllocNamedColorCookie) Check() error { + return cook.check() +} + // Write request to wire for AllocNamedColor -func allocNamedColorRequest(Cmap Id, NameLen uint16, Name string) []byte { +func (c *Conn) allocNamedColorRequest(Cmap Id, NameLen uint16, Name string) []byte { size := pad((12 + pad((int(NameLen) * 1)))) b := 0 buf := make([]byte, size) @@ -10929,18 +11928,20 @@ func allocNamedColorRequest(Cmap Id, NameLen uint16, Name string) []byte { // Request AllocColorCells // size: 12 -type AllocColorCellsCookie cookie +type AllocColorCellsCookie struct { + *cookie +} func (c *Conn) AllocColorCells(Contiguous bool, Cmap Id, Colors uint16, Planes uint16) AllocColorCellsCookie { cookie := c.newCookie(true, true) - c.newRequest(allocColorCellsRequest(Contiguous, Cmap, Colors, Planes), cookie) - return AllocColorCellsCookie(cookie) + c.newRequest(c.allocColorCellsRequest(Contiguous, Cmap, Colors, Planes), cookie) + return AllocColorCellsCookie{cookie} } func (c *Conn) AllocColorCellsUnchecked(Contiguous bool, Cmap Id, Colors uint16, Planes uint16) AllocColorCellsCookie { cookie := c.newCookie(false, true) - c.newRequest(allocColorCellsRequest(Contiguous, Cmap, Colors, Planes), cookie) - return AllocColorCellsCookie(cookie) + c.newRequest(c.allocColorCellsRequest(Contiguous, Cmap, Colors, Planes), cookie) + return AllocColorCellsCookie{cookie} } // Request reply for AllocColorCells @@ -10958,10 +11959,13 @@ type AllocColorCellsReply struct { // Waits and reads reply data from request AllocColorCells func (cook AllocColorCellsCookie) Reply() (*AllocColorCellsReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return allocColorCellsReply(buf), nil } @@ -11003,8 +12007,12 @@ func allocColorCellsReply(buf []byte) *AllocColorCellsReply { return v } +func (cook AllocColorCellsCookie) Check() error { + return cook.check() +} + // Write request to wire for AllocColorCells -func allocColorCellsRequest(Contiguous bool, Cmap Id, Colors uint16, Planes uint16) []byte { +func (c *Conn) allocColorCellsRequest(Contiguous bool, Cmap Id, Colors uint16, Planes uint16) []byte { size := 12 b := 0 buf := make([]byte, size) @@ -11036,18 +12044,20 @@ func allocColorCellsRequest(Contiguous bool, Cmap Id, Colors uint16, Planes uint // Request AllocColorPlanes // size: 16 -type AllocColorPlanesCookie cookie +type AllocColorPlanesCookie struct { + *cookie +} func (c *Conn) AllocColorPlanes(Contiguous bool, Cmap Id, Colors uint16, Reds uint16, Greens uint16, Blues uint16) AllocColorPlanesCookie { cookie := c.newCookie(true, true) - c.newRequest(allocColorPlanesRequest(Contiguous, Cmap, Colors, Reds, Greens, Blues), cookie) - return AllocColorPlanesCookie(cookie) + c.newRequest(c.allocColorPlanesRequest(Contiguous, Cmap, Colors, Reds, Greens, Blues), cookie) + return AllocColorPlanesCookie{cookie} } func (c *Conn) AllocColorPlanesUnchecked(Contiguous bool, Cmap Id, Colors uint16, Reds uint16, Greens uint16, Blues uint16) AllocColorPlanesCookie { cookie := c.newCookie(false, true) - c.newRequest(allocColorPlanesRequest(Contiguous, Cmap, Colors, Reds, Greens, Blues), cookie) - return AllocColorPlanesCookie(cookie) + c.newRequest(c.allocColorPlanesRequest(Contiguous, Cmap, Colors, Reds, Greens, Blues), cookie) + return AllocColorPlanesCookie{cookie} } // Request reply for AllocColorPlanes @@ -11067,10 +12077,13 @@ type AllocColorPlanesReply struct { // Waits and reads reply data from request AllocColorPlanes func (cook AllocColorPlanesCookie) Reply() (*AllocColorPlanesReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return allocColorPlanesReply(buf), nil } @@ -11113,8 +12126,12 @@ func allocColorPlanesReply(buf []byte) *AllocColorPlanesReply { return v } +func (cook AllocColorPlanesCookie) Check() error { + return cook.check() +} + // Write request to wire for AllocColorPlanes -func allocColorPlanesRequest(Contiguous bool, Cmap Id, Colors uint16, Reds uint16, Greens uint16, Blues uint16) []byte { +func (c *Conn) allocColorPlanesRequest(Contiguous bool, Cmap Id, Colors uint16, Reds uint16, Greens uint16, Blues uint16) []byte { size := 16 b := 0 buf := make([]byte, size) @@ -11152,23 +12169,29 @@ func allocColorPlanesRequest(Contiguous bool, Cmap Id, Colors uint16, Reds uint1 // Request FreeColors // size: pad((12 + pad((len(Pixels) * 4)))) -type FreeColorsCookie cookie +type FreeColorsCookie struct { + *cookie +} // Write request to wire for FreeColors func (c *Conn) FreeColors(Cmap Id, PlaneMask uint32, Pixels []uint32) FreeColorsCookie { cookie := c.newCookie(false, false) - c.newRequest(freeColorsRequest(Cmap, PlaneMask, Pixels), cookie) - return FreeColorsCookie(cookie) + c.newRequest(c.freeColorsRequest(Cmap, PlaneMask, Pixels), cookie) + return FreeColorsCookie{cookie} } func (c *Conn) FreeColorsChecked(Cmap Id, PlaneMask uint32, Pixels []uint32) FreeColorsCookie { cookie := c.newCookie(true, false) - c.newRequest(freeColorsRequest(Cmap, PlaneMask, Pixels), cookie) - return FreeColorsCookie(cookie) + c.newRequest(c.freeColorsRequest(Cmap, PlaneMask, Pixels), cookie) + return FreeColorsCookie{cookie} +} + +func (cook FreeColorsCookie) Check() error { + return cook.check() } // Write request to wire for FreeColors -func freeColorsRequest(Cmap Id, PlaneMask uint32, Pixels []uint32) []byte { +func (c *Conn) freeColorsRequest(Cmap Id, PlaneMask uint32, Pixels []uint32) []byte { size := pad((12 + pad((len(Pixels) * 4)))) b := 0 buf := make([]byte, size) @@ -11198,23 +12221,29 @@ func freeColorsRequest(Cmap Id, PlaneMask uint32, Pixels []uint32) []byte { // Request StoreColors // size: pad((8 + pad((len(Items) * 12)))) -type StoreColorsCookie cookie +type StoreColorsCookie struct { + *cookie +} // Write request to wire for StoreColors func (c *Conn) StoreColors(Cmap Id, Items []Coloritem) StoreColorsCookie { cookie := c.newCookie(false, false) - c.newRequest(storeColorsRequest(Cmap, Items), cookie) - return StoreColorsCookie(cookie) + c.newRequest(c.storeColorsRequest(Cmap, Items), cookie) + return StoreColorsCookie{cookie} } func (c *Conn) StoreColorsChecked(Cmap Id, Items []Coloritem) StoreColorsCookie { cookie := c.newCookie(true, false) - c.newRequest(storeColorsRequest(Cmap, Items), cookie) - return StoreColorsCookie(cookie) + c.newRequest(c.storeColorsRequest(Cmap, Items), cookie) + return StoreColorsCookie{cookie} +} + +func (cook StoreColorsCookie) Check() error { + return cook.check() } // Write request to wire for StoreColors -func storeColorsRequest(Cmap Id, Items []Coloritem) []byte { +func (c *Conn) storeColorsRequest(Cmap Id, Items []Coloritem) []byte { size := pad((8 + pad((len(Items) * 12)))) b := 0 buf := make([]byte, size) @@ -11237,23 +12266,29 @@ func storeColorsRequest(Cmap Id, Items []Coloritem) []byte { // Request StoreNamedColor // size: pad((16 + pad((int(NameLen) * 1)))) -type StoreNamedColorCookie cookie +type StoreNamedColorCookie struct { + *cookie +} // Write request to wire for StoreNamedColor func (c *Conn) StoreNamedColor(Flags byte, Cmap Id, Pixel uint32, NameLen uint16, Name string) StoreNamedColorCookie { cookie := c.newCookie(false, false) - c.newRequest(storeNamedColorRequest(Flags, Cmap, Pixel, NameLen, Name), cookie) - return StoreNamedColorCookie(cookie) + c.newRequest(c.storeNamedColorRequest(Flags, Cmap, Pixel, NameLen, Name), cookie) + return StoreNamedColorCookie{cookie} } func (c *Conn) StoreNamedColorChecked(Flags byte, Cmap Id, Pixel uint32, NameLen uint16, Name string) StoreNamedColorCookie { cookie := c.newCookie(true, false) - c.newRequest(storeNamedColorRequest(Flags, Cmap, Pixel, NameLen, Name), cookie) - return StoreNamedColorCookie(cookie) + c.newRequest(c.storeNamedColorRequest(Flags, Cmap, Pixel, NameLen, Name), cookie) + return StoreNamedColorCookie{cookie} +} + +func (cook StoreNamedColorCookie) Check() error { + return cook.check() } // Write request to wire for StoreNamedColor -func storeNamedColorRequest(Flags byte, Cmap Id, Pixel uint32, NameLen uint16, Name string) []byte { +func (c *Conn) storeNamedColorRequest(Flags byte, Cmap Id, Pixel uint32, NameLen uint16, Name string) []byte { size := pad((16 + pad((int(NameLen) * 1)))) b := 0 buf := make([]byte, size) @@ -11286,18 +12321,20 @@ func storeNamedColorRequest(Flags byte, Cmap Id, Pixel uint32, NameLen uint16, N // Request QueryColors // size: pad((8 + pad((len(Pixels) * 4)))) -type QueryColorsCookie cookie +type QueryColorsCookie struct { + *cookie +} func (c *Conn) QueryColors(Cmap Id, Pixels []uint32) QueryColorsCookie { cookie := c.newCookie(true, true) - c.newRequest(queryColorsRequest(Cmap, Pixels), cookie) - return QueryColorsCookie(cookie) + c.newRequest(c.queryColorsRequest(Cmap, Pixels), cookie) + return QueryColorsCookie{cookie} } func (c *Conn) QueryColorsUnchecked(Cmap Id, Pixels []uint32) QueryColorsCookie { cookie := c.newCookie(false, true) - c.newRequest(queryColorsRequest(Cmap, Pixels), cookie) - return QueryColorsCookie(cookie) + c.newRequest(c.queryColorsRequest(Cmap, Pixels), cookie) + return QueryColorsCookie{cookie} } // Request reply for QueryColors @@ -11313,10 +12350,13 @@ type QueryColorsReply struct { // Waits and reads reply data from request QueryColors func (cook QueryColorsCookie) Reply() (*QueryColorsReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return queryColorsReply(buf), nil } @@ -11344,8 +12384,12 @@ func queryColorsReply(buf []byte) *QueryColorsReply { return v } +func (cook QueryColorsCookie) Check() error { + return cook.check() +} + // Write request to wire for QueryColors -func queryColorsRequest(Cmap Id, Pixels []uint32) []byte { +func (c *Conn) queryColorsRequest(Cmap Id, Pixels []uint32) []byte { size := pad((8 + pad((len(Pixels) * 4)))) b := 0 buf := make([]byte, size) @@ -11372,18 +12416,20 @@ func queryColorsRequest(Cmap Id, Pixels []uint32) []byte { // Request LookupColor // size: pad((12 + pad((int(NameLen) * 1)))) -type LookupColorCookie cookie +type LookupColorCookie struct { + *cookie +} func (c *Conn) LookupColor(Cmap Id, NameLen uint16, Name string) LookupColorCookie { cookie := c.newCookie(true, true) - c.newRequest(lookupColorRequest(Cmap, NameLen, Name), cookie) - return LookupColorCookie(cookie) + c.newRequest(c.lookupColorRequest(Cmap, NameLen, Name), cookie) + return LookupColorCookie{cookie} } func (c *Conn) LookupColorUnchecked(Cmap Id, NameLen uint16, Name string) LookupColorCookie { cookie := c.newCookie(false, true) - c.newRequest(lookupColorRequest(Cmap, NameLen, Name), cookie) - return LookupColorCookie(cookie) + c.newRequest(c.lookupColorRequest(Cmap, NameLen, Name), cookie) + return LookupColorCookie{cookie} } // Request reply for LookupColor @@ -11402,10 +12448,13 @@ type LookupColorReply struct { // Waits and reads reply data from request LookupColor func (cook LookupColorCookie) Reply() (*LookupColorReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return lookupColorReply(buf), nil } @@ -11443,8 +12492,12 @@ func lookupColorReply(buf []byte) *LookupColorReply { return v } +func (cook LookupColorCookie) Check() error { + return cook.check() +} + // Write request to wire for LookupColor -func lookupColorRequest(Cmap Id, NameLen uint16, Name string) []byte { +func (c *Conn) lookupColorRequest(Cmap Id, NameLen uint16, Name string) []byte { size := pad((12 + pad((int(NameLen) * 1)))) b := 0 buf := make([]byte, size) @@ -11473,23 +12526,29 @@ func lookupColorRequest(Cmap Id, NameLen uint16, Name string) []byte { // Request CreateCursor // size: 32 -type CreateCursorCookie cookie +type CreateCursorCookie struct { + *cookie +} // Write request to wire for CreateCursor func (c *Conn) CreateCursor(Cid Id, Source Id, Mask Id, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16, X uint16, Y uint16) CreateCursorCookie { cookie := c.newCookie(false, false) - c.newRequest(createCursorRequest(Cid, Source, Mask, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue, X, Y), cookie) - return CreateCursorCookie(cookie) + c.newRequest(c.createCursorRequest(Cid, Source, Mask, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue, X, Y), cookie) + return CreateCursorCookie{cookie} } func (c *Conn) CreateCursorChecked(Cid Id, Source Id, Mask Id, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16, X uint16, Y uint16) CreateCursorCookie { cookie := c.newCookie(true, false) - c.newRequest(createCursorRequest(Cid, Source, Mask, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue, X, Y), cookie) - return CreateCursorCookie(cookie) + c.newRequest(c.createCursorRequest(Cid, Source, Mask, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue, X, Y), cookie) + return CreateCursorCookie{cookie} +} + +func (cook CreateCursorCookie) Check() error { + return cook.check() } // Write request to wire for CreateCursor -func createCursorRequest(Cid Id, Source Id, Mask Id, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16, X uint16, Y uint16) []byte { +func (c *Conn) createCursorRequest(Cid Id, Source Id, Mask Id, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16, X uint16, Y uint16) []byte { size := 32 b := 0 buf := make([]byte, size) @@ -11540,23 +12599,29 @@ func createCursorRequest(Cid Id, Source Id, Mask Id, ForeRed uint16, ForeGreen u // Request CreateGlyphCursor // size: 32 -type CreateGlyphCursorCookie cookie +type CreateGlyphCursorCookie struct { + *cookie +} // Write request to wire for CreateGlyphCursor func (c *Conn) CreateGlyphCursor(Cid Id, SourceFont Id, MaskFont Id, SourceChar uint16, MaskChar uint16, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16) CreateGlyphCursorCookie { cookie := c.newCookie(false, false) - c.newRequest(createGlyphCursorRequest(Cid, SourceFont, MaskFont, SourceChar, MaskChar, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue), cookie) - return CreateGlyphCursorCookie(cookie) + c.newRequest(c.createGlyphCursorRequest(Cid, SourceFont, MaskFont, SourceChar, MaskChar, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue), cookie) + return CreateGlyphCursorCookie{cookie} } func (c *Conn) CreateGlyphCursorChecked(Cid Id, SourceFont Id, MaskFont Id, SourceChar uint16, MaskChar uint16, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16) CreateGlyphCursorCookie { cookie := c.newCookie(true, false) - c.newRequest(createGlyphCursorRequest(Cid, SourceFont, MaskFont, SourceChar, MaskChar, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue), cookie) - return CreateGlyphCursorCookie(cookie) + c.newRequest(c.createGlyphCursorRequest(Cid, SourceFont, MaskFont, SourceChar, MaskChar, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue), cookie) + return CreateGlyphCursorCookie{cookie} +} + +func (cook CreateGlyphCursorCookie) Check() error { + return cook.check() } // Write request to wire for CreateGlyphCursor -func createGlyphCursorRequest(Cid Id, SourceFont Id, MaskFont Id, SourceChar uint16, MaskChar uint16, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16) []byte { +func (c *Conn) createGlyphCursorRequest(Cid Id, SourceFont Id, MaskFont Id, SourceChar uint16, MaskChar uint16, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16) []byte { size := 32 b := 0 buf := make([]byte, size) @@ -11607,23 +12672,29 @@ func createGlyphCursorRequest(Cid Id, SourceFont Id, MaskFont Id, SourceChar uin // Request FreeCursor // size: 8 -type FreeCursorCookie cookie +type FreeCursorCookie struct { + *cookie +} // Write request to wire for FreeCursor func (c *Conn) FreeCursor(Cursor Id) FreeCursorCookie { cookie := c.newCookie(false, false) - c.newRequest(freeCursorRequest(Cursor), cookie) - return FreeCursorCookie(cookie) + c.newRequest(c.freeCursorRequest(Cursor), cookie) + return FreeCursorCookie{cookie} } func (c *Conn) FreeCursorChecked(Cursor Id) FreeCursorCookie { cookie := c.newCookie(true, false) - c.newRequest(freeCursorRequest(Cursor), cookie) - return FreeCursorCookie(cookie) + c.newRequest(c.freeCursorRequest(Cursor), cookie) + return FreeCursorCookie{cookie} +} + +func (cook FreeCursorCookie) Check() error { + return cook.check() } // Write request to wire for FreeCursor -func freeCursorRequest(Cursor Id) []byte { +func (c *Conn) freeCursorRequest(Cursor Id) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -11644,23 +12715,29 @@ func freeCursorRequest(Cursor Id) []byte { // Request RecolorCursor // size: 20 -type RecolorCursorCookie cookie +type RecolorCursorCookie struct { + *cookie +} // Write request to wire for RecolorCursor func (c *Conn) RecolorCursor(Cursor Id, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16) RecolorCursorCookie { cookie := c.newCookie(false, false) - c.newRequest(recolorCursorRequest(Cursor, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue), cookie) - return RecolorCursorCookie(cookie) + c.newRequest(c.recolorCursorRequest(Cursor, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue), cookie) + return RecolorCursorCookie{cookie} } func (c *Conn) RecolorCursorChecked(Cursor Id, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16) RecolorCursorCookie { cookie := c.newCookie(true, false) - c.newRequest(recolorCursorRequest(Cursor, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue), cookie) - return RecolorCursorCookie(cookie) + c.newRequest(c.recolorCursorRequest(Cursor, ForeRed, ForeGreen, ForeBlue, BackRed, BackGreen, BackBlue), cookie) + return RecolorCursorCookie{cookie} +} + +func (cook RecolorCursorCookie) Check() error { + return cook.check() } // Write request to wire for RecolorCursor -func recolorCursorRequest(Cursor Id, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16) []byte { +func (c *Conn) recolorCursorRequest(Cursor Id, ForeRed uint16, ForeGreen uint16, ForeBlue uint16, BackRed uint16, BackGreen uint16, BackBlue uint16) []byte { size := 20 b := 0 buf := make([]byte, size) @@ -11699,18 +12776,20 @@ func recolorCursorRequest(Cursor Id, ForeRed uint16, ForeGreen uint16, ForeBlue // Request QueryBestSize // size: 12 -type QueryBestSizeCookie cookie +type QueryBestSizeCookie struct { + *cookie +} func (c *Conn) QueryBestSize(Class byte, Drawable Id, Width uint16, Height uint16) QueryBestSizeCookie { cookie := c.newCookie(true, true) - c.newRequest(queryBestSizeRequest(Class, Drawable, Width, Height), cookie) - return QueryBestSizeCookie(cookie) + c.newRequest(c.queryBestSizeRequest(Class, Drawable, Width, Height), cookie) + return QueryBestSizeCookie{cookie} } func (c *Conn) QueryBestSizeUnchecked(Class byte, Drawable Id, Width uint16, Height uint16) QueryBestSizeCookie { cookie := c.newCookie(false, true) - c.newRequest(queryBestSizeRequest(Class, Drawable, Width, Height), cookie) - return QueryBestSizeCookie(cookie) + c.newRequest(c.queryBestSizeRequest(Class, Drawable, Width, Height), cookie) + return QueryBestSizeCookie{cookie} } // Request reply for QueryBestSize @@ -11725,10 +12804,13 @@ type QueryBestSizeReply struct { // Waits and reads reply data from request QueryBestSize func (cook QueryBestSizeCookie) Reply() (*QueryBestSizeReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return queryBestSizeReply(buf), nil } @@ -11754,8 +12836,12 @@ func queryBestSizeReply(buf []byte) *QueryBestSizeReply { return v } +func (cook QueryBestSizeCookie) Check() error { + return cook.check() +} + // Write request to wire for QueryBestSize -func queryBestSizeRequest(Class byte, Drawable Id, Width uint16, Height uint16) []byte { +func (c *Conn) queryBestSizeRequest(Class byte, Drawable Id, Width uint16, Height uint16) []byte { size := 12 b := 0 buf := make([]byte, size) @@ -11783,18 +12869,20 @@ func queryBestSizeRequest(Class byte, Drawable Id, Width uint16, Height uint16) // Request QueryExtension // size: pad((8 + pad((int(NameLen) * 1)))) -type QueryExtensionCookie cookie +type QueryExtensionCookie struct { + *cookie +} func (c *Conn) QueryExtension(NameLen uint16, Name string) QueryExtensionCookie { cookie := c.newCookie(true, true) - c.newRequest(queryExtensionRequest(NameLen, Name), cookie) - return QueryExtensionCookie(cookie) + c.newRequest(c.queryExtensionRequest(NameLen, Name), cookie) + return QueryExtensionCookie{cookie} } func (c *Conn) QueryExtensionUnchecked(NameLen uint16, Name string) QueryExtensionCookie { cookie := c.newCookie(false, true) - c.newRequest(queryExtensionRequest(NameLen, Name), cookie) - return QueryExtensionCookie(cookie) + c.newRequest(c.queryExtensionRequest(NameLen, Name), cookie) + return QueryExtensionCookie{cookie} } // Request reply for QueryExtension @@ -11811,10 +12899,13 @@ type QueryExtensionReply struct { // Waits and reads reply data from request QueryExtension func (cook QueryExtensionCookie) Reply() (*QueryExtensionReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return queryExtensionReply(buf), nil } @@ -11850,8 +12941,12 @@ func queryExtensionReply(buf []byte) *QueryExtensionReply { return v } +func (cook QueryExtensionCookie) Check() error { + return cook.check() +} + // Write request to wire for QueryExtension -func queryExtensionRequest(NameLen uint16, Name string) []byte { +func (c *Conn) queryExtensionRequest(NameLen uint16, Name string) []byte { size := pad((8 + pad((int(NameLen) * 1)))) b := 0 buf := make([]byte, size) @@ -11877,18 +12972,20 @@ func queryExtensionRequest(NameLen uint16, Name string) []byte { // Request ListExtensions // size: 4 -type ListExtensionsCookie cookie +type ListExtensionsCookie struct { + *cookie +} func (c *Conn) ListExtensions() ListExtensionsCookie { cookie := c.newCookie(true, true) - c.newRequest(listExtensionsRequest(), cookie) - return ListExtensionsCookie(cookie) + c.newRequest(c.listExtensionsRequest(), cookie) + return ListExtensionsCookie{cookie} } func (c *Conn) ListExtensionsUnchecked() ListExtensionsCookie { cookie := c.newCookie(false, true) - c.newRequest(listExtensionsRequest(), cookie) - return ListExtensionsCookie(cookie) + c.newRequest(c.listExtensionsRequest(), cookie) + return ListExtensionsCookie{cookie} } // Request reply for ListExtensions @@ -11903,10 +13000,13 @@ type ListExtensionsReply struct { // Waits and reads reply data from request ListExtensions func (cook ListExtensionsCookie) Reply() (*ListExtensionsReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return listExtensionsReply(buf), nil } @@ -11932,8 +13032,12 @@ func listExtensionsReply(buf []byte) *ListExtensionsReply { return v } +func (cook ListExtensionsCookie) Check() error { + return cook.check() +} + // Write request to wire for ListExtensions -func listExtensionsRequest() []byte { +func (c *Conn) listExtensionsRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -11941,28 +13045,38 @@ func listExtensionsRequest() []byte { buf[b] = 99 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request ChangeKeyboardMapping // size: pad((8 + pad(((int(KeycodeCount) * int(KeysymsPerKeycode)) * 4)))) -type ChangeKeyboardMappingCookie cookie +type ChangeKeyboardMappingCookie struct { + *cookie +} // Write request to wire for ChangeKeyboardMapping func (c *Conn) ChangeKeyboardMapping(KeycodeCount byte, FirstKeycode Keycode, KeysymsPerKeycode byte, Keysyms []Keysym) ChangeKeyboardMappingCookie { cookie := c.newCookie(false, false) - c.newRequest(changeKeyboardMappingRequest(KeycodeCount, FirstKeycode, KeysymsPerKeycode, Keysyms), cookie) - return ChangeKeyboardMappingCookie(cookie) + c.newRequest(c.changeKeyboardMappingRequest(KeycodeCount, FirstKeycode, KeysymsPerKeycode, Keysyms), cookie) + return ChangeKeyboardMappingCookie{cookie} } func (c *Conn) ChangeKeyboardMappingChecked(KeycodeCount byte, FirstKeycode Keycode, KeysymsPerKeycode byte, Keysyms []Keysym) ChangeKeyboardMappingCookie { cookie := c.newCookie(true, false) - c.newRequest(changeKeyboardMappingRequest(KeycodeCount, FirstKeycode, KeysymsPerKeycode, Keysyms), cookie) - return ChangeKeyboardMappingCookie(cookie) + c.newRequest(c.changeKeyboardMappingRequest(KeycodeCount, FirstKeycode, KeysymsPerKeycode, Keysyms), cookie) + return ChangeKeyboardMappingCookie{cookie} +} + +func (cook ChangeKeyboardMappingCookie) Check() error { + return cook.check() } // Write request to wire for ChangeKeyboardMapping -func changeKeyboardMappingRequest(KeycodeCount byte, FirstKeycode Keycode, KeysymsPerKeycode byte, Keysyms []Keysym) []byte { +func (c *Conn) changeKeyboardMappingRequest(KeycodeCount byte, FirstKeycode Keycode, KeysymsPerKeycode byte, Keysyms []Keysym) []byte { size := pad((8 + pad(((int(KeycodeCount) * int(KeysymsPerKeycode)) * 4)))) b := 0 buf := make([]byte, size) @@ -11995,18 +13109,20 @@ func changeKeyboardMappingRequest(KeycodeCount byte, FirstKeycode Keycode, Keysy // Request GetKeyboardMapping // size: 8 -type GetKeyboardMappingCookie cookie +type GetKeyboardMappingCookie struct { + *cookie +} func (c *Conn) GetKeyboardMapping(FirstKeycode Keycode, Count byte) GetKeyboardMappingCookie { cookie := c.newCookie(true, true) - c.newRequest(getKeyboardMappingRequest(FirstKeycode, Count), cookie) - return GetKeyboardMappingCookie(cookie) + c.newRequest(c.getKeyboardMappingRequest(FirstKeycode, Count), cookie) + return GetKeyboardMappingCookie{cookie} } func (c *Conn) GetKeyboardMappingUnchecked(FirstKeycode Keycode, Count byte) GetKeyboardMappingCookie { cookie := c.newCookie(false, true) - c.newRequest(getKeyboardMappingRequest(FirstKeycode, Count), cookie) - return GetKeyboardMappingCookie(cookie) + c.newRequest(c.getKeyboardMappingRequest(FirstKeycode, Count), cookie) + return GetKeyboardMappingCookie{cookie} } // Request reply for GetKeyboardMapping @@ -12021,10 +13137,13 @@ type GetKeyboardMappingReply struct { // Waits and reads reply data from request GetKeyboardMapping func (cook GetKeyboardMappingCookie) Reply() (*GetKeyboardMappingReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getKeyboardMappingReply(buf), nil } @@ -12054,8 +13173,12 @@ func getKeyboardMappingReply(buf []byte) *GetKeyboardMappingReply { return v } +func (cook GetKeyboardMappingCookie) Check() error { + return cook.check() +} + // Write request to wire for GetKeyboardMapping -func getKeyboardMappingRequest(FirstKeycode Keycode, Count byte) []byte { +func (c *Conn) getKeyboardMappingRequest(FirstKeycode Keycode, Count byte) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -12079,23 +13202,29 @@ func getKeyboardMappingRequest(FirstKeycode Keycode, Count byte) []byte { // Request ChangeKeyboardControl // size: pad((4 + (4 + pad((4 * popCount(int(ValueMask))))))) -type ChangeKeyboardControlCookie cookie +type ChangeKeyboardControlCookie struct { + *cookie +} // Write request to wire for ChangeKeyboardControl func (c *Conn) ChangeKeyboardControl(ValueMask uint32, ValueList []uint32) ChangeKeyboardControlCookie { cookie := c.newCookie(false, false) - c.newRequest(changeKeyboardControlRequest(ValueMask, ValueList), cookie) - return ChangeKeyboardControlCookie(cookie) + c.newRequest(c.changeKeyboardControlRequest(ValueMask, ValueList), cookie) + return ChangeKeyboardControlCookie{cookie} } func (c *Conn) ChangeKeyboardControlChecked(ValueMask uint32, ValueList []uint32) ChangeKeyboardControlCookie { cookie := c.newCookie(true, false) - c.newRequest(changeKeyboardControlRequest(ValueMask, ValueList), cookie) - return ChangeKeyboardControlCookie(cookie) + c.newRequest(c.changeKeyboardControlRequest(ValueMask, ValueList), cookie) + return ChangeKeyboardControlCookie{cookie} +} + +func (cook ChangeKeyboardControlCookie) Check() error { + return cook.check() } // Write request to wire for ChangeKeyboardControl -func changeKeyboardControlRequest(ValueMask uint32, ValueList []uint32) []byte { +func (c *Conn) changeKeyboardControlRequest(ValueMask uint32, ValueList []uint32) []byte { size := pad((4 + (4 + pad((4 * popCount(int(ValueMask))))))) b := 0 buf := make([]byte, size) @@ -12121,18 +13250,20 @@ func changeKeyboardControlRequest(ValueMask uint32, ValueList []uint32) []byte { // Request GetKeyboardControl // size: 4 -type GetKeyboardControlCookie cookie +type GetKeyboardControlCookie struct { + *cookie +} func (c *Conn) GetKeyboardControl() GetKeyboardControlCookie { cookie := c.newCookie(true, true) - c.newRequest(getKeyboardControlRequest(), cookie) - return GetKeyboardControlCookie(cookie) + c.newRequest(c.getKeyboardControlRequest(), cookie) + return GetKeyboardControlCookie{cookie} } func (c *Conn) GetKeyboardControlUnchecked() GetKeyboardControlCookie { cookie := c.newCookie(false, true) - c.newRequest(getKeyboardControlRequest(), cookie) - return GetKeyboardControlCookie(cookie) + c.newRequest(c.getKeyboardControlRequest(), cookie) + return GetKeyboardControlCookie{cookie} } // Request reply for GetKeyboardControl @@ -12152,10 +13283,13 @@ type GetKeyboardControlReply struct { // Waits and reads reply data from request GetKeyboardControl func (cook GetKeyboardControlCookie) Reply() (*GetKeyboardControlReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getKeyboardControlReply(buf), nil } @@ -12197,8 +13331,12 @@ func getKeyboardControlReply(buf []byte) *GetKeyboardControlReply { return v } +func (cook GetKeyboardControlCookie) Check() error { + return cook.check() +} + // Write request to wire for GetKeyboardControl -func getKeyboardControlRequest() []byte { +func (c *Conn) getKeyboardControlRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -12206,28 +13344,38 @@ func getKeyboardControlRequest() []byte { buf[b] = 103 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request Bell // size: 4 -type BellCookie cookie +type BellCookie struct { + *cookie +} // Write request to wire for Bell func (c *Conn) Bell(Percent int8) BellCookie { cookie := c.newCookie(false, false) - c.newRequest(bellRequest(Percent), cookie) - return BellCookie(cookie) + c.newRequest(c.bellRequest(Percent), cookie) + return BellCookie{cookie} } func (c *Conn) BellChecked(Percent int8) BellCookie { cookie := c.newCookie(true, false) - c.newRequest(bellRequest(Percent), cookie) - return BellCookie(cookie) + c.newRequest(c.bellRequest(Percent), cookie) + return BellCookie{cookie} +} + +func (cook BellCookie) Check() error { + return cook.check() } // Write request to wire for Bell -func bellRequest(Percent int8) []byte { +func (c *Conn) bellRequest(Percent int8) []byte { size := 4 b := 0 buf := make([]byte, size) @@ -12238,28 +13386,37 @@ func bellRequest(Percent int8) []byte { buf[b] = byte(Percent) b += 1 + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request ChangePointerControl // size: 12 -type ChangePointerControlCookie cookie +type ChangePointerControlCookie struct { + *cookie +} // Write request to wire for ChangePointerControl func (c *Conn) ChangePointerControl(AccelerationNumerator int16, AccelerationDenominator int16, Threshold int16, DoAcceleration bool, DoThreshold bool) ChangePointerControlCookie { cookie := c.newCookie(false, false) - c.newRequest(changePointerControlRequest(AccelerationNumerator, AccelerationDenominator, Threshold, DoAcceleration, DoThreshold), cookie) - return ChangePointerControlCookie(cookie) + c.newRequest(c.changePointerControlRequest(AccelerationNumerator, AccelerationDenominator, Threshold, DoAcceleration, DoThreshold), cookie) + return ChangePointerControlCookie{cookie} } func (c *Conn) ChangePointerControlChecked(AccelerationNumerator int16, AccelerationDenominator int16, Threshold int16, DoAcceleration bool, DoThreshold bool) ChangePointerControlCookie { cookie := c.newCookie(true, false) - c.newRequest(changePointerControlRequest(AccelerationNumerator, AccelerationDenominator, Threshold, DoAcceleration, DoThreshold), cookie) - return ChangePointerControlCookie(cookie) + c.newRequest(c.changePointerControlRequest(AccelerationNumerator, AccelerationDenominator, Threshold, DoAcceleration, DoThreshold), cookie) + return ChangePointerControlCookie{cookie} +} + +func (cook ChangePointerControlCookie) Check() error { + return cook.check() } // Write request to wire for ChangePointerControl -func changePointerControlRequest(AccelerationNumerator int16, AccelerationDenominator int16, Threshold int16, DoAcceleration bool, DoThreshold bool) []byte { +func (c *Conn) changePointerControlRequest(AccelerationNumerator int16, AccelerationDenominator int16, Threshold int16, DoAcceleration bool, DoThreshold bool) []byte { size := 12 b := 0 buf := make([]byte, size) @@ -12300,18 +13457,20 @@ func changePointerControlRequest(AccelerationNumerator int16, AccelerationDenomi // Request GetPointerControl // size: 4 -type GetPointerControlCookie cookie +type GetPointerControlCookie struct { + *cookie +} func (c *Conn) GetPointerControl() GetPointerControlCookie { cookie := c.newCookie(true, true) - c.newRequest(getPointerControlRequest(), cookie) - return GetPointerControlCookie(cookie) + c.newRequest(c.getPointerControlRequest(), cookie) + return GetPointerControlCookie{cookie} } func (c *Conn) GetPointerControlUnchecked() GetPointerControlCookie { cookie := c.newCookie(false, true) - c.newRequest(getPointerControlRequest(), cookie) - return GetPointerControlCookie(cookie) + c.newRequest(c.getPointerControlRequest(), cookie) + return GetPointerControlCookie{cookie} } // Request reply for GetPointerControl @@ -12328,10 +13487,13 @@ type GetPointerControlReply struct { // Waits and reads reply data from request GetPointerControl func (cook GetPointerControlCookie) Reply() (*GetPointerControlReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getPointerControlReply(buf), nil } @@ -12362,8 +13524,12 @@ func getPointerControlReply(buf []byte) *GetPointerControlReply { return v } +func (cook GetPointerControlCookie) Check() error { + return cook.check() +} + // Write request to wire for GetPointerControl -func getPointerControlRequest() []byte { +func (c *Conn) getPointerControlRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -12371,28 +13537,38 @@ func getPointerControlRequest() []byte { buf[b] = 106 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request SetScreenSaver // size: 12 -type SetScreenSaverCookie cookie +type SetScreenSaverCookie struct { + *cookie +} // Write request to wire for SetScreenSaver func (c *Conn) SetScreenSaver(Timeout int16, Interval int16, PreferBlanking byte, AllowExposures byte) SetScreenSaverCookie { cookie := c.newCookie(false, false) - c.newRequest(setScreenSaverRequest(Timeout, Interval, PreferBlanking, AllowExposures), cookie) - return SetScreenSaverCookie(cookie) + c.newRequest(c.setScreenSaverRequest(Timeout, Interval, PreferBlanking, AllowExposures), cookie) + return SetScreenSaverCookie{cookie} } func (c *Conn) SetScreenSaverChecked(Timeout int16, Interval int16, PreferBlanking byte, AllowExposures byte) SetScreenSaverCookie { cookie := c.newCookie(true, false) - c.newRequest(setScreenSaverRequest(Timeout, Interval, PreferBlanking, AllowExposures), cookie) - return SetScreenSaverCookie(cookie) + c.newRequest(c.setScreenSaverRequest(Timeout, Interval, PreferBlanking, AllowExposures), cookie) + return SetScreenSaverCookie{cookie} +} + +func (cook SetScreenSaverCookie) Check() error { + return cook.check() } // Write request to wire for SetScreenSaver -func setScreenSaverRequest(Timeout int16, Interval int16, PreferBlanking byte, AllowExposures byte) []byte { +func (c *Conn) setScreenSaverRequest(Timeout int16, Interval int16, PreferBlanking byte, AllowExposures byte) []byte { size := 12 b := 0 buf := make([]byte, size) @@ -12422,18 +13598,20 @@ func setScreenSaverRequest(Timeout int16, Interval int16, PreferBlanking byte, A // Request GetScreenSaver // size: 4 -type GetScreenSaverCookie cookie +type GetScreenSaverCookie struct { + *cookie +} func (c *Conn) GetScreenSaver() GetScreenSaverCookie { cookie := c.newCookie(true, true) - c.newRequest(getScreenSaverRequest(), cookie) - return GetScreenSaverCookie(cookie) + c.newRequest(c.getScreenSaverRequest(), cookie) + return GetScreenSaverCookie{cookie} } func (c *Conn) GetScreenSaverUnchecked() GetScreenSaverCookie { cookie := c.newCookie(false, true) - c.newRequest(getScreenSaverRequest(), cookie) - return GetScreenSaverCookie(cookie) + c.newRequest(c.getScreenSaverRequest(), cookie) + return GetScreenSaverCookie{cookie} } // Request reply for GetScreenSaver @@ -12451,10 +13629,13 @@ type GetScreenSaverReply struct { // Waits and reads reply data from request GetScreenSaver func (cook GetScreenSaverCookie) Reply() (*GetScreenSaverReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getScreenSaverReply(buf), nil } @@ -12488,8 +13669,12 @@ func getScreenSaverReply(buf []byte) *GetScreenSaverReply { return v } +func (cook GetScreenSaverCookie) Check() error { + return cook.check() +} + // Write request to wire for GetScreenSaver -func getScreenSaverRequest() []byte { +func (c *Conn) getScreenSaverRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -12497,28 +13682,38 @@ func getScreenSaverRequest() []byte { buf[b] = 108 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request ChangeHosts // size: pad((8 + pad((int(AddressLen) * 1)))) -type ChangeHostsCookie cookie +type ChangeHostsCookie struct { + *cookie +} // Write request to wire for ChangeHosts func (c *Conn) ChangeHosts(Mode byte, Family byte, AddressLen uint16, Address []byte) ChangeHostsCookie { cookie := c.newCookie(false, false) - c.newRequest(changeHostsRequest(Mode, Family, AddressLen, Address), cookie) - return ChangeHostsCookie(cookie) + c.newRequest(c.changeHostsRequest(Mode, Family, AddressLen, Address), cookie) + return ChangeHostsCookie{cookie} } func (c *Conn) ChangeHostsChecked(Mode byte, Family byte, AddressLen uint16, Address []byte) ChangeHostsCookie { cookie := c.newCookie(true, false) - c.newRequest(changeHostsRequest(Mode, Family, AddressLen, Address), cookie) - return ChangeHostsCookie(cookie) + c.newRequest(c.changeHostsRequest(Mode, Family, AddressLen, Address), cookie) + return ChangeHostsCookie{cookie} +} + +func (cook ChangeHostsCookie) Check() error { + return cook.check() } // Write request to wire for ChangeHosts -func changeHostsRequest(Mode byte, Family byte, AddressLen uint16, Address []byte) []byte { +func (c *Conn) changeHostsRequest(Mode byte, Family byte, AddressLen uint16, Address []byte) []byte { size := pad((8 + pad((int(AddressLen) * 1)))) b := 0 buf := make([]byte, size) @@ -12548,18 +13743,20 @@ func changeHostsRequest(Mode byte, Family byte, AddressLen uint16, Address []byt // Request ListHosts // size: 4 -type ListHostsCookie cookie +type ListHostsCookie struct { + *cookie +} func (c *Conn) ListHosts() ListHostsCookie { cookie := c.newCookie(true, true) - c.newRequest(listHostsRequest(), cookie) - return ListHostsCookie(cookie) + c.newRequest(c.listHostsRequest(), cookie) + return ListHostsCookie{cookie} } func (c *Conn) ListHostsUnchecked() ListHostsCookie { cookie := c.newCookie(false, true) - c.newRequest(listHostsRequest(), cookie) - return ListHostsCookie(cookie) + c.newRequest(c.listHostsRequest(), cookie) + return ListHostsCookie{cookie} } // Request reply for ListHosts @@ -12575,10 +13772,13 @@ type ListHostsReply struct { // Waits and reads reply data from request ListHosts func (cook ListHostsCookie) Reply() (*ListHostsReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return listHostsReply(buf), nil } @@ -12607,8 +13807,12 @@ func listHostsReply(buf []byte) *ListHostsReply { return v } +func (cook ListHostsCookie) Check() error { + return cook.check() +} + // Write request to wire for ListHosts -func listHostsRequest() []byte { +func (c *Conn) listHostsRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -12616,28 +13820,38 @@ func listHostsRequest() []byte { buf[b] = 110 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request SetAccessControl // size: 4 -type SetAccessControlCookie cookie +type SetAccessControlCookie struct { + *cookie +} // Write request to wire for SetAccessControl func (c *Conn) SetAccessControl(Mode byte) SetAccessControlCookie { cookie := c.newCookie(false, false) - c.newRequest(setAccessControlRequest(Mode), cookie) - return SetAccessControlCookie(cookie) + c.newRequest(c.setAccessControlRequest(Mode), cookie) + return SetAccessControlCookie{cookie} } func (c *Conn) SetAccessControlChecked(Mode byte) SetAccessControlCookie { cookie := c.newCookie(true, false) - c.newRequest(setAccessControlRequest(Mode), cookie) - return SetAccessControlCookie(cookie) + c.newRequest(c.setAccessControlRequest(Mode), cookie) + return SetAccessControlCookie{cookie} +} + +func (cook SetAccessControlCookie) Check() error { + return cook.check() } // Write request to wire for SetAccessControl -func setAccessControlRequest(Mode byte) []byte { +func (c *Conn) setAccessControlRequest(Mode byte) []byte { size := 4 b := 0 buf := make([]byte, size) @@ -12648,28 +13862,37 @@ func setAccessControlRequest(Mode byte) []byte { buf[b] = Mode b += 1 + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request SetCloseDownMode // size: 4 -type SetCloseDownModeCookie cookie +type SetCloseDownModeCookie struct { + *cookie +} // Write request to wire for SetCloseDownMode func (c *Conn) SetCloseDownMode(Mode byte) SetCloseDownModeCookie { cookie := c.newCookie(false, false) - c.newRequest(setCloseDownModeRequest(Mode), cookie) - return SetCloseDownModeCookie(cookie) + c.newRequest(c.setCloseDownModeRequest(Mode), cookie) + return SetCloseDownModeCookie{cookie} } func (c *Conn) SetCloseDownModeChecked(Mode byte) SetCloseDownModeCookie { cookie := c.newCookie(true, false) - c.newRequest(setCloseDownModeRequest(Mode), cookie) - return SetCloseDownModeCookie(cookie) + c.newRequest(c.setCloseDownModeRequest(Mode), cookie) + return SetCloseDownModeCookie{cookie} +} + +func (cook SetCloseDownModeCookie) Check() error { + return cook.check() } // Write request to wire for SetCloseDownMode -func setCloseDownModeRequest(Mode byte) []byte { +func (c *Conn) setCloseDownModeRequest(Mode byte) []byte { size := 4 b := 0 buf := make([]byte, size) @@ -12680,28 +13903,37 @@ func setCloseDownModeRequest(Mode byte) []byte { buf[b] = Mode b += 1 + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request KillClient // size: 8 -type KillClientCookie cookie +type KillClientCookie struct { + *cookie +} // Write request to wire for KillClient func (c *Conn) KillClient(Resource uint32) KillClientCookie { cookie := c.newCookie(false, false) - c.newRequest(killClientRequest(Resource), cookie) - return KillClientCookie(cookie) + c.newRequest(c.killClientRequest(Resource), cookie) + return KillClientCookie{cookie} } func (c *Conn) KillClientChecked(Resource uint32) KillClientCookie { cookie := c.newCookie(true, false) - c.newRequest(killClientRequest(Resource), cookie) - return KillClientCookie(cookie) + c.newRequest(c.killClientRequest(Resource), cookie) + return KillClientCookie{cookie} +} + +func (cook KillClientCookie) Check() error { + return cook.check() } // Write request to wire for KillClient -func killClientRequest(Resource uint32) []byte { +func (c *Conn) killClientRequest(Resource uint32) []byte { size := 8 b := 0 buf := make([]byte, size) @@ -12722,23 +13954,29 @@ func killClientRequest(Resource uint32) []byte { // Request RotateProperties // size: pad((12 + pad((int(AtomsLen) * 4)))) -type RotatePropertiesCookie cookie +type RotatePropertiesCookie struct { + *cookie +} // Write request to wire for RotateProperties func (c *Conn) RotateProperties(Window Id, AtomsLen uint16, Delta int16, Atoms []Id) RotatePropertiesCookie { cookie := c.newCookie(false, false) - c.newRequest(rotatePropertiesRequest(Window, AtomsLen, Delta, Atoms), cookie) - return RotatePropertiesCookie(cookie) + c.newRequest(c.rotatePropertiesRequest(Window, AtomsLen, Delta, Atoms), cookie) + return RotatePropertiesCookie{cookie} } func (c *Conn) RotatePropertiesChecked(Window Id, AtomsLen uint16, Delta int16, Atoms []Id) RotatePropertiesCookie { cookie := c.newCookie(true, false) - c.newRequest(rotatePropertiesRequest(Window, AtomsLen, Delta, Atoms), cookie) - return RotatePropertiesCookie(cookie) + c.newRequest(c.rotatePropertiesRequest(Window, AtomsLen, Delta, Atoms), cookie) + return RotatePropertiesCookie{cookie} +} + +func (cook RotatePropertiesCookie) Check() error { + return cook.check() } // Write request to wire for RotateProperties -func rotatePropertiesRequest(Window Id, AtomsLen uint16, Delta int16, Atoms []Id) []byte { +func (c *Conn) rotatePropertiesRequest(Window Id, AtomsLen uint16, Delta int16, Atoms []Id) []byte { size := pad((12 + pad((int(AtomsLen) * 4)))) b := 0 buf := make([]byte, size) @@ -12771,23 +14009,29 @@ func rotatePropertiesRequest(Window Id, AtomsLen uint16, Delta int16, Atoms []Id // Request ForceScreenSaver // size: 4 -type ForceScreenSaverCookie cookie +type ForceScreenSaverCookie struct { + *cookie +} // Write request to wire for ForceScreenSaver func (c *Conn) ForceScreenSaver(Mode byte) ForceScreenSaverCookie { cookie := c.newCookie(false, false) - c.newRequest(forceScreenSaverRequest(Mode), cookie) - return ForceScreenSaverCookie(cookie) + c.newRequest(c.forceScreenSaverRequest(Mode), cookie) + return ForceScreenSaverCookie{cookie} } func (c *Conn) ForceScreenSaverChecked(Mode byte) ForceScreenSaverCookie { cookie := c.newCookie(true, false) - c.newRequest(forceScreenSaverRequest(Mode), cookie) - return ForceScreenSaverCookie(cookie) + c.newRequest(c.forceScreenSaverRequest(Mode), cookie) + return ForceScreenSaverCookie{cookie} +} + +func (cook ForceScreenSaverCookie) Check() error { + return cook.check() } // Write request to wire for ForceScreenSaver -func forceScreenSaverRequest(Mode byte) []byte { +func (c *Conn) forceScreenSaverRequest(Mode byte) []byte { size := 4 b := 0 buf := make([]byte, size) @@ -12798,23 +14042,28 @@ func forceScreenSaverRequest(Mode byte) []byte { buf[b] = Mode b += 1 + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request SetPointerMapping // size: pad((4 + pad((int(MapLen) * 1)))) -type SetPointerMappingCookie cookie +type SetPointerMappingCookie struct { + *cookie +} func (c *Conn) SetPointerMapping(MapLen byte, Map []byte) SetPointerMappingCookie { cookie := c.newCookie(true, true) - c.newRequest(setPointerMappingRequest(MapLen, Map), cookie) - return SetPointerMappingCookie(cookie) + c.newRequest(c.setPointerMappingRequest(MapLen, Map), cookie) + return SetPointerMappingCookie{cookie} } func (c *Conn) SetPointerMappingUnchecked(MapLen byte, Map []byte) SetPointerMappingCookie { cookie := c.newCookie(false, true) - c.newRequest(setPointerMappingRequest(MapLen, Map), cookie) - return SetPointerMappingCookie(cookie) + c.newRequest(c.setPointerMappingRequest(MapLen, Map), cookie) + return SetPointerMappingCookie{cookie} } // Request reply for SetPointerMapping @@ -12827,10 +14076,13 @@ type SetPointerMappingReply struct { // Waits and reads reply data from request SetPointerMapping func (cook SetPointerMappingCookie) Reply() (*SetPointerMappingReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return setPointerMappingReply(buf), nil } @@ -12842,11 +14094,21 @@ func setPointerMappingReply(buf []byte) *SetPointerMappingReply { v.Status = buf[b] b += 1 + v.Sequence = Get16(buf[b:]) + b += 2 + + v.Length = Get32(buf[b:]) // 4-byte units + b += 4 + return v } +func (cook SetPointerMappingCookie) Check() error { + return cook.check() +} + // Write request to wire for SetPointerMapping -func setPointerMappingRequest(MapLen byte, Map []byte) []byte { +func (c *Conn) setPointerMappingRequest(MapLen byte, Map []byte) []byte { size := pad((4 + pad((int(MapLen) * 1)))) b := 0 buf := make([]byte, size) @@ -12868,18 +14130,20 @@ func setPointerMappingRequest(MapLen byte, Map []byte) []byte { // Request GetPointerMapping // size: 4 -type GetPointerMappingCookie cookie +type GetPointerMappingCookie struct { + *cookie +} func (c *Conn) GetPointerMapping() GetPointerMappingCookie { cookie := c.newCookie(true, true) - c.newRequest(getPointerMappingRequest(), cookie) - return GetPointerMappingCookie(cookie) + c.newRequest(c.getPointerMappingRequest(), cookie) + return GetPointerMappingCookie{cookie} } func (c *Conn) GetPointerMappingUnchecked() GetPointerMappingCookie { cookie := c.newCookie(false, true) - c.newRequest(getPointerMappingRequest(), cookie) - return GetPointerMappingCookie(cookie) + c.newRequest(c.getPointerMappingRequest(), cookie) + return GetPointerMappingCookie{cookie} } // Request reply for GetPointerMapping @@ -12894,10 +14158,13 @@ type GetPointerMappingReply struct { // Waits and reads reply data from request GetPointerMapping func (cook GetPointerMappingCookie) Reply() (*GetPointerMappingReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getPointerMappingReply(buf), nil } @@ -12924,8 +14191,12 @@ func getPointerMappingReply(buf []byte) *GetPointerMappingReply { return v } +func (cook GetPointerMappingCookie) Check() error { + return cook.check() +} + // Write request to wire for GetPointerMapping -func getPointerMappingRequest() []byte { +func (c *Conn) getPointerMappingRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -12933,23 +14204,29 @@ func getPointerMappingRequest() []byte { buf[b] = 117 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request SetModifierMapping // size: pad((4 + pad(((int(KeycodesPerModifier) * 8) * 1)))) -type SetModifierMappingCookie cookie +type SetModifierMappingCookie struct { + *cookie +} func (c *Conn) SetModifierMapping(KeycodesPerModifier byte, Keycodes []Keycode) SetModifierMappingCookie { cookie := c.newCookie(true, true) - c.newRequest(setModifierMappingRequest(KeycodesPerModifier, Keycodes), cookie) - return SetModifierMappingCookie(cookie) + c.newRequest(c.setModifierMappingRequest(KeycodesPerModifier, Keycodes), cookie) + return SetModifierMappingCookie{cookie} } func (c *Conn) SetModifierMappingUnchecked(KeycodesPerModifier byte, Keycodes []Keycode) SetModifierMappingCookie { cookie := c.newCookie(false, true) - c.newRequest(setModifierMappingRequest(KeycodesPerModifier, Keycodes), cookie) - return SetModifierMappingCookie(cookie) + c.newRequest(c.setModifierMappingRequest(KeycodesPerModifier, Keycodes), cookie) + return SetModifierMappingCookie{cookie} } // Request reply for SetModifierMapping @@ -12962,10 +14239,13 @@ type SetModifierMappingReply struct { // Waits and reads reply data from request SetModifierMapping func (cook SetModifierMappingCookie) Reply() (*SetModifierMappingReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return setModifierMappingReply(buf), nil } @@ -12977,11 +14257,21 @@ func setModifierMappingReply(buf []byte) *SetModifierMappingReply { v.Status = buf[b] b += 1 + v.Sequence = Get16(buf[b:]) + b += 2 + + v.Length = Get32(buf[b:]) // 4-byte units + b += 4 + return v } +func (cook SetModifierMappingCookie) Check() error { + return cook.check() +} + // Write request to wire for SetModifierMapping -func setModifierMappingRequest(KeycodesPerModifier byte, Keycodes []Keycode) []byte { +func (c *Conn) setModifierMappingRequest(KeycodesPerModifier byte, Keycodes []Keycode) []byte { size := pad((4 + pad(((int(KeycodesPerModifier) * 8) * 1)))) b := 0 buf := make([]byte, size) @@ -13006,18 +14296,20 @@ func setModifierMappingRequest(KeycodesPerModifier byte, Keycodes []Keycode) []b // Request GetModifierMapping // size: 4 -type GetModifierMappingCookie cookie +type GetModifierMappingCookie struct { + *cookie +} func (c *Conn) GetModifierMapping() GetModifierMappingCookie { cookie := c.newCookie(true, true) - c.newRequest(getModifierMappingRequest(), cookie) - return GetModifierMappingCookie(cookie) + c.newRequest(c.getModifierMappingRequest(), cookie) + return GetModifierMappingCookie{cookie} } func (c *Conn) GetModifierMappingUnchecked() GetModifierMappingCookie { cookie := c.newCookie(false, true) - c.newRequest(getModifierMappingRequest(), cookie) - return GetModifierMappingCookie(cookie) + c.newRequest(c.getModifierMappingRequest(), cookie) + return GetModifierMappingCookie{cookie} } // Request reply for GetModifierMapping @@ -13032,10 +14324,13 @@ type GetModifierMappingReply struct { // Waits and reads reply data from request GetModifierMapping func (cook GetModifierMappingCookie) Reply() (*GetModifierMappingReply, error) { - buf, err := cookie(cook).reply() + buf, err := cook.reply() if err != nil { return nil, err } + if buf == nil { + return nil, nil + } return getModifierMappingReply(buf), nil } @@ -13065,8 +14360,12 @@ func getModifierMappingReply(buf []byte) *GetModifierMappingReply { return v } +func (cook GetModifierMappingCookie) Check() error { + return cook.check() +} + // Write request to wire for GetModifierMapping -func getModifierMappingRequest() []byte { +func (c *Conn) getModifierMappingRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -13074,28 +14373,38 @@ func getModifierMappingRequest() []byte { buf[b] = 119 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } // Request NoOperation // size: 4 -type NoOperationCookie cookie +type NoOperationCookie struct { + *cookie +} // Write request to wire for NoOperation func (c *Conn) NoOperation() NoOperationCookie { cookie := c.newCookie(false, false) - c.newRequest(noOperationRequest(), cookie) - return NoOperationCookie(cookie) + c.newRequest(c.noOperationRequest(), cookie) + return NoOperationCookie{cookie} } func (c *Conn) NoOperationChecked() NoOperationCookie { cookie := c.newCookie(true, false) - c.newRequest(noOperationRequest(), cookie) - return NoOperationCookie(cookie) + c.newRequest(c.noOperationRequest(), cookie) + return NoOperationCookie{cookie} +} + +func (cook NoOperationCookie) Check() error { + return cook.check() } // Write request to wire for NoOperation -func noOperationRequest() []byte { +func (c *Conn) noOperationRequest() []byte { size := 4 b := 0 buf := make([]byte, size) @@ -13103,5 +14412,9 @@ func noOperationRequest() []byte { buf[b] = 127 // request opcode b += 1 + b += 1 // padding + Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units + b += 2 + return buf } -- cgit v1.2.3-54-g00ecf