Re: SFML2 Demo Dilema

new topic     » goto parent     » topic index » view thread      » older message » newer message

Thanks for the help. I overlooked the original post. I believe I am homing in on the problem. The window dosen't close still, but I believe there may be something wrong with how the flag type is declared, compared to what the C code is.

// C code from SFML 
typedef enum 
{ 
    sfEvtClosed,                 ///< The window requested to be closed (no data) 
    sfEvtResized,                ///< The window was resized (data in event.size) 
    sfEvtLostFocus,              ///< The window lost the focus (no data) 
    sfEvtGainedFocus,            ///< The window gained the focus (no data) 
    sfEvtTextEntered,            ///< A character was entered (data in event.text) 
    sfEvtKeyPressed,             ///< A key was pressed (data in event.key) 
    sfEvtKeyReleased,            ///< A key was released (data in event.key) 
    sfEvtMouseWheelMoved,        ///< The mouse wheel was scrolled (data in event.mouseWheel) 
    sfEvtMouseButtonPressed,     ///< A mouse button was pressed (data in event.mouseButton) 
    sfEvtMouseButtonReleased,    ///< A mouse button was released (data in event.mouseButton) 
    sfEvtMouseMoved,             ///< The mouse cursor moved (data in event.mouseMove) 
    sfEvtMouseEntered,           ///< The mouse cursor entered the area of the window (no data) 
    sfEvtMouseLeft,              ///< The mouse cursor left the area of the window (no data) 
    sfEvtJoystickButtonPressed,  ///< A joystick button was pressed (data in event.joystickButton) 
    sfEvtJoystickButtonReleased, ///< A joystick button was released (data in event.joystickButton) 
    sfEvtJoystickMoved,          ///< The joystick moved along an axis (data in event.joystickMove) 
    sfEvtJoystickConnected,      ///< A joystick was connected (data in event.joystickConnect) 
    sfEvtJoystickDisconnected,   ///< A joystick was disconnected (data in event.joystickConnect) 
    sfEvtTouchBegan,             ///< A touch event began (data in event.touch) 
    sfEvtTouchMoved,             ///< A touch moved (data in event.touch) 
    sfEvtTouchEnded,             ///< A touch event ended (data in event.touch) 
    sfEvtSensorChanged,          ///< A sensor value changed (data in event.sensor) 
 
    sfEvtCount,                  ///< Keep last -- the total number of event types 
} sfEventType; 

--Flag code 
public enum type sfEventType 
 
	sfEvtClosed, 
	sfEvtResized, 
	sfEvtLostFocus, 
	sfEvtGainedFocus, 
	sfEvtTextEntered, 
	sfEvtKeyPressed, 
	sfEvtKeyReleased, 
	sfEvtMouseWheelMoved, 
	sfEvtMouseButtonPressed, 
	sfEvtMouseButtonReleased, 
	sfEvtMouseMoved, 
	sfEvtMouseEntered, 
	sfEvtMouseLeft, 
	sfEvtJoystickButtonPressed, 
	sfEvtJoystickButtonReleased, 
	sfEvtJoystickMoved, 
	sfEvtJoystickConnected, 
	sfEvtJoystickDisconnected, 
	sfEvtTouchBegan, 
	sfEvtTouchMoved, 
	sfEvtTouchEnded, 
	sfEvtSensorChanged, 
	sfEvtCount 
	 
end type 
--Actual demo code 
without warning 
 
include std/machine.e 
include EuSys2.ew 
include EuGfx2.ew 
 
include sfFlags.e 
 
atom win = sfRenderWindow_create(800,600,32,"My Window",sfClose,0) 
 
if win = -1 then 
	puts(1,"Could not create render window!\n") 
	abort(0) 
end if 
 
constant event = allocate(4 * 6) 
 
while sfRenderWindow_isOpen(win) do 
	 
	while sfRenderWindow_pollEvent(win,event) do 
	 
	  integer eventType = peek4s(event) 
	  integer code = peek4s(event+4) 
	  integer alt = peek4s(event+8) 
	  integer control = peek4s(event+12) 
	  integer shift = peek4s(event+16) 
	  integer system = peek4s(event+20) 
	   
		if eventType = sfEvtClosed then 
			sfRenderWindow_close(win) 
		end if 
		 
	end while 
	 
	sfRenderWindow_clear(win,sfBlack) 
	 
	sfRenderWindow_display(win) 
 
end while 
 
sfRenderWindow_destroy(win) 
new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu