Changeset 7199 for code/branches/consolecommands3/src/libraries/core
- Timestamp:
- Aug 21, 2010, 10:20:09 PM (14 years ago)
- Location:
- code/branches/consolecommands3/src/libraries/core
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/consolecommands3/src/libraries/core/CorePrereqs.h
r7197 r7199 164 164 class Iterator; 165 165 class Language; 166 class LuaFunctor; 166 167 class LuaState; 167 168 class MemoryArchive; -
code/branches/consolecommands3/src/libraries/core/LuaState.cc
r7189 r7199 370 370 } 371 371 372 MultiType LuaFunctor::operator()(const MultiType& param1, const MultiType& param2, const MultiType& param3, const MultiType& param4, const MultiType& param5)372 void LuaFunctor::operator()() 373 373 { 374 374 lua_->doString(this->code_); 375 return MT_Type::Null;376 375 } 377 376 } -
code/branches/consolecommands3/src/libraries/core/LuaState.h
r7189 r7199 40 40 41 41 #include "util/ScopeGuard.h" 42 #include "Functor.h"43 42 #include "ToluaInterface.h" 44 43 45 44 namespace orxonox // tolua_export 46 45 { // tolua_export 47 class Functor; // tolua_export46 class LuaFunctor; // tolua_export 48 47 49 //! Functor subclass that simply executes code with 0 arguments.50 class _CoreExport LuaFunctor : public Functor48 //! callback class that executes lua code 49 class _CoreExport LuaFunctor 51 50 { 52 51 public: 53 52 LuaFunctor(const std::string& code, LuaState* luaState); 54 MultiType operator()(const MultiType& param1 = MT_Type::Null, const MultiType& param2 = MT_Type::Null, const MultiType& param3 = MT_Type::Null, const MultiType& param4 = MT_Type::Null, const MultiType& param5 = MT_Type::Null); 55 void evaluateParam(unsigned int index, MultiType& param) const {} 56 57 Functor::Type::Enum getType() const { return Functor::Type::Lua; } \ 58 unsigned int getParamCount() const { return 0; } 59 bool hasReturnvalue() const { return 0; } 60 std::string getTypenameParam(unsigned int param) const { return BLANKSTRING; } 61 std::string getTypenameReturnvalue() const { return BLANKSTRING; } 62 63 const std::type_info& getHeaderIdentifier() const { return typeid(this); } 53 void operator()(); 64 54 65 55 private: … … 99 89 const shared_ptr<ResourceInfo>& getDefaultResourceInfo() { return this->sourceFileInfo_; } 100 90 101 Functor* createLuaFunctor(const std::string& code) { return new LuaFunctor(code, this); } // tolua_export91 LuaFunctor* createLuaFunctor(const std::string& code) { return new LuaFunctor(code, this); } // tolua_export 102 92 //! Tells about whether IOConsole was activated. The Lua debugger only works with a normal console. 103 93 bool usingIOConsole() const; // tolua_export -
code/branches/consolecommands3/src/libraries/core/input/KeyBinderManager.cc
r7198 r7199 34 34 #include "core/ConsoleCommand.h" 35 35 #include "core/CoreIncludes.h" 36 #include "core/LuaState.h" 36 37 #include "core/ScopedSingletonManager.h" 37 38 #include "InputManager.h" … … 187 188 // else: A key was probably pressed within the same tick, ignore it. 188 189 } 190 191 void KeyBinderManager::registerKeybindCallback(LuaFunctor* function) 192 { 193 this->callbackFunction_ = function; 194 } 189 195 } -
code/branches/consolecommands3/src/libraries/core/input/KeyBinderManager.h
r7198 r7199 99 99 void unbind(const std::string& binding); //tolua_export 100 100 void tunbind(const std::string& binding); 101 inline void registerKeybindCallback(const FunctorPtr& function) { this->callbackFunction_ = function; } // tolua//_//export // <-- FIXME101 void registerKeybindCallback(LuaFunctor* function); //tolua_export 102 102 103 103 private: … … 114 114 115 115 // keybind command related 116 FunctorPtr callbackFunction_;//! Function to be called when key was pressed after "keybind" command116 SharedPtr<LuaFunctor> callbackFunction_; //! Function to be called when key was pressed after "keybind" command 117 117 bool bBinding_; //! Tells whether a key binding process is active 118 118 bool bTemporary_; //! Stores tkeybind/keybind value
Note: See TracChangeset
for help on using the changeset viewer.