Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Ignore:
Timestamp:
Jul 20, 2008, 6:49:24 PM (16 years ago)
Author:
rgrieder
Message:

Finally! The InputManager is now working like I imagined it to. And it's even easier to use it as well.
A little explanation: Every time you change something about the input distribution, it is a change of 'state' represented by the class 'InputState'.
That can be for instance: "console", "game", "gui", etc. Every state has a name and a priority which describes who comes first. Now if one state doesn't handle mouse input or instance, then the one with the next lower priority gets it. To prevent that, you can add the 'EmptyHandler' to the state with setMouseHandler.
InputState is just an abstract base class. There are two classes implementing it: SimpleInputState and ExtendedInputState. The latter allows for multiple input handlers for one single device.

Basically, what you need to know is what you see in Orxonox.cc, InGameConsole.cc and Shell.cc.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • code/branches/input/visual_studio/vc8/core.vcproj

    r1629 r1637  
    280280                                </File>
    281281                                <File
     282                                        RelativePath="..\..\src\core\input\ExtendedInputState.cc"
     283                                        >
     284                                </File>
     285                                <File
    282286                                        RelativePath="..\..\src\core\input\HalfAxis.cc"
    283287                                        >
     
    301305                                <File
    302306                                        RelativePath="..\..\src\core\input\KeyDetector.cc"
     307                                        >
     308                                </File>
     309                                <File
     310                                        RelativePath="..\..\src\core\input\SimpleInputState.cc"
    303311                                        >
    304312                                </File>
     
    398406                                </File>
    399407                                <File
     408                                        RelativePath="..\..\src\core\input\ExtendedInputState.h"
     409                                        >
     410                                </File>
     411                                <File
    400412                                        RelativePath="..\..\src\core\input\HalfAxis.h"
    401413                                        >
     
    418430                                </File>
    419431                                <File
     432                                        RelativePath="..\..\src\core\input\InputState.h"
     433                                        >
     434                                </File>
     435                                <File
    420436                                        RelativePath="..\..\src\core\input\KeyBinder.h"
    421437                                        >
     
    423439                                <File
    424440                                        RelativePath="..\..\src\core\input\KeyDetector.h"
     441                                        >
     442                                </File>
     443                                <File
     444                                        RelativePath="..\..\src\core\input\SimpleInputState.h"
    425445                                        >
    426446                                </File>
Note: See TracChangeset for help on using the changeset viewer.