/*!
@page Events OWBAL Events

<div class="header">
<center>\< @ref PrevReference | @ref OrigynWebBrowser | @ref NextReference \></center>
<hr>
</div>

Presentation of BAL module.

@section Overview Overview

This page details how events are managed in the BAL. It explains EvenLoop behaviour,
and particularly Input Events. Window event are also described.

@section Topics Topics

Detailed description of specific module.

- @subpage EventLoop How the event loop works.
- @subpage InputEvent Keyboard, mouse and so on

*/

//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////

/*!
@page EventLoop

<center>\< @ref PrevReference | @ref OrigynWebBrowser | @ref NextReference \></center>
<hr>

@section Principles Principles

Event loop is very easy to understand. To use it, just create it and wait for the events.
The following code for instance :
@verbatim
#include "BALConfiguration.h"
#include "BIEventLoop.h"

// creation
BIEventLoop* aEventLoop = createBCEventLoop();

// waiting
BIEvent* event;
aEventLoop->WaitEvent(event);
@endverbatim

It is important to note that, to receive input and window events, you need a window. To
create it :

@verbatim
BIWindow* aWindow = createBCWindowBal(0,0,800,600,32);
@endverbatim

See Windowing for more details.
*/

/*!
@page InputEvent

<center>\< @ref PrevReference | @ref OrigynWebBrowser | @ref NextReference \></center>
<hr>

@section Introduction Introduction

This page describes input events : keyboard, mouse and wheel. Wheel is separated from mouse.
Events share a mother interface @ref BIEvent. BIInputEvent inherits from this interface.

@ref BIInputEvent gathers ctrl key management, which is common to all input. For instance, you can use the mouse
while keeping the ctrl key down.

@section Inputs The inputs

@subsection Keyboard The keyboard

Keyboard input events are generated at each key press or release. It includes all keys.
Accessors are detailed in the interface description @ref BAL::BIKeyboardEvent

@subsection Mouse The mouse

Mouse input events are generated on mouse event, or button press or released. For details,
see @ref BAL::BIMouseEvent

@subsection Wheel The wheel

Wheel is not completly designed nor implemented.

*/
