aboutsummaryrefslogtreecommitdiff
path: root/nexgb/auto_xfixes.go
diff options
context:
space:
mode:
Diffstat (limited to 'nexgb/auto_xfixes.go')
-rw-r--r--nexgb/auto_xfixes.go2139
1 files changed, 2139 insertions, 0 deletions
diff --git a/nexgb/auto_xfixes.go b/nexgb/auto_xfixes.go
new file mode 100644
index 0000000..9f1d105
--- /dev/null
+++ b/nexgb/auto_xfixes.go
@@ -0,0 +1,2139 @@
+package xgb
+
+/*
+ This file was generated by xfixes.xml on May 6 2012 3:00:44am EDT.
+ This file is automatically generated. Edit at your peril!
+*/
+
+// Imports are not necessary for XGB because everything is
+// in one package. They are still listed here for reference.
+// import "xproto"
+// import "render"
+// import "shape"
+
+// Skipping definition for base type 'Card8'
+
+// Skipping definition for base type 'Int16'
+
+// 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'
+
+// Skipping definition for base type 'Char'
+
+// Skipping definition for base type 'Card32'
+
+// Skipping definition for base type 'Double'
+
+// Skipping definition for base type 'Bool'
+
+// Skipping definition for base type 'Float'
+
+// Skipping definition for base type 'Id'
+
+const (
+ XfixesSaveSetModeInsert = 0
+ XfixesSaveSetModeDelete = 1
+)
+
+const (
+ XfixesSaveSetTargetNearest = 0
+ XfixesSaveSetTargetRoot = 1
+)
+
+const (
+ XfixesSaveSetMappingMap = 0
+ XfixesSaveSetMappingUnmap = 1
+)
+
+const (
+ XfixesSelectionEventSetSelectionOwner = 0
+ XfixesSelectionEventSelectionWindowDestroy = 1
+ XfixesSelectionEventSelectionClientClose = 2
+)
+
+const (
+ XfixesSelectionEventMaskSetSelectionOwner = 1
+ XfixesSelectionEventMaskSelectionWindowDestroy = 2
+ XfixesSelectionEventMaskSelectionClientClose = 4
+)
+
+const (
+ XfixesCursorNotifyDisplayCursor = 0
+)
+
+const (
+ XfixesCursorNotifyMaskDisplayCursor = 1
+)
+
+const (
+ XfixesRegionNone = 0
+)
+
+// Skipping resource definition of 'Region'
+
+// Event definition XfixesSelectionNotify (0)
+// Size: 32
+
+const XfixesSelectionNotify = 0
+
+type XfixesSelectionNotifyEvent struct {
+ Sequence uint16
+ Subtype byte
+ Window Id
+ Owner Id
+ Selection Id
+ Timestamp Timestamp
+ SelectionTimestamp Timestamp
+ // padding: 8 bytes
+}
+
+// Event read XfixesSelectionNotify
+func NewXfixesSelectionNotifyEvent(buf []byte) Event {
+ v := XfixesSelectionNotifyEvent{}
+ b := 1 // don't read event number
+
+ v.Subtype = buf[b]
+ b += 1
+
+ v.Sequence = Get16(buf[b:])
+ b += 2
+
+ v.Window = Id(Get32(buf[b:]))
+ b += 4
+
+ v.Owner = Id(Get32(buf[b:]))
+ b += 4
+
+ v.Selection = Id(Get32(buf[b:]))
+ b += 4
+
+ v.Timestamp = Timestamp(Get32(buf[b:]))
+ b += 4
+
+ v.SelectionTimestamp = Timestamp(Get32(buf[b:]))
+ b += 4
+
+ b += 8 // padding
+
+ return v
+}
+
+// Event write XfixesSelectionNotify
+func (v XfixesSelectionNotifyEvent) Bytes() []byte {
+ buf := make([]byte, 32)
+ b := 0
+
+ // write event number
+ buf[b] = 0
+ b += 1
+
+ buf[b] = v.Subtype
+ b += 1
+
+ b += 2 // skip sequence number
+
+ Put32(buf[b:], uint32(v.Window))
+ b += 4
+
+ Put32(buf[b:], uint32(v.Owner))
+ b += 4
+
+ Put32(buf[b:], uint32(v.Selection))
+ b += 4
+
+ Put32(buf[b:], uint32(v.Timestamp))
+ b += 4
+
+ Put32(buf[b:], uint32(v.SelectionTimestamp))
+ b += 4
+
+ b += 8 // padding
+
+ return buf
+}
+
+func (v XfixesSelectionNotifyEvent) ImplementsEvent() {}
+
+func (v XfixesSelectionNotifyEvent) SequenceId() uint16 {
+ return v.Sequence
+}
+
+func (v XfixesSelectionNotifyEvent) String() string {
+ fieldVals := make([]string, 0, 7)
+ fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence))
+ fieldVals = append(fieldVals, sprintf("Subtype: %d", v.Subtype))
+ fieldVals = append(fieldVals, sprintf("Window: %d", v.Window))
+ fieldVals = append(fieldVals, sprintf("Owner: %d", v.Owner))
+ fieldVals = append(fieldVals, sprintf("Selection: %d", v.Selection))
+ fieldVals = append(fieldVals, sprintf("Timestamp: %d", v.Timestamp))
+ fieldVals = append(fieldVals, sprintf("SelectionTimestamp: %d", v.SelectionTimestamp))
+ return "XfixesSelectionNotify {" + stringsJoin(fieldVals, ", ") + "}"
+}
+
+func init() {
+ newEventFuncs[0] = NewXfixesSelectionNotifyEvent
+}
+
+// Event definition XfixesCursorNotify (1)
+// Size: 32
+
+const XfixesCursorNotify = 1
+
+type XfixesCursorNotifyEvent struct {
+ Sequence uint16
+ Subtype byte
+ Window Id
+ CursorSerial uint32
+ Timestamp Timestamp
+ Name Id
+ // padding: 12 bytes
+}
+
+// Event read XfixesCursorNotify
+func NewXfixesCursorNotifyEvent(buf []byte) Event {
+ v := XfixesCursorNotifyEvent{}
+ b := 1 // don't read event number
+
+ v.Subtype = buf[b]
+ b += 1
+
+ v.Sequence = Get16(buf[b:])
+ b += 2
+
+ v.Window = Id(Get32(buf[b:]))
+ b += 4
+
+ v.CursorSerial = Get32(buf[b:])
+ b += 4
+
+ v.Timestamp = Timestamp(Get32(buf[b:]))
+ b += 4
+
+ v.Name = Id(Get32(buf[b:]))
+ b += 4
+
+ b += 12 // padding
+
+ return v
+}
+
+// Event write XfixesCursorNotify
+func (v XfixesCursorNotifyEvent) Bytes() []byte {
+ buf := make([]byte, 32)
+ b := 0
+
+ // write event number
+ buf[b] = 1
+ b += 1
+
+ buf[b] = v.Subtype
+ b += 1
+
+ b += 2 // skip sequence number
+
+ Put32(buf[b:], uint32(v.Window))
+ b += 4
+
+ Put32(buf[b:], v.CursorSerial)
+ b += 4
+
+ Put32(buf[b:], uint32(v.Timestamp))
+ b += 4
+
+ Put32(buf[b:], uint32(v.Name))
+ b += 4
+
+ b += 12 // padding
+
+ return buf
+}
+
+func (v XfixesCursorNotifyEvent) ImplementsEvent() {}
+
+func (v XfixesCursorNotifyEvent) SequenceId() uint16 {
+ return v.Sequence
+}
+
+func (v XfixesCursorNotifyEvent) String() string {
+ fieldVals := make([]string, 0, 6)
+ fieldVals = append(fieldVals, sprintf("Sequence: %d", v.Sequence))
+ fieldVals = append(fieldVals, sprintf("Subtype: %d", v.Subtype))
+ fieldVals = append(fieldVals, sprintf("Window: %d", v.Window))
+ fieldVals = append(fieldVals, sprintf("CursorSerial: %d", v.CursorSerial))
+ fieldVals = append(fieldVals, sprintf("Timestamp: %d", v.Timestamp))
+ fieldVals = append(fieldVals, sprintf("Name: %d", v.Name))
+ return "XfixesCursorNotify {" + stringsJoin(fieldVals, ", ") + "}"
+}
+
+func init() {
+ newEventFuncs[1] = NewXfixesCursorNotifyEvent
+}
+
+// Error definition XfixesBadRegion (0)
+// Size: 32
+
+const BadXfixesBadRegion = 0
+
+type XfixesBadRegionError struct {
+ Sequence uint16
+ NiceName string
+}
+
+// Error read XfixesBadRegion
+func NewXfixesBadRegionError(buf []byte) Error {
+ v := XfixesBadRegionError{}
+ v.NiceName = "XfixesBadRegion"
+
+ b := 1 // skip error determinant
+ b += 1 // don't read error number
+
+ v.Sequence = Get16(buf[b:])
+ b += 2
+
+ return v
+}
+
+func (err XfixesBadRegionError) ImplementsError() {}
+
+func (err XfixesBadRegionError) SequenceId() uint16 {
+ return err.Sequence
+}
+
+func (err XfixesBadRegionError) BadId() Id {
+ return 0
+}
+
+func (err XfixesBadRegionError) Error() string {
+ fieldVals := make([]string, 0, 0)
+ fieldVals = append(fieldVals, "NiceName: "+err.NiceName)
+ fieldVals = append(fieldVals, sprintf("Sequence: %d", err.Sequence))
+ return "BadXfixesBadRegion {" + stringsJoin(fieldVals, ", ") + "}"
+}
+
+func init() {
+ newErrorFuncs[0] = NewXfixesBadRegionError
+}
+
+// Request XfixesQueryVersion
+// size: 12
+type XfixesQueryVersionCookie struct {
+ *cookie
+}
+
+func (c *Conn) XfixesQueryVersion(ClientMajorVersion uint32, ClientMinorVersion uint32) XfixesQueryVersionCookie {
+ cookie := c.newCookie(true, true)
+ c.newRequest(c.xfixesQueryVersionRequest(ClientMajorVersion, ClientMinorVersion), cookie)
+ return XfixesQueryVersionCookie{cookie}
+}
+
+func (c *Conn) XfixesQueryVersionUnchecked(ClientMajorVersion uint32, ClientMinorVersion uint32) XfixesQueryVersionCookie {
+ cookie := c.newCookie(false, true)
+ c.newRequest(c.xfixesQueryVersionRequest(ClientMajorVersion, ClientMinorVersion), cookie)
+ return XfixesQueryVersionCookie{cookie}
+}
+
+// Request reply for XfixesQueryVersion
+// size: 32
+type XfixesQueryVersionReply struct {
+ Sequence uint16
+ Length uint32
+ // padding: 1 bytes
+ MajorVersion uint32
+ MinorVersion uint32
+ // padding: 16 bytes
+}
+
+// Waits and reads reply data from request XfixesQueryVersion
+func (cook XfixesQueryVersionCookie) Reply() (*XfixesQueryVersionReply, error) {
+ buf, err := cook.reply()
+ if err != nil {
+ return nil, err
+ }
+ if buf == nil {
+ return nil, nil
+ }
+ return xfixesQueryVersionReply(buf), nil
+}
+
+// Read reply into structure from buffer for XfixesQueryVersion
+func xfixesQueryVersionReply(buf []byte) *XfixesQueryVersionReply {
+ v := new(XfixesQueryVersionReply)
+ b := 1 // skip reply determinant
+
+ b += 1 // padding
+
+ v.Sequence = Get16(buf[b:])
+ b += 2
+
+ v.Length = Get32(buf[b:]) // 4-byte units
+ b += 4
+
+ v.MajorVersion = Get32(buf[b:])
+ b += 4
+
+ v.MinorVersion = Get32(buf[b:])
+ b += 4
+
+ b += 16 // padding
+
+ return v
+}
+
+func (cook XfixesQueryVersionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesQueryVersion
+func (c *Conn) xfixesQueryVersionRequest(ClientMajorVersion uint32, ClientMinorVersion uint32) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 0 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], ClientMajorVersion)
+ b += 4
+
+ Put32(buf[b:], ClientMinorVersion)
+ b += 4
+
+ return buf
+}
+
+// Request XfixesChangeSaveSet
+// size: 12
+type XfixesChangeSaveSetCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesChangeSaveSet
+func (c *Conn) XfixesChangeSaveSet(Mode byte, Target byte, Map byte, Window Id) XfixesChangeSaveSetCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesChangeSaveSetRequest(Mode, Target, Map, Window), cookie)
+ return XfixesChangeSaveSetCookie{cookie}
+}
+
+func (c *Conn) XfixesChangeSaveSetChecked(Mode byte, Target byte, Map byte, Window Id) XfixesChangeSaveSetCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesChangeSaveSetRequest(Mode, Target, Map, Window), cookie)
+ return XfixesChangeSaveSetCookie{cookie}
+}
+
+func (cook XfixesChangeSaveSetCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesChangeSaveSet
+func (c *Conn) xfixesChangeSaveSetRequest(Mode byte, Target byte, Map byte, Window Id) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 1 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ buf[b] = Mode
+ b += 1
+
+ buf[b] = Target
+ b += 1
+
+ buf[b] = Map
+ b += 1
+
+ b += 1 // padding
+
+ Put32(buf[b:], uint32(Window))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesSelectSelectionInput
+// size: 16
+type XfixesSelectSelectionInputCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesSelectSelectionInput
+func (c *Conn) XfixesSelectSelectionInput(Window Id, Selection Id, EventMask uint32) XfixesSelectSelectionInputCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesSelectSelectionInputRequest(Window, Selection, EventMask), cookie)
+ return XfixesSelectSelectionInputCookie{cookie}
+}
+
+func (c *Conn) XfixesSelectSelectionInputChecked(Window Id, Selection Id, EventMask uint32) XfixesSelectSelectionInputCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesSelectSelectionInputRequest(Window, Selection, EventMask), cookie)
+ return XfixesSelectSelectionInputCookie{cookie}
+}
+
+func (cook XfixesSelectSelectionInputCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesSelectSelectionInput
+func (c *Conn) xfixesSelectSelectionInputRequest(Window Id, Selection Id, EventMask uint32) []byte {
+ size := 16
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 2 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Window))
+ b += 4
+
+ Put32(buf[b:], uint32(Selection))
+ b += 4
+
+ Put32(buf[b:], EventMask)
+ b += 4
+
+ return buf
+}
+
+// Request XfixesSelectCursorInput
+// size: 12
+type XfixesSelectCursorInputCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesSelectCursorInput
+func (c *Conn) XfixesSelectCursorInput(Window Id, EventMask uint32) XfixesSelectCursorInputCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesSelectCursorInputRequest(Window, EventMask), cookie)
+ return XfixesSelectCursorInputCookie{cookie}
+}
+
+func (c *Conn) XfixesSelectCursorInputChecked(Window Id, EventMask uint32) XfixesSelectCursorInputCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesSelectCursorInputRequest(Window, EventMask), cookie)
+ return XfixesSelectCursorInputCookie{cookie}
+}
+
+func (cook XfixesSelectCursorInputCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesSelectCursorInput
+func (c *Conn) xfixesSelectCursorInputRequest(Window Id, EventMask uint32) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 3 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Window))
+ b += 4
+
+ Put32(buf[b:], EventMask)
+ b += 4
+
+ return buf
+}
+
+// Request XfixesGetCursorImage
+// size: 4
+type XfixesGetCursorImageCookie struct {
+ *cookie
+}
+
+func (c *Conn) XfixesGetCursorImage() XfixesGetCursorImageCookie {
+ cookie := c.newCookie(true, true)
+ c.newRequest(c.xfixesGetCursorImageRequest(), cookie)
+ return XfixesGetCursorImageCookie{cookie}
+}
+
+func (c *Conn) XfixesGetCursorImageUnchecked() XfixesGetCursorImageCookie {
+ cookie := c.newCookie(false, true)
+ c.newRequest(c.xfixesGetCursorImageRequest(), cookie)
+ return XfixesGetCursorImageCookie{cookie}
+}
+
+// Request reply for XfixesGetCursorImage
+// size: (32 + pad(((int(Width) * int(Height)) * 4)))
+type XfixesGetCursorImageReply struct {
+ Sequence uint16
+ Length uint32
+ // padding: 1 bytes
+ X int16
+ Y int16
+ Width uint16
+ Height uint16
+ Xhot uint16
+ Yhot uint16
+ CursorSerial uint32
+ // padding: 8 bytes
+ CursorImage []uint32 // size: pad(((int(Width) * int(Height)) * 4))
+}
+
+// Waits and reads reply data from request XfixesGetCursorImage
+func (cook XfixesGetCursorImageCookie) Reply() (*XfixesGetCursorImageReply, error) {
+ buf, err := cook.reply()
+ if err != nil {
+ return nil, err
+ }
+ if buf == nil {
+ return nil, nil
+ }
+ return xfixesGetCursorImageReply(buf), nil
+}
+
+// Read reply into structure from buffer for XfixesGetCursorImage
+func xfixesGetCursorImageReply(buf []byte) *XfixesGetCursorImageReply {
+ v := new(XfixesGetCursorImageReply)
+ b := 1 // skip reply determinant
+
+ b += 1 // padding
+
+ v.Sequence = Get16(buf[b:])
+ b += 2
+
+ v.Length = Get32(buf[b:]) // 4-byte units
+ b += 4
+
+ v.X = int16(Get16(buf[b:]))
+ b += 2
+
+ v.Y = int16(Get16(buf[b:]))
+ b += 2
+
+ v.Width = Get16(buf[b:])
+ b += 2
+
+ v.Height = Get16(buf[b:])
+ b += 2
+
+ v.Xhot = Get16(buf[b:])
+ b += 2
+
+ v.Yhot = Get16(buf[b:])
+ b += 2
+
+ v.CursorSerial = Get32(buf[b:])
+ b += 4
+
+ b += 8 // padding
+
+ v.CursorImage = make([]uint32, (int(v.Width) * int(v.Height)))
+ for i := 0; i < int((int(v.Width) * int(v.Height))); i++ {
+ v.CursorImage[i] = Get32(buf[b:])
+ b += 4
+ }
+ b = pad(b)
+
+ return v
+}
+
+func (cook XfixesGetCursorImageCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesGetCursorImage
+func (c *Conn) xfixesGetCursorImageRequest() []byte {
+ size := 4
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 4 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ return buf
+}
+
+// Request XfixesCreateRegion
+// size: pad((8 + pad((len(Rectangles) * 8))))
+type XfixesCreateRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesCreateRegion
+func (c *Conn) XfixesCreateRegion(Region Id, Rectangles []Rectangle) XfixesCreateRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesCreateRegionRequest(Region, Rectangles), cookie)
+ return XfixesCreateRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesCreateRegionChecked(Region Id, Rectangles []Rectangle) XfixesCreateRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesCreateRegionRequest(Region, Rectangles), cookie)
+ return XfixesCreateRegionCookie{cookie}
+}
+
+func (cook XfixesCreateRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesCreateRegion
+func (c *Conn) xfixesCreateRegionRequest(Region Id, Rectangles []Rectangle) []byte {
+ size := pad((8 + pad((len(Rectangles) * 8))))
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 5 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ b += RectangleListBytes(buf[b:], Rectangles)
+
+ return buf
+}
+
+// Request XfixesCreateRegionFromBitmap
+// size: 12
+type XfixesCreateRegionFromBitmapCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesCreateRegionFromBitmap
+func (c *Conn) XfixesCreateRegionFromBitmap(Region Id, Bitmap Id) XfixesCreateRegionFromBitmapCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesCreateRegionFromBitmapRequest(Region, Bitmap), cookie)
+ return XfixesCreateRegionFromBitmapCookie{cookie}
+}
+
+func (c *Conn) XfixesCreateRegionFromBitmapChecked(Region Id, Bitmap Id) XfixesCreateRegionFromBitmapCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesCreateRegionFromBitmapRequest(Region, Bitmap), cookie)
+ return XfixesCreateRegionFromBitmapCookie{cookie}
+}
+
+func (cook XfixesCreateRegionFromBitmapCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesCreateRegionFromBitmap
+func (c *Conn) xfixesCreateRegionFromBitmapRequest(Region Id, Bitmap Id) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 6 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ Put32(buf[b:], uint32(Bitmap))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesCreateRegionFromWindow
+// size: 16
+type XfixesCreateRegionFromWindowCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesCreateRegionFromWindow
+func (c *Conn) XfixesCreateRegionFromWindow(Region Id, Window Id, Kind ShapeKind) XfixesCreateRegionFromWindowCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesCreateRegionFromWindowRequest(Region, Window, Kind), cookie)
+ return XfixesCreateRegionFromWindowCookie{cookie}
+}
+
+func (c *Conn) XfixesCreateRegionFromWindowChecked(Region Id, Window Id, Kind ShapeKind) XfixesCreateRegionFromWindowCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesCreateRegionFromWindowRequest(Region, Window, Kind), cookie)
+ return XfixesCreateRegionFromWindowCookie{cookie}
+}
+
+func (cook XfixesCreateRegionFromWindowCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesCreateRegionFromWindow
+func (c *Conn) xfixesCreateRegionFromWindowRequest(Region Id, Window Id, Kind ShapeKind) []byte {
+ size := 16
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 7 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ Put32(buf[b:], uint32(Window))
+ b += 4
+
+ buf[b] = byte(Kind)
+ b += 1
+
+ b += 3 // padding
+
+ return buf
+}
+
+// Request XfixesCreateRegionFromGC
+// size: 12
+type XfixesCreateRegionFromGCCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesCreateRegionFromGC
+func (c *Conn) XfixesCreateRegionFromGC(Region Id, Gc Id) XfixesCreateRegionFromGCCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesCreateRegionFromGCRequest(Region, Gc), cookie)
+ return XfixesCreateRegionFromGCCookie{cookie}
+}
+
+func (c *Conn) XfixesCreateRegionFromGCChecked(Region Id, Gc Id) XfixesCreateRegionFromGCCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesCreateRegionFromGCRequest(Region, Gc), cookie)
+ return XfixesCreateRegionFromGCCookie{cookie}
+}
+
+func (cook XfixesCreateRegionFromGCCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesCreateRegionFromGC
+func (c *Conn) xfixesCreateRegionFromGCRequest(Region Id, Gc Id) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 8 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ Put32(buf[b:], uint32(Gc))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesCreateRegionFromPicture
+// size: 12
+type XfixesCreateRegionFromPictureCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesCreateRegionFromPicture
+func (c *Conn) XfixesCreateRegionFromPicture(Region Id, Picture Id) XfixesCreateRegionFromPictureCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesCreateRegionFromPictureRequest(Region, Picture), cookie)
+ return XfixesCreateRegionFromPictureCookie{cookie}
+}
+
+func (c *Conn) XfixesCreateRegionFromPictureChecked(Region Id, Picture Id) XfixesCreateRegionFromPictureCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesCreateRegionFromPictureRequest(Region, Picture), cookie)
+ return XfixesCreateRegionFromPictureCookie{cookie}
+}
+
+func (cook XfixesCreateRegionFromPictureCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesCreateRegionFromPicture
+func (c *Conn) xfixesCreateRegionFromPictureRequest(Region Id, Picture Id) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 9 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ Put32(buf[b:], uint32(Picture))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesDestroyRegion
+// size: 8
+type XfixesDestroyRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesDestroyRegion
+func (c *Conn) XfixesDestroyRegion(Region Id) XfixesDestroyRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesDestroyRegionRequest(Region), cookie)
+ return XfixesDestroyRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesDestroyRegionChecked(Region Id) XfixesDestroyRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesDestroyRegionRequest(Region), cookie)
+ return XfixesDestroyRegionCookie{cookie}
+}
+
+func (cook XfixesDestroyRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesDestroyRegion
+func (c *Conn) xfixesDestroyRegionRequest(Region Id) []byte {
+ size := 8
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 10 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesSetRegion
+// size: pad((8 + pad((len(Rectangles) * 8))))
+type XfixesSetRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesSetRegion
+func (c *Conn) XfixesSetRegion(Region Id, Rectangles []Rectangle) XfixesSetRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesSetRegionRequest(Region, Rectangles), cookie)
+ return XfixesSetRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesSetRegionChecked(Region Id, Rectangles []Rectangle) XfixesSetRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesSetRegionRequest(Region, Rectangles), cookie)
+ return XfixesSetRegionCookie{cookie}
+}
+
+func (cook XfixesSetRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesSetRegion
+func (c *Conn) xfixesSetRegionRequest(Region Id, Rectangles []Rectangle) []byte {
+ size := pad((8 + pad((len(Rectangles) * 8))))
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 11 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ b += RectangleListBytes(buf[b:], Rectangles)
+
+ return buf
+}
+
+// Request XfixesCopyRegion
+// size: 12
+type XfixesCopyRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesCopyRegion
+func (c *Conn) XfixesCopyRegion(Source Id, Destination Id) XfixesCopyRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesCopyRegionRequest(Source, Destination), cookie)
+ return XfixesCopyRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesCopyRegionChecked(Source Id, Destination Id) XfixesCopyRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesCopyRegionRequest(Source, Destination), cookie)
+ return XfixesCopyRegionCookie{cookie}
+}
+
+func (cook XfixesCopyRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesCopyRegion
+func (c *Conn) xfixesCopyRegionRequest(Source Id, Destination Id) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 12 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Source))
+ b += 4
+
+ Put32(buf[b:], uint32(Destination))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesUnionRegion
+// size: 16
+type XfixesUnionRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesUnionRegion
+func (c *Conn) XfixesUnionRegion(Source1 Id, Source2 Id, Destination Id) XfixesUnionRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesUnionRegionRequest(Source1, Source2, Destination), cookie)
+ return XfixesUnionRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesUnionRegionChecked(Source1 Id, Source2 Id, Destination Id) XfixesUnionRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesUnionRegionRequest(Source1, Source2, Destination), cookie)
+ return XfixesUnionRegionCookie{cookie}
+}
+
+func (cook XfixesUnionRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesUnionRegion
+func (c *Conn) xfixesUnionRegionRequest(Source1 Id, Source2 Id, Destination Id) []byte {
+ size := 16
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 13 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Source1))
+ b += 4
+
+ Put32(buf[b:], uint32(Source2))
+ b += 4
+
+ Put32(buf[b:], uint32(Destination))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesIntersectRegion
+// size: 16
+type XfixesIntersectRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesIntersectRegion
+func (c *Conn) XfixesIntersectRegion(Source1 Id, Source2 Id, Destination Id) XfixesIntersectRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesIntersectRegionRequest(Source1, Source2, Destination), cookie)
+ return XfixesIntersectRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesIntersectRegionChecked(Source1 Id, Source2 Id, Destination Id) XfixesIntersectRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesIntersectRegionRequest(Source1, Source2, Destination), cookie)
+ return XfixesIntersectRegionCookie{cookie}
+}
+
+func (cook XfixesIntersectRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesIntersectRegion
+func (c *Conn) xfixesIntersectRegionRequest(Source1 Id, Source2 Id, Destination Id) []byte {
+ size := 16
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 14 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Source1))
+ b += 4
+
+ Put32(buf[b:], uint32(Source2))
+ b += 4
+
+ Put32(buf[b:], uint32(Destination))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesSubtractRegion
+// size: 16
+type XfixesSubtractRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesSubtractRegion
+func (c *Conn) XfixesSubtractRegion(Source1 Id, Source2 Id, Destination Id) XfixesSubtractRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesSubtractRegionRequest(Source1, Source2, Destination), cookie)
+ return XfixesSubtractRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesSubtractRegionChecked(Source1 Id, Source2 Id, Destination Id) XfixesSubtractRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesSubtractRegionRequest(Source1, Source2, Destination), cookie)
+ return XfixesSubtractRegionCookie{cookie}
+}
+
+func (cook XfixesSubtractRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesSubtractRegion
+func (c *Conn) xfixesSubtractRegionRequest(Source1 Id, Source2 Id, Destination Id) []byte {
+ size := 16
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 15 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Source1))
+ b += 4
+
+ Put32(buf[b:], uint32(Source2))
+ b += 4
+
+ Put32(buf[b:], uint32(Destination))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesInvertRegion
+// size: 20
+type XfixesInvertRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesInvertRegion
+func (c *Conn) XfixesInvertRegion(Source Id, Bounds Rectangle, Destination Id) XfixesInvertRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesInvertRegionRequest(Source, Bounds, Destination), cookie)
+ return XfixesInvertRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesInvertRegionChecked(Source Id, Bounds Rectangle, Destination Id) XfixesInvertRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesInvertRegionRequest(Source, Bounds, Destination), cookie)
+ return XfixesInvertRegionCookie{cookie}
+}
+
+func (cook XfixesInvertRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesInvertRegion
+func (c *Conn) xfixesInvertRegionRequest(Source Id, Bounds Rectangle, Destination Id) []byte {
+ size := 20
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 16 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Source))
+ b += 4
+
+ {
+ structBytes := Bounds.Bytes()
+ copy(buf[b:], structBytes)
+ b += pad(len(structBytes))
+ }
+
+ Put32(buf[b:], uint32(Destination))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesTranslateRegion
+// size: 12
+type XfixesTranslateRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesTranslateRegion
+func (c *Conn) XfixesTranslateRegion(Region Id, Dx int16, Dy int16) XfixesTranslateRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesTranslateRegionRequest(Region, Dx, Dy), cookie)
+ return XfixesTranslateRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesTranslateRegionChecked(Region Id, Dx int16, Dy int16) XfixesTranslateRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesTranslateRegionRequest(Region, Dx, Dy), cookie)
+ return XfixesTranslateRegionCookie{cookie}
+}
+
+func (cook XfixesTranslateRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesTranslateRegion
+func (c *Conn) xfixesTranslateRegionRequest(Region Id, Dx int16, Dy int16) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 17 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ Put16(buf[b:], uint16(Dx))
+ b += 2
+
+ Put16(buf[b:], uint16(Dy))
+ b += 2
+
+ return buf
+}
+
+// Request XfixesRegionExtents
+// size: 12
+type XfixesRegionExtentsCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesRegionExtents
+func (c *Conn) XfixesRegionExtents(Source Id, Destination Id) XfixesRegionExtentsCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesRegionExtentsRequest(Source, Destination), cookie)
+ return XfixesRegionExtentsCookie{cookie}
+}
+
+func (c *Conn) XfixesRegionExtentsChecked(Source Id, Destination Id) XfixesRegionExtentsCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesRegionExtentsRequest(Source, Destination), cookie)
+ return XfixesRegionExtentsCookie{cookie}
+}
+
+func (cook XfixesRegionExtentsCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesRegionExtents
+func (c *Conn) xfixesRegionExtentsRequest(Source Id, Destination Id) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 18 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Source))
+ b += 4
+
+ Put32(buf[b:], uint32(Destination))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesFetchRegion
+// size: 8
+type XfixesFetchRegionCookie struct {
+ *cookie
+}
+
+func (c *Conn) XfixesFetchRegion(Region Id) XfixesFetchRegionCookie {
+ cookie := c.newCookie(true, true)
+ c.newRequest(c.xfixesFetchRegionRequest(Region), cookie)
+ return XfixesFetchRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesFetchRegionUnchecked(Region Id) XfixesFetchRegionCookie {
+ cookie := c.newCookie(false, true)
+ c.newRequest(c.xfixesFetchRegionRequest(Region), cookie)
+ return XfixesFetchRegionCookie{cookie}
+}
+
+// Request reply for XfixesFetchRegion
+// size: (32 + pad(((int(Length) / 2) * 8)))
+type XfixesFetchRegionReply struct {
+ Sequence uint16
+ Length uint32
+ // padding: 1 bytes
+ Extents Rectangle
+ // padding: 16 bytes
+ Rectangles []Rectangle // size: pad(((int(Length) / 2) * 8))
+}
+
+// Waits and reads reply data from request XfixesFetchRegion
+func (cook XfixesFetchRegionCookie) Reply() (*XfixesFetchRegionReply, error) {
+ buf, err := cook.reply()
+ if err != nil {
+ return nil, err
+ }
+ if buf == nil {
+ return nil, nil
+ }
+ return xfixesFetchRegionReply(buf), nil
+}
+
+// Read reply into structure from buffer for XfixesFetchRegion
+func xfixesFetchRegionReply(buf []byte) *XfixesFetchRegionReply {
+ v := new(XfixesFetchRegionReply)
+ b := 1 // skip reply determinant
+
+ b += 1 // padding
+
+ v.Sequence = Get16(buf[b:])
+ b += 2
+
+ v.Length = Get32(buf[b:]) // 4-byte units
+ b += 4
+
+ v.Extents = Rectangle{}
+ b += ReadRectangle(buf[b:], &v.Extents)
+
+ b += 16 // padding
+
+ v.Rectangles = make([]Rectangle, (int(v.Length) / 2))
+ b += ReadRectangleList(buf[b:], v.Rectangles)
+
+ return v
+}
+
+func (cook XfixesFetchRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesFetchRegion
+func (c *Conn) xfixesFetchRegionRequest(Region Id) []byte {
+ size := 8
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 19 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesSetGCClipRegion
+// size: 16
+type XfixesSetGCClipRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesSetGCClipRegion
+func (c *Conn) XfixesSetGCClipRegion(Gc Id, Region Id, XOrigin int16, YOrigin int16) XfixesSetGCClipRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesSetGCClipRegionRequest(Gc, Region, XOrigin, YOrigin), cookie)
+ return XfixesSetGCClipRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesSetGCClipRegionChecked(Gc Id, Region Id, XOrigin int16, YOrigin int16) XfixesSetGCClipRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesSetGCClipRegionRequest(Gc, Region, XOrigin, YOrigin), cookie)
+ return XfixesSetGCClipRegionCookie{cookie}
+}
+
+func (cook XfixesSetGCClipRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesSetGCClipRegion
+func (c *Conn) xfixesSetGCClipRegionRequest(Gc Id, Region Id, XOrigin int16, YOrigin int16) []byte {
+ size := 16
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 20 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Gc))
+ b += 4
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ Put16(buf[b:], uint16(XOrigin))
+ b += 2
+
+ Put16(buf[b:], uint16(YOrigin))
+ b += 2
+
+ return buf
+}
+
+// Request XfixesSetWindowShapeRegion
+// size: 20
+type XfixesSetWindowShapeRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesSetWindowShapeRegion
+func (c *Conn) XfixesSetWindowShapeRegion(Dest Id, DestKind ShapeKind, XOffset int16, YOffset int16, Region Id) XfixesSetWindowShapeRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesSetWindowShapeRegionRequest(Dest, DestKind, XOffset, YOffset, Region), cookie)
+ return XfixesSetWindowShapeRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesSetWindowShapeRegionChecked(Dest Id, DestKind ShapeKind, XOffset int16, YOffset int16, Region Id) XfixesSetWindowShapeRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesSetWindowShapeRegionRequest(Dest, DestKind, XOffset, YOffset, Region), cookie)
+ return XfixesSetWindowShapeRegionCookie{cookie}
+}
+
+func (cook XfixesSetWindowShapeRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesSetWindowShapeRegion
+func (c *Conn) xfixesSetWindowShapeRegionRequest(Dest Id, DestKind ShapeKind, XOffset int16, YOffset int16, Region Id) []byte {
+ size := 20
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 21 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Dest))
+ b += 4
+
+ buf[b] = byte(DestKind)
+ b += 1
+
+ b += 3 // padding
+
+ Put16(buf[b:], uint16(XOffset))
+ b += 2
+
+ Put16(buf[b:], uint16(YOffset))
+ b += 2
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesSetPictureClipRegion
+// size: 16
+type XfixesSetPictureClipRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesSetPictureClipRegion
+func (c *Conn) XfixesSetPictureClipRegion(Picture Id, Region Id, XOrigin int16, YOrigin int16) XfixesSetPictureClipRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesSetPictureClipRegionRequest(Picture, Region, XOrigin, YOrigin), cookie)
+ return XfixesSetPictureClipRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesSetPictureClipRegionChecked(Picture Id, Region Id, XOrigin int16, YOrigin int16) XfixesSetPictureClipRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesSetPictureClipRegionRequest(Picture, Region, XOrigin, YOrigin), cookie)
+ return XfixesSetPictureClipRegionCookie{cookie}
+}
+
+func (cook XfixesSetPictureClipRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesSetPictureClipRegion
+func (c *Conn) xfixesSetPictureClipRegionRequest(Picture Id, Region Id, XOrigin int16, YOrigin int16) []byte {
+ size := 16
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 22 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Picture))
+ b += 4
+
+ Put32(buf[b:], uint32(Region))
+ b += 4
+
+ Put16(buf[b:], uint16(XOrigin))
+ b += 2
+
+ Put16(buf[b:], uint16(YOrigin))
+ b += 2
+
+ return buf
+}
+
+// Request XfixesSetCursorName
+// size: pad((12 + pad((int(Nbytes) * 1))))
+type XfixesSetCursorNameCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesSetCursorName
+func (c *Conn) XfixesSetCursorName(Cursor Id, Nbytes uint16, Name string) XfixesSetCursorNameCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesSetCursorNameRequest(Cursor, Nbytes, Name), cookie)
+ return XfixesSetCursorNameCookie{cookie}
+}
+
+func (c *Conn) XfixesSetCursorNameChecked(Cursor Id, Nbytes uint16, Name string) XfixesSetCursorNameCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesSetCursorNameRequest(Cursor, Nbytes, Name), cookie)
+ return XfixesSetCursorNameCookie{cookie}
+}
+
+func (cook XfixesSetCursorNameCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesSetCursorName
+func (c *Conn) xfixesSetCursorNameRequest(Cursor Id, Nbytes uint16, Name string) []byte {
+ size := pad((12 + pad((int(Nbytes) * 1))))
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 23 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Cursor))
+ b += 4
+
+ Put16(buf[b:], Nbytes)
+ b += 2
+
+ b += 2 // padding
+
+ copy(buf[b:], Name[:Nbytes])
+ b += pad(int(Nbytes))
+
+ return buf
+}
+
+// Request XfixesGetCursorName
+// size: 8
+type XfixesGetCursorNameCookie struct {
+ *cookie
+}
+
+func (c *Conn) XfixesGetCursorName(Cursor Id) XfixesGetCursorNameCookie {
+ cookie := c.newCookie(true, true)
+ c.newRequest(c.xfixesGetCursorNameRequest(Cursor), cookie)
+ return XfixesGetCursorNameCookie{cookie}
+}
+
+func (c *Conn) XfixesGetCursorNameUnchecked(Cursor Id) XfixesGetCursorNameCookie {
+ cookie := c.newCookie(false, true)
+ c.newRequest(c.xfixesGetCursorNameRequest(Cursor), cookie)
+ return XfixesGetCursorNameCookie{cookie}
+}
+
+// Request reply for XfixesGetCursorName
+// size: (32 + pad((int(Nbytes) * 1)))
+type XfixesGetCursorNameReply struct {
+ Sequence uint16
+ Length uint32
+ // padding: 1 bytes
+ Atom Id
+ Nbytes uint16
+ // padding: 18 bytes
+ Name string // size: pad((int(Nbytes) * 1))
+}
+
+// Waits and reads reply data from request XfixesGetCursorName
+func (cook XfixesGetCursorNameCookie) Reply() (*XfixesGetCursorNameReply, error) {
+ buf, err := cook.reply()
+ if err != nil {
+ return nil, err
+ }
+ if buf == nil {
+ return nil, nil
+ }
+ return xfixesGetCursorNameReply(buf), nil
+}
+
+// Read reply into structure from buffer for XfixesGetCursorName
+func xfixesGetCursorNameReply(buf []byte) *XfixesGetCursorNameReply {
+ v := new(XfixesGetCursorNameReply)
+ b := 1 // skip reply determinant
+
+ b += 1 // padding
+
+ v.Sequence = Get16(buf[b:])
+ b += 2
+
+ v.Length = Get32(buf[b:]) // 4-byte units
+ b += 4
+
+ v.Atom = Id(Get32(buf[b:]))
+ b += 4
+
+ v.Nbytes = Get16(buf[b:])
+ b += 2
+
+ b += 18 // padding
+
+ {
+ byteString := make([]byte, v.Nbytes)
+ copy(byteString[:v.Nbytes], buf[b:])
+ v.Name = string(byteString)
+ b += pad(int(v.Nbytes))
+ }
+
+ return v
+}
+
+func (cook XfixesGetCursorNameCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesGetCursorName
+func (c *Conn) xfixesGetCursorNameRequest(Cursor Id) []byte {
+ size := 8
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 24 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Cursor))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesGetCursorImageAndName
+// size: 4
+type XfixesGetCursorImageAndNameCookie struct {
+ *cookie
+}
+
+func (c *Conn) XfixesGetCursorImageAndName() XfixesGetCursorImageAndNameCookie {
+ cookie := c.newCookie(true, true)
+ c.newRequest(c.xfixesGetCursorImageAndNameRequest(), cookie)
+ return XfixesGetCursorImageAndNameCookie{cookie}
+}
+
+func (c *Conn) XfixesGetCursorImageAndNameUnchecked() XfixesGetCursorImageAndNameCookie {
+ cookie := c.newCookie(false, true)
+ c.newRequest(c.xfixesGetCursorImageAndNameRequest(), cookie)
+ return XfixesGetCursorImageAndNameCookie{cookie}
+}
+
+// Request reply for XfixesGetCursorImageAndName
+// size: ((32 + pad((int(Nbytes) * 1))) + pad(((int(Width) * int(Height)) * 4)))
+type XfixesGetCursorImageAndNameReply struct {
+ Sequence uint16
+ Length uint32
+ // padding: 1 bytes
+ X int16
+ Y int16
+ Width uint16
+ Height uint16
+ Xhot uint16
+ Yhot uint16
+ CursorSerial uint32
+ CursorAtom Id
+ Nbytes uint16
+ // padding: 2 bytes
+ Name string // size: pad((int(Nbytes) * 1))
+ CursorImage []uint32 // size: pad(((int(Width) * int(Height)) * 4))
+}
+
+// Waits and reads reply data from request XfixesGetCursorImageAndName
+func (cook XfixesGetCursorImageAndNameCookie) Reply() (*XfixesGetCursorImageAndNameReply, error) {
+ buf, err := cook.reply()
+ if err != nil {
+ return nil, err
+ }
+ if buf == nil {
+ return nil, nil
+ }
+ return xfixesGetCursorImageAndNameReply(buf), nil
+}
+
+// Read reply into structure from buffer for XfixesGetCursorImageAndName
+func xfixesGetCursorImageAndNameReply(buf []byte) *XfixesGetCursorImageAndNameReply {
+ v := new(XfixesGetCursorImageAndNameReply)
+ b := 1 // skip reply determinant
+
+ b += 1 // padding
+
+ v.Sequence = Get16(buf[b:])
+ b += 2
+
+ v.Length = Get32(buf[b:]) // 4-byte units
+ b += 4
+
+ v.X = int16(Get16(buf[b:]))
+ b += 2
+
+ v.Y = int16(Get16(buf[b:]))
+ b += 2
+
+ v.Width = Get16(buf[b:])
+ b += 2
+
+ v.Height = Get16(buf[b:])
+ b += 2
+
+ v.Xhot = Get16(buf[b:])
+ b += 2
+
+ v.Yhot = Get16(buf[b:])
+ b += 2
+
+ v.CursorSerial = Get32(buf[b:])
+ b += 4
+
+ v.CursorAtom = Id(Get32(buf[b:]))
+ b += 4
+
+ v.Nbytes = Get16(buf[b:])
+ b += 2
+
+ b += 2 // padding
+
+ {
+ byteString := make([]byte, v.Nbytes)
+ copy(byteString[:v.Nbytes], buf[b:])
+ v.Name = string(byteString)
+ b += pad(int(v.Nbytes))
+ }
+
+ v.CursorImage = make([]uint32, (int(v.Width) * int(v.Height)))
+ for i := 0; i < int((int(v.Width) * int(v.Height))); i++ {
+ v.CursorImage[i] = Get32(buf[b:])
+ b += 4
+ }
+ b = pad(b)
+
+ return v
+}
+
+func (cook XfixesGetCursorImageAndNameCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesGetCursorImageAndName
+func (c *Conn) xfixesGetCursorImageAndNameRequest() []byte {
+ size := 4
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 25 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ return buf
+}
+
+// Request XfixesChangeCursor
+// size: 12
+type XfixesChangeCursorCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesChangeCursor
+func (c *Conn) XfixesChangeCursor(Source Id, Destination Id) XfixesChangeCursorCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesChangeCursorRequest(Source, Destination), cookie)
+ return XfixesChangeCursorCookie{cookie}
+}
+
+func (c *Conn) XfixesChangeCursorChecked(Source Id, Destination Id) XfixesChangeCursorCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesChangeCursorRequest(Source, Destination), cookie)
+ return XfixesChangeCursorCookie{cookie}
+}
+
+func (cook XfixesChangeCursorCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesChangeCursor
+func (c *Conn) xfixesChangeCursorRequest(Source Id, Destination Id) []byte {
+ size := 12
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 26 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Source))
+ b += 4
+
+ Put32(buf[b:], uint32(Destination))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesChangeCursorByName
+// size: pad((12 + pad((int(Nbytes) * 1))))
+type XfixesChangeCursorByNameCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesChangeCursorByName
+func (c *Conn) XfixesChangeCursorByName(Src Id, Nbytes uint16, Name string) XfixesChangeCursorByNameCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesChangeCursorByNameRequest(Src, Nbytes, Name), cookie)
+ return XfixesChangeCursorByNameCookie{cookie}
+}
+
+func (c *Conn) XfixesChangeCursorByNameChecked(Src Id, Nbytes uint16, Name string) XfixesChangeCursorByNameCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesChangeCursorByNameRequest(Src, Nbytes, Name), cookie)
+ return XfixesChangeCursorByNameCookie{cookie}
+}
+
+func (cook XfixesChangeCursorByNameCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesChangeCursorByName
+func (c *Conn) xfixesChangeCursorByNameRequest(Src Id, Nbytes uint16, Name string) []byte {
+ size := pad((12 + pad((int(Nbytes) * 1))))
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 27 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Src))
+ b += 4
+
+ Put16(buf[b:], Nbytes)
+ b += 2
+
+ b += 2 // padding
+
+ copy(buf[b:], Name[:Nbytes])
+ b += pad(int(Nbytes))
+
+ return buf
+}
+
+// Request XfixesExpandRegion
+// size: 20
+type XfixesExpandRegionCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesExpandRegion
+func (c *Conn) XfixesExpandRegion(Source Id, Destination Id, Left uint16, Right uint16, Top uint16, Bottom uint16) XfixesExpandRegionCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesExpandRegionRequest(Source, Destination, Left, Right, Top, Bottom), cookie)
+ return XfixesExpandRegionCookie{cookie}
+}
+
+func (c *Conn) XfixesExpandRegionChecked(Source Id, Destination Id, Left uint16, Right uint16, Top uint16, Bottom uint16) XfixesExpandRegionCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesExpandRegionRequest(Source, Destination, Left, Right, Top, Bottom), cookie)
+ return XfixesExpandRegionCookie{cookie}
+}
+
+func (cook XfixesExpandRegionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesExpandRegion
+func (c *Conn) xfixesExpandRegionRequest(Source Id, Destination Id, Left uint16, Right uint16, Top uint16, Bottom uint16) []byte {
+ size := 20
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 28 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Source))
+ b += 4
+
+ Put32(buf[b:], uint32(Destination))
+ b += 4
+
+ Put16(buf[b:], Left)
+ b += 2
+
+ Put16(buf[b:], Right)
+ b += 2
+
+ Put16(buf[b:], Top)
+ b += 2
+
+ Put16(buf[b:], Bottom)
+ b += 2
+
+ return buf
+}
+
+// Request XfixesHideCursor
+// size: 8
+type XfixesHideCursorCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesHideCursor
+func (c *Conn) XfixesHideCursor(Window Id) XfixesHideCursorCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesHideCursorRequest(Window), cookie)
+ return XfixesHideCursorCookie{cookie}
+}
+
+func (c *Conn) XfixesHideCursorChecked(Window Id) XfixesHideCursorCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesHideCursorRequest(Window), cookie)
+ return XfixesHideCursorCookie{cookie}
+}
+
+func (cook XfixesHideCursorCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesHideCursor
+func (c *Conn) xfixesHideCursorRequest(Window Id) []byte {
+ size := 8
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 29 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Window))
+ b += 4
+
+ return buf
+}
+
+// Request XfixesShowCursor
+// size: 8
+type XfixesShowCursorCookie struct {
+ *cookie
+}
+
+// Write request to wire for XfixesShowCursor
+func (c *Conn) XfixesShowCursor(Window Id) XfixesShowCursorCookie {
+ cookie := c.newCookie(false, false)
+ c.newRequest(c.xfixesShowCursorRequest(Window), cookie)
+ return XfixesShowCursorCookie{cookie}
+}
+
+func (c *Conn) XfixesShowCursorChecked(Window Id) XfixesShowCursorCookie {
+ cookie := c.newCookie(true, false)
+ c.newRequest(c.xfixesShowCursorRequest(Window), cookie)
+ return XfixesShowCursorCookie{cookie}
+}
+
+func (cook XfixesShowCursorCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for XfixesShowCursor
+func (c *Conn) xfixesShowCursorRequest(Window Id) []byte {
+ size := 8
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["XFIXES"]
+ b += 1
+
+ buf[b] = 30 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put32(buf[b:], uint32(Window))
+ b += 4
+
+ return buf
+}