package xevent

/*
   Defines event types and their associated methods automatically.

   This file is automatically generated using `scripts/write-events evtypes`.

   Edit it at your peril.
*/

import (
	"fmt"

	"github.com/BurntSushi/xgb/shape"
	"github.com/BurntSushi/xgb/xproto"
)

type KeyPressEvent struct {
	*xproto.KeyPressEvent
}

const KeyPress = xproto.KeyPress

func (ev KeyPressEvent) String() string {
	return fmt.Sprintf("%v", ev.KeyPressEvent)
}

type KeyReleaseEvent struct {
	*xproto.KeyReleaseEvent
}

const KeyRelease = xproto.KeyRelease

func (ev KeyReleaseEvent) String() string {
	return fmt.Sprintf("%v", ev.KeyReleaseEvent)
}

type ButtonPressEvent struct {
	*xproto.ButtonPressEvent
}

const ButtonPress = xproto.ButtonPress

func (ev ButtonPressEvent) String() string {
	return fmt.Sprintf("%v", ev.ButtonPressEvent)
}

type ButtonReleaseEvent struct {
	*xproto.ButtonReleaseEvent
}

const ButtonRelease = xproto.ButtonRelease

func (ev ButtonReleaseEvent) String() string {
	return fmt.Sprintf("%v", ev.ButtonReleaseEvent)
}

type MotionNotifyEvent struct {
	*xproto.MotionNotifyEvent
}

const MotionNotify = xproto.MotionNotify

func (ev MotionNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.MotionNotifyEvent)
}

type EnterNotifyEvent struct {
	*xproto.EnterNotifyEvent
}

const EnterNotify = xproto.EnterNotify

func (ev EnterNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.EnterNotifyEvent)
}

type LeaveNotifyEvent struct {
	*xproto.LeaveNotifyEvent
}

const LeaveNotify = xproto.LeaveNotify

func (ev LeaveNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.LeaveNotifyEvent)
}

type FocusInEvent struct {
	*xproto.FocusInEvent
}

const FocusIn = xproto.FocusIn

func (ev FocusInEvent) String() string {
	return fmt.Sprintf("%v", ev.FocusInEvent)
}

type FocusOutEvent struct {
	*xproto.FocusOutEvent
}

const FocusOut = xproto.FocusOut

func (ev FocusOutEvent) String() string {
	return fmt.Sprintf("%v", ev.FocusOutEvent)
}

type KeymapNotifyEvent struct {
	*xproto.KeymapNotifyEvent
}

const KeymapNotify = xproto.KeymapNotify

func (ev KeymapNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.KeymapNotifyEvent)
}

type ExposeEvent struct {
	*xproto.ExposeEvent
}

const Expose = xproto.Expose

func (ev ExposeEvent) String() string {
	return fmt.Sprintf("%v", ev.ExposeEvent)
}

type GraphicsExposureEvent struct {
	*xproto.GraphicsExposureEvent
}

const GraphicsExposure = xproto.GraphicsExposure

func (ev GraphicsExposureEvent) String() string {
	return fmt.Sprintf("%v", ev.GraphicsExposureEvent)
}

type NoExposureEvent struct {
	*xproto.NoExposureEvent
}

const NoExposure = xproto.NoExposure

func (ev NoExposureEvent) String() string {
	return fmt.Sprintf("%v", ev.NoExposureEvent)
}

type VisibilityNotifyEvent struct {
	*xproto.VisibilityNotifyEvent
}

const VisibilityNotify = xproto.VisibilityNotify

func (ev VisibilityNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.VisibilityNotifyEvent)
}

type CreateNotifyEvent struct {
	*xproto.CreateNotifyEvent
}

const CreateNotify = xproto.CreateNotify

func (ev CreateNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.CreateNotifyEvent)
}

type DestroyNotifyEvent struct {
	*xproto.DestroyNotifyEvent
}

const DestroyNotify = xproto.DestroyNotify

func (ev DestroyNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.DestroyNotifyEvent)
}

type UnmapNotifyEvent struct {
	*xproto.UnmapNotifyEvent
}

const UnmapNotify = xproto.UnmapNotify

func (ev UnmapNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.UnmapNotifyEvent)
}

type MapNotifyEvent struct {
	*xproto.MapNotifyEvent
}

const MapNotify = xproto.MapNotify

func (ev MapNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.MapNotifyEvent)
}

type MapRequestEvent struct {
	*xproto.MapRequestEvent
}

const MapRequest = xproto.MapRequest

func (ev MapRequestEvent) String() string {
	return fmt.Sprintf("%v", ev.MapRequestEvent)
}

type ReparentNotifyEvent struct {
	*xproto.ReparentNotifyEvent
}

const ReparentNotify = xproto.ReparentNotify

func (ev ReparentNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.ReparentNotifyEvent)
}

type ConfigureRequestEvent struct {
	*xproto.ConfigureRequestEvent
}

const ConfigureRequest = xproto.ConfigureRequest

func (ev ConfigureRequestEvent) String() string {
	return fmt.Sprintf("%v", ev.ConfigureRequestEvent)
}

type GravityNotifyEvent struct {
	*xproto.GravityNotifyEvent
}

const GravityNotify = xproto.GravityNotify

func (ev GravityNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.GravityNotifyEvent)
}

type ResizeRequestEvent struct {
	*xproto.ResizeRequestEvent
}

const ResizeRequest = xproto.ResizeRequest

func (ev ResizeRequestEvent) String() string {
	return fmt.Sprintf("%v", ev.ResizeRequestEvent)
}

type CirculateNotifyEvent struct {
	*xproto.CirculateNotifyEvent
}

const CirculateNotify = xproto.CirculateNotify

func (ev CirculateNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.CirculateNotifyEvent)
}

type CirculateRequestEvent struct {
	*xproto.CirculateRequestEvent
}

const CirculateRequest = xproto.CirculateRequest

func (ev CirculateRequestEvent) String() string {
	return fmt.Sprintf("%v", ev.CirculateRequestEvent)
}

type PropertyNotifyEvent struct {
	*xproto.PropertyNotifyEvent
}

const PropertyNotify = xproto.PropertyNotify

func (ev PropertyNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.PropertyNotifyEvent)
}

type SelectionClearEvent struct {
	*xproto.SelectionClearEvent
}

const SelectionClear = xproto.SelectionClear

func (ev SelectionClearEvent) String() string {
	return fmt.Sprintf("%v", ev.SelectionClearEvent)
}

type SelectionRequestEvent struct {
	*xproto.SelectionRequestEvent
}

const SelectionRequest = xproto.SelectionRequest

func (ev SelectionRequestEvent) String() string {
	return fmt.Sprintf("%v", ev.SelectionRequestEvent)
}

type SelectionNotifyEvent struct {
	*xproto.SelectionNotifyEvent
}

const SelectionNotify = xproto.SelectionNotify

func (ev SelectionNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.SelectionNotifyEvent)
}

type ColormapNotifyEvent struct {
	*xproto.ColormapNotifyEvent
}

const ColormapNotify = xproto.ColormapNotify

func (ev ColormapNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.ColormapNotifyEvent)
}

type MappingNotifyEvent struct {
	*xproto.MappingNotifyEvent
}

const MappingNotify = xproto.MappingNotify

func (ev MappingNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.MappingNotifyEvent)
}

type ShapeNotifyEvent struct {
	*shape.NotifyEvent
}

const ShapeNotify = shape.Notify

func (ev ShapeNotifyEvent) String() string {
	return fmt.Sprintf("%v", ev.NotifyEvent)
}
