Hi,

I had a look at customeventloop.c and at http://wiki.libagar.org/wiki/Integrating_Agar_in_an_existing_GL_application but something remains unclear to me: I used AG_InitVideoSDL, and with previous versions of Agar I was using in my event loop a call to 'SDL_PollEvent( & currentEvent )' which was returning a SDL_Event that I dispatched accordingly, possibly ending up in a 'AG_ProcessEvent( & currentEvent ) ;'.

I am developping a library, using mostly SDL as a back-end, and *possibly* using Agar for the GUI. So I would like to keep as much as possible my already-available event-management logic, which routes (here, SDL) events to dedicated mouse/joystick/keyboard handlers; thus I would like to avoid as much as possible the use of the Agar encapsulation for these kinds of events (AG_PendingEvents, AG_GetNextEvent, AG_DRIVER_MOUSE_BUTTON_DOWN, etc.), since Agar may or may not used by the applications, and just be able to directly feed Agar with driver-specific (SDL) events.

How would you proceed to do so? I was thinking to using the newer AG_ProcessEvent, however: - first argument is the driver: I do not know what to specify here in my case, NULL? (or a SDL-specific Agar driver?) - second is the Agar event, I thus need a SDL to Agar Event converter, for that I suppose I would need a subset of the code in AG_SDL_GetNextEvent, which performs two operations: the polling and the conversion, whereas I would need the latter only; another option would be to use directly AG_SDL_GetNextEvent and disable my own polling, but it would send all events to Agar, and force the rest of the library code to deal with Agar events instead of SDL ones, whereas Agar may be disabled

Any hint? Best approach I would see would be to move the SDL -> Agar event conversion into a dedicated function that would be callable from my user code.

Thanks in advance for any advice,
Best regards,

Olivier Boudeville.


_______________________________________________
Agar mailing list
[email protected]
http://libagar.org/lists.html

Reply via email to