Update to latest xproto XML.
This commit is contained in:
		@@ -2,7 +2,7 @@
 | 
			
		||||
package damage
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
	This file was generated by damage.xml on Jun 5 2012 12:11:59am EDT.
 | 
			
		||||
	This file was generated by damage.xml on Aug 11 2013 8:39:43pm EDT.
 | 
			
		||||
	This file is automatically generated. Edit at your peril!
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
@@ -41,36 +41,51 @@ func init() {
 | 
			
		||||
	xgb.NewExtErrorFuncs["DAMAGE"] = make(map[int]xgb.NewErrorFun)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Int16'
 | 
			
		||||
// BadBadDamage is the error number for a BadBadDamage.
 | 
			
		||||
const BadBadDamage = 0
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Int32'
 | 
			
		||||
type BadDamageError struct {
 | 
			
		||||
	Sequence uint16
 | 
			
		||||
	NiceName string
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Void'
 | 
			
		||||
// BadDamageErrorNew constructs a BadDamageError value that implements xgb.Error from a byte slice.
 | 
			
		||||
func BadDamageErrorNew(buf []byte) xgb.Error {
 | 
			
		||||
	v := BadDamageError{}
 | 
			
		||||
	v.NiceName = "BadDamage"
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Byte'
 | 
			
		||||
	b := 1 // skip error determinant
 | 
			
		||||
	b += 1 // don't read error number
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Int8'
 | 
			
		||||
	v.Sequence = xgb.Get16(buf[b:])
 | 
			
		||||
	b += 2
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Card16'
 | 
			
		||||
	return v
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Char'
 | 
			
		||||
// SequenceId returns the sequence id attached to the BadBadDamage error.
 | 
			
		||||
// This is mostly used internally.
 | 
			
		||||
func (err BadDamageError) SequenceId() uint16 {
 | 
			
		||||
	return err.Sequence
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Card32'
 | 
			
		||||
// BadId returns the 'BadValue' number if one exists for the BadBadDamage error. If no bad value exists, 0 is returned.
 | 
			
		||||
func (err BadDamageError) BadId() uint32 {
 | 
			
		||||
	return 0
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Double'
 | 
			
		||||
// Error returns a rudimentary string representation of the BadBadDamage error.
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Bool'
 | 
			
		||||
func (err BadDamageError) Error() string {
 | 
			
		||||
	fieldVals := make([]string, 0, 0)
 | 
			
		||||
	fieldVals = append(fieldVals, "NiceName: "+err.NiceName)
 | 
			
		||||
	fieldVals = append(fieldVals, xgb.Sprintf("Sequence: %d", err.Sequence))
 | 
			
		||||
	return "BadBadDamage {" + xgb.StringsJoin(fieldVals, ", ") + "}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Float'
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Card8'
 | 
			
		||||
 | 
			
		||||
const (
 | 
			
		||||
	ReportLevelRawRectangles   = 0
 | 
			
		||||
	ReportLevelDeltaRectangles = 1
 | 
			
		||||
	ReportLevelBoundingBox     = 2
 | 
			
		||||
	ReportLevelNonEmpty        = 3
 | 
			
		||||
)
 | 
			
		||||
func init() {
 | 
			
		||||
	xgb.NewExtErrorFuncs["DAMAGE"][0] = BadDamageErrorNew
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type Damage uint32
 | 
			
		||||
 | 
			
		||||
@@ -184,128 +199,73 @@ func init() {
 | 
			
		||||
	xgb.NewExtEventFuncs["DAMAGE"][0] = NotifyEventNew
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// BadBadDamage is the error number for a BadBadDamage.
 | 
			
		||||
const BadBadDamage = 0
 | 
			
		||||
const (
 | 
			
		||||
	ReportLevelRawRectangles   = 0
 | 
			
		||||
	ReportLevelDeltaRectangles = 1
 | 
			
		||||
	ReportLevelBoundingBox     = 2
 | 
			
		||||
	ReportLevelNonEmpty        = 3
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
type BadDamageError struct {
 | 
			
		||||
	Sequence uint16
 | 
			
		||||
	NiceName string
 | 
			
		||||
}
 | 
			
		||||
// Skipping definition for base type 'Bool'
 | 
			
		||||
 | 
			
		||||
// BadDamageErrorNew constructs a BadDamageError value that implements xgb.Error from a byte slice.
 | 
			
		||||
func BadDamageErrorNew(buf []byte) xgb.Error {
 | 
			
		||||
	v := BadDamageError{}
 | 
			
		||||
	v.NiceName = "BadDamage"
 | 
			
		||||
// Skipping definition for base type 'Byte'
 | 
			
		||||
 | 
			
		||||
	b := 1 // skip error determinant
 | 
			
		||||
	b += 1 // don't read error number
 | 
			
		||||
// Skipping definition for base type 'Card8'
 | 
			
		||||
 | 
			
		||||
	v.Sequence = xgb.Get16(buf[b:])
 | 
			
		||||
	b += 2
 | 
			
		||||
// Skipping definition for base type 'Char'
 | 
			
		||||
 | 
			
		||||
	return v
 | 
			
		||||
}
 | 
			
		||||
// Skipping definition for base type 'Void'
 | 
			
		||||
 | 
			
		||||
// SequenceId returns the sequence id attached to the BadBadDamage error.
 | 
			
		||||
// This is mostly used internally.
 | 
			
		||||
func (err BadDamageError) SequenceId() uint16 {
 | 
			
		||||
	return err.Sequence
 | 
			
		||||
}
 | 
			
		||||
// Skipping definition for base type 'Double'
 | 
			
		||||
 | 
			
		||||
// BadId returns the 'BadValue' number if one exists for the BadBadDamage error. If no bad value exists, 0 is returned.
 | 
			
		||||
func (err BadDamageError) BadId() uint32 {
 | 
			
		||||
	return 0
 | 
			
		||||
}
 | 
			
		||||
// Skipping definition for base type 'Float'
 | 
			
		||||
 | 
			
		||||
// Error returns a rudimentary string representation of the BadBadDamage error.
 | 
			
		||||
// Skipping definition for base type 'Int16'
 | 
			
		||||
 | 
			
		||||
func (err BadDamageError) Error() string {
 | 
			
		||||
	fieldVals := make([]string, 0, 0)
 | 
			
		||||
	fieldVals = append(fieldVals, "NiceName: "+err.NiceName)
 | 
			
		||||
	fieldVals = append(fieldVals, xgb.Sprintf("Sequence: %d", err.Sequence))
 | 
			
		||||
	return "BadBadDamage {" + xgb.StringsJoin(fieldVals, ", ") + "}"
 | 
			
		||||
}
 | 
			
		||||
// Skipping definition for base type 'Int32'
 | 
			
		||||
 | 
			
		||||
func init() {
 | 
			
		||||
	xgb.NewExtErrorFuncs["DAMAGE"][0] = BadDamageErrorNew
 | 
			
		||||
}
 | 
			
		||||
// Skipping definition for base type 'Int8'
 | 
			
		||||
 | 
			
		||||
// QueryVersionCookie is a cookie used only for QueryVersion requests.
 | 
			
		||||
type QueryVersionCookie struct {
 | 
			
		||||
// Skipping definition for base type 'Card16'
 | 
			
		||||
 | 
			
		||||
// Skipping definition for base type 'Card32'
 | 
			
		||||
 | 
			
		||||
// AddCookie is a cookie used only for Add requests.
 | 
			
		||||
type AddCookie struct {
 | 
			
		||||
	*xgb.Cookie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// QueryVersion sends a checked request.
 | 
			
		||||
// If an error occurs, it will be returned with the reply by calling QueryVersionCookie.Reply()
 | 
			
		||||
func QueryVersion(c *xgb.Conn, ClientMajorVersion uint32, ClientMinorVersion uint32) QueryVersionCookie {
 | 
			
		||||
	if _, ok := c.Extensions["DAMAGE"]; !ok {
 | 
			
		||||
		panic("Cannot issue request 'QueryVersion' using the uninitialized extension 'DAMAGE'. damage.Init(connObj) must be called first.")
 | 
			
		||||
	}
 | 
			
		||||
	cookie := c.NewCookie(true, true)
 | 
			
		||||
	c.NewRequest(queryVersionRequest(c, ClientMajorVersion, ClientMinorVersion), cookie)
 | 
			
		||||
	return QueryVersionCookie{cookie}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// QueryVersionUnchecked sends an unchecked request.
 | 
			
		||||
// Add sends an unchecked request.
 | 
			
		||||
// If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.
 | 
			
		||||
func QueryVersionUnchecked(c *xgb.Conn, ClientMajorVersion uint32, ClientMinorVersion uint32) QueryVersionCookie {
 | 
			
		||||
func Add(c *xgb.Conn, Drawable xproto.Drawable, Region xfixes.Region) AddCookie {
 | 
			
		||||
	if _, ok := c.Extensions["DAMAGE"]; !ok {
 | 
			
		||||
		panic("Cannot issue request 'QueryVersion' using the uninitialized extension 'DAMAGE'. damage.Init(connObj) must be called first.")
 | 
			
		||||
		panic("Cannot issue request 'Add' using the uninitialized extension 'DAMAGE'. damage.Init(connObj) must be called first.")
 | 
			
		||||
	}
 | 
			
		||||
	cookie := c.NewCookie(false, true)
 | 
			
		||||
	c.NewRequest(queryVersionRequest(c, ClientMajorVersion, ClientMinorVersion), cookie)
 | 
			
		||||
	return QueryVersionCookie{cookie}
 | 
			
		||||
	cookie := c.NewCookie(false, false)
 | 
			
		||||
	c.NewRequest(addRequest(c, Drawable, Region), cookie)
 | 
			
		||||
	return AddCookie{cookie}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// QueryVersionReply represents the data returned from a QueryVersion request.
 | 
			
		||||
type QueryVersionReply struct {
 | 
			
		||||
	Sequence uint16 // sequence number of the request for this reply
 | 
			
		||||
	Length   uint32 // number of bytes in this reply
 | 
			
		||||
	// padding: 1 bytes
 | 
			
		||||
	MajorVersion uint32
 | 
			
		||||
	MinorVersion uint32
 | 
			
		||||
	// padding: 16 bytes
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Reply blocks and returns the reply data for a QueryVersion request.
 | 
			
		||||
func (cook QueryVersionCookie) Reply() (*QueryVersionReply, error) {
 | 
			
		||||
	buf, err := cook.Cookie.Reply()
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
// AddChecked sends a checked request.
 | 
			
		||||
// If an error occurs, it can be retrieved using AddCookie.Check()
 | 
			
		||||
func AddChecked(c *xgb.Conn, Drawable xproto.Drawable, Region xfixes.Region) AddCookie {
 | 
			
		||||
	if _, ok := c.Extensions["DAMAGE"]; !ok {
 | 
			
		||||
		panic("Cannot issue request 'Add' using the uninitialized extension 'DAMAGE'. damage.Init(connObj) must be called first.")
 | 
			
		||||
	}
 | 
			
		||||
	if buf == nil {
 | 
			
		||||
		return nil, nil
 | 
			
		||||
	}
 | 
			
		||||
	return queryVersionReply(buf), nil
 | 
			
		||||
	cookie := c.NewCookie(true, false)
 | 
			
		||||
	c.NewRequest(addRequest(c, Drawable, Region), cookie)
 | 
			
		||||
	return AddCookie{cookie}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// queryVersionReply reads a byte slice into a QueryVersionReply value.
 | 
			
		||||
func queryVersionReply(buf []byte) *QueryVersionReply {
 | 
			
		||||
	v := new(QueryVersionReply)
 | 
			
		||||
	b := 1 // skip reply determinant
 | 
			
		||||
 | 
			
		||||
	b += 1 // padding
 | 
			
		||||
 | 
			
		||||
	v.Sequence = xgb.Get16(buf[b:])
 | 
			
		||||
	b += 2
 | 
			
		||||
 | 
			
		||||
	v.Length = xgb.Get32(buf[b:]) // 4-byte units
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	v.MajorVersion = xgb.Get32(buf[b:])
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	v.MinorVersion = xgb.Get32(buf[b:])
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	b += 16 // padding
 | 
			
		||||
 | 
			
		||||
	return v
 | 
			
		||||
// Check returns an error if one occurred for checked requests that are not expecting a reply.
 | 
			
		||||
// This cannot be called for requests expecting a reply, nor for unchecked requests.
 | 
			
		||||
func (cook AddCookie) Check() error {
 | 
			
		||||
	return cook.Cookie.Check()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Write request to wire for QueryVersion
 | 
			
		||||
// queryVersionRequest writes a QueryVersion request to a byte slice.
 | 
			
		||||
func queryVersionRequest(c *xgb.Conn, ClientMajorVersion uint32, ClientMinorVersion uint32) []byte {
 | 
			
		||||
// Write request to wire for Add
 | 
			
		||||
// addRequest writes a Add request to a byte slice.
 | 
			
		||||
func addRequest(c *xgb.Conn, Drawable xproto.Drawable, Region xfixes.Region) []byte {
 | 
			
		||||
	size := 12
 | 
			
		||||
	b := 0
 | 
			
		||||
	buf := make([]byte, size)
 | 
			
		||||
@@ -313,16 +273,16 @@ func queryVersionRequest(c *xgb.Conn, ClientMajorVersion uint32, ClientMinorVers
 | 
			
		||||
	buf[b] = c.Extensions["DAMAGE"]
 | 
			
		||||
	b += 1
 | 
			
		||||
 | 
			
		||||
	buf[b] = 0 // request opcode
 | 
			
		||||
	buf[b] = 4 // request opcode
 | 
			
		||||
	b += 1
 | 
			
		||||
 | 
			
		||||
	xgb.Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
 | 
			
		||||
	b += 2
 | 
			
		||||
 | 
			
		||||
	xgb.Put32(buf[b:], ClientMajorVersion)
 | 
			
		||||
	xgb.Put32(buf[b:], uint32(Drawable))
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	xgb.Put32(buf[b:], ClientMinorVersion)
 | 
			
		||||
	xgb.Put32(buf[b:], uint32(Region))
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	return buf
 | 
			
		||||
@@ -446,6 +406,104 @@ func destroyRequest(c *xgb.Conn, Damage Damage) []byte {
 | 
			
		||||
	return buf
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// QueryVersionCookie is a cookie used only for QueryVersion requests.
 | 
			
		||||
type QueryVersionCookie struct {
 | 
			
		||||
	*xgb.Cookie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// QueryVersion sends a checked request.
 | 
			
		||||
// If an error occurs, it will be returned with the reply by calling QueryVersionCookie.Reply()
 | 
			
		||||
func QueryVersion(c *xgb.Conn, ClientMajorVersion uint32, ClientMinorVersion uint32) QueryVersionCookie {
 | 
			
		||||
	if _, ok := c.Extensions["DAMAGE"]; !ok {
 | 
			
		||||
		panic("Cannot issue request 'QueryVersion' using the uninitialized extension 'DAMAGE'. damage.Init(connObj) must be called first.")
 | 
			
		||||
	}
 | 
			
		||||
	cookie := c.NewCookie(true, true)
 | 
			
		||||
	c.NewRequest(queryVersionRequest(c, ClientMajorVersion, ClientMinorVersion), cookie)
 | 
			
		||||
	return QueryVersionCookie{cookie}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// QueryVersionUnchecked sends an unchecked request.
 | 
			
		||||
// If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.
 | 
			
		||||
func QueryVersionUnchecked(c *xgb.Conn, ClientMajorVersion uint32, ClientMinorVersion uint32) QueryVersionCookie {
 | 
			
		||||
	if _, ok := c.Extensions["DAMAGE"]; !ok {
 | 
			
		||||
		panic("Cannot issue request 'QueryVersion' using the uninitialized extension 'DAMAGE'. damage.Init(connObj) must be called first.")
 | 
			
		||||
	}
 | 
			
		||||
	cookie := c.NewCookie(false, true)
 | 
			
		||||
	c.NewRequest(queryVersionRequest(c, ClientMajorVersion, ClientMinorVersion), cookie)
 | 
			
		||||
	return QueryVersionCookie{cookie}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// QueryVersionReply represents the data returned from a QueryVersion request.
 | 
			
		||||
type QueryVersionReply struct {
 | 
			
		||||
	Sequence uint16 // sequence number of the request for this reply
 | 
			
		||||
	Length   uint32 // number of bytes in this reply
 | 
			
		||||
	// padding: 1 bytes
 | 
			
		||||
	MajorVersion uint32
 | 
			
		||||
	MinorVersion uint32
 | 
			
		||||
	// padding: 16 bytes
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Reply blocks and returns the reply data for a QueryVersion request.
 | 
			
		||||
func (cook QueryVersionCookie) Reply() (*QueryVersionReply, error) {
 | 
			
		||||
	buf, err := cook.Cookie.Reply()
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		return nil, err
 | 
			
		||||
	}
 | 
			
		||||
	if buf == nil {
 | 
			
		||||
		return nil, nil
 | 
			
		||||
	}
 | 
			
		||||
	return queryVersionReply(buf), nil
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// queryVersionReply reads a byte slice into a QueryVersionReply value.
 | 
			
		||||
func queryVersionReply(buf []byte) *QueryVersionReply {
 | 
			
		||||
	v := new(QueryVersionReply)
 | 
			
		||||
	b := 1 // skip reply determinant
 | 
			
		||||
 | 
			
		||||
	b += 1 // padding
 | 
			
		||||
 | 
			
		||||
	v.Sequence = xgb.Get16(buf[b:])
 | 
			
		||||
	b += 2
 | 
			
		||||
 | 
			
		||||
	v.Length = xgb.Get32(buf[b:]) // 4-byte units
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	v.MajorVersion = xgb.Get32(buf[b:])
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	v.MinorVersion = xgb.Get32(buf[b:])
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	b += 16 // padding
 | 
			
		||||
 | 
			
		||||
	return v
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Write request to wire for QueryVersion
 | 
			
		||||
// queryVersionRequest writes a QueryVersion request to a byte slice.
 | 
			
		||||
func queryVersionRequest(c *xgb.Conn, ClientMajorVersion uint32, ClientMinorVersion uint32) []byte {
 | 
			
		||||
	size := 12
 | 
			
		||||
	b := 0
 | 
			
		||||
	buf := make([]byte, size)
 | 
			
		||||
 | 
			
		||||
	buf[b] = c.Extensions["DAMAGE"]
 | 
			
		||||
	b += 1
 | 
			
		||||
 | 
			
		||||
	buf[b] = 0 // request opcode
 | 
			
		||||
	b += 1
 | 
			
		||||
 | 
			
		||||
	xgb.Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
 | 
			
		||||
	b += 2
 | 
			
		||||
 | 
			
		||||
	xgb.Put32(buf[b:], ClientMajorVersion)
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	xgb.Put32(buf[b:], ClientMinorVersion)
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	return buf
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// SubtractCookie is a cookie used only for Subtract requests.
 | 
			
		||||
type SubtractCookie struct {
 | 
			
		||||
	*xgb.Cookie
 | 
			
		||||
@@ -506,61 +564,3 @@ func subtractRequest(c *xgb.Conn, Damage Damage, Repair xfixes.Region, Parts xfi
 | 
			
		||||
 | 
			
		||||
	return buf
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// AddCookie is a cookie used only for Add requests.
 | 
			
		||||
type AddCookie struct {
 | 
			
		||||
	*xgb.Cookie
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Add sends an unchecked request.
 | 
			
		||||
// If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.
 | 
			
		||||
func Add(c *xgb.Conn, Drawable xproto.Drawable, Region xfixes.Region) AddCookie {
 | 
			
		||||
	if _, ok := c.Extensions["DAMAGE"]; !ok {
 | 
			
		||||
		panic("Cannot issue request 'Add' using the uninitialized extension 'DAMAGE'. damage.Init(connObj) must be called first.")
 | 
			
		||||
	}
 | 
			
		||||
	cookie := c.NewCookie(false, false)
 | 
			
		||||
	c.NewRequest(addRequest(c, Drawable, Region), cookie)
 | 
			
		||||
	return AddCookie{cookie}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// AddChecked sends a checked request.
 | 
			
		||||
// If an error occurs, it can be retrieved using AddCookie.Check()
 | 
			
		||||
func AddChecked(c *xgb.Conn, Drawable xproto.Drawable, Region xfixes.Region) AddCookie {
 | 
			
		||||
	if _, ok := c.Extensions["DAMAGE"]; !ok {
 | 
			
		||||
		panic("Cannot issue request 'Add' using the uninitialized extension 'DAMAGE'. damage.Init(connObj) must be called first.")
 | 
			
		||||
	}
 | 
			
		||||
	cookie := c.NewCookie(true, false)
 | 
			
		||||
	c.NewRequest(addRequest(c, Drawable, Region), cookie)
 | 
			
		||||
	return AddCookie{cookie}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Check returns an error if one occurred for checked requests that are not expecting a reply.
 | 
			
		||||
// This cannot be called for requests expecting a reply, nor for unchecked requests.
 | 
			
		||||
func (cook AddCookie) Check() error {
 | 
			
		||||
	return cook.Cookie.Check()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// Write request to wire for Add
 | 
			
		||||
// addRequest writes a Add request to a byte slice.
 | 
			
		||||
func addRequest(c *xgb.Conn, Drawable xproto.Drawable, Region xfixes.Region) []byte {
 | 
			
		||||
	size := 12
 | 
			
		||||
	b := 0
 | 
			
		||||
	buf := make([]byte, size)
 | 
			
		||||
 | 
			
		||||
	buf[b] = c.Extensions["DAMAGE"]
 | 
			
		||||
	b += 1
 | 
			
		||||
 | 
			
		||||
	buf[b] = 4 // request opcode
 | 
			
		||||
	b += 1
 | 
			
		||||
 | 
			
		||||
	xgb.Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
 | 
			
		||||
	b += 2
 | 
			
		||||
 | 
			
		||||
	xgb.Put32(buf[b:], uint32(Drawable))
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	xgb.Put32(buf[b:], uint32(Region))
 | 
			
		||||
	b += 4
 | 
			
		||||
 | 
			
		||||
	return buf
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user