Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 5786 in orxonox.OLD for trunk/src/lib/event


Ignore:
Timestamp:
Nov 26, 2005, 9:56:11 PM (19 years ago)
Author:
bensch
Message:

orxonox/trunk: key-repeat in the Shell is smoother now

Location:
trunk/src/lib/event
Files:
1 deleted
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/lib/event/Makefile.am

    r5463 r5786  
    44noinst_LIBRARIES = libORXevent.a
    55
    6 libORXevent_a_SOURCES = event.cc \
    7                         event_handler.cc \
     6libORXevent_a_SOURCES = event_handler.cc \
    87                        event_listener.cc \
    98                        key_mapper.cc \
  • trunk/src/lib/event/event.h

    r5391 r5786  
    2727
    2828//! An abstract event class
    29 class Event {
    30 
    31  public:
    32   Event();
    33 
    34   int      offset;                      //!< offset in the event type array
     29struct Event {
    3530  int      type;                        //!< the type field
    3631  bool     bPressed;                    //!< is true, if the button/mouse was pressed, false if released
  • trunk/src/lib/event/event_handler.cc

    r5553 r5786  
    4646  /* now initialize them all to zero */
    4747  this->flush(ES_ALL);
     48  this->withUNICODE(false);
    4849
    4950  this->state = ES_GAME;
    5051  this->keyMapper = NULL;
    5152  this->stateStack = NULL;
     53
    5254}
    5355
     
    247249
    248250
     251void EventHandler::withUNICODE(bool enableUNICODE)
     252{
     253  SDL_EnableUNICODE(enableUNICODE);
     254  this->bUNICODE = enableUNICODE;
     255}
     256
     257
    249258/**
    250259 *  core function of event handler: receives all events from SDL
     
    264273          ev.bPressed = true;
    265274          ev.type = event.key.keysym.sym;
     275          if (unlikely(this->bUNICODE))
     276              ev.x = event.key.keysym.unicode;
    266277          break;
    267278        case SDL_KEYUP:
    268279          ev.bPressed = false;
    269280          ev.type = event.key.keysym.sym;
     281          if (unlikely(this->bUNICODE))
     282            ev.x = event.key.keysym.unicode;
    270283          break;
    271284        case SDL_MOUSEMOTION:
  • trunk/src/lib/event/event_handler.h

    r5776 r5786  
    4141  inline bool isSubscribed(elState state, int eventType) { return(listeners[state][eventType] == NULL)?false:true; };
    4242
     43
     44  void withUNICODE(bool enableUNICODE);
     45
    4346  void process();
    4447
     
    5861  KeyMapper*                 keyMapper;                       //!< reference to the key mapper.
    5962
     63  bool                       bUNICODE;                        //!< If unicode should be enabled.
    6064};
    6165
Note: See TracChangeset for help on using the changeset viewer.