
#ifndef SYSTEM_EVENT_H
#define SYSTEM_EVENT_H

class Display;

struct SysEvent
{
public :

	enum Type {
		None,
		Quit,
		Size,
	};

	Type type;

	struct Size
	{
		Display *display;
		int width;
		int height;
	};

	union {
		struct Size size;
	};

	SysEvent(Type type = None);

	// Helper methods

	static SysEvent sizeEvent(Display *display, int width, int height);

};

#endif /* SYSTEM_EVENT_H */