Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: code/branches/input/src/core/CMakeLists.txt @ 1637

Last change on this file since 1637 was 1637, checked in by rgrieder, 16 years ago

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.

  • Property svn:eol-style set to native
File size: 1.4 KB
Line 
1SET(CORE_SRC_FILES
2  ConfigFileManager.cc
3  ConfigValueContainer.cc
4  Core.cc
5  Error.cc
6  Language.cc
7  OrxonoxClass.cc
8  OutputBuffer.cc
9  OutputHandler.cc
10  Script.cc
11  SignalHandler.cc
12
13  # command
14  ArgumentCompletionFunctions.cc
15  CommandEvaluation.cc
16  CommandExecutor.cc
17  ConsoleCommand.cc
18  ConsoleCommandCompilation.cc
19  Executor.cc
20
21  # hierarchy
22  Factory.cc
23  Identifier.cc
24  MetaObjectList.cc
25
26  # level
27  BaseObject.cc
28  ClassTreeMask.cc
29  Loader.cc
30  Namespace.cc
31  NamespaceNode.cc
32  XMLPort.cc
33
34  # shell
35  IRC.cc
36  Shell.cc
37  TclBind.cc
38  TclThreadManager.cc
39
40  # input
41  input/Button.cc
42  input/CalibratorCallback.cc
43  input/ExtendedInputState.cc
44  input/HalfAxis.cc
45  input/InputBuffer.cc
46  input/InputCommands.cc
47  input/InputManager.cc
48  input/KeyBinder.cc
49  input/KeyDetector.cc
50  input/SimpleInputState.cc
51
52  tolua/tolua_bind.cc
53)
54
55GET_TARGET_PROPERTY(TOLUA_EXE tolua LOCATION)
56ADD_CUSTOM_COMMAND(
57  OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/tolua/tolua_bind.cc
58  COMMAND ${TOLUA_EXE} -n core -o ../../src/core/tolua/tolua_bind.cc -H ../../src/core/tolua/tolua_bind.h ../../src/core/tolua/tolua.pkg
59  DEPENDS tolua
60  WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/bin/lib
61)
62
63ADD_LIBRARY(core SHARED ${CORE_SRC_FILES})
64
65TARGET_LINK_LIBRARIES(core
66  ${Lua_LIBRARIES}
67  ${OGRE_LIBRARIES}
68  cpptcl
69  ois_orxonox
70  tinyxml
71  tolualib
72  util
73  ${Boost_thread_LIBRARIES}
74  ${Boost_filesystem_LIBRARIES}
75)
Note: See TracBrowser for help on using the repository browser.