[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [37501] branches/soc-2011-cucumber/source/ gameengine: Centralizing the exit key methods to the keyboard devices.

Daniel Stokes kupomail at gmail.com
Wed Jun 15 08:42:46 CEST 2011


Revision: 37501
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=37501
Author:   kupoman
Date:     2011-06-15 06:42:46 +0000 (Wed, 15 Jun 2011)
Log Message:
-----------
Centralizing the exit key methods to the keyboard devices. This should make it easier to get exit key control to the python API.

Modified Paths:
--------------
    branches/soc-2011-cucumber/source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h
    branches/soc-2011-cucumber/source/gameengine/GameLogic/SCA_IInputDevice.h
    branches/soc-2011-cucumber/source/gameengine/GamePlayer/common/GPC_KeyboardDevice.h
    branches/soc-2011-cucumber/source/gameengine/GamePlayer/ghost/GPG_Application.cpp
    branches/soc-2011-cucumber/source/gameengine/GamePlayer/ghost/GPG_Application.h

Modified: branches/soc-2011-cucumber/source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h
===================================================================
--- branches/soc-2011-cucumber/source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h	2011-06-15 06:25:05 UTC (rev 37500)
+++ branches/soc-2011-cucumber/source/gameengine/BlenderRoutines/KX_BlenderKeyboardDevice.h	2011-06-15 06:42:46 UTC (rev 37501)
@@ -52,10 +52,7 @@
 	virtual bool	ConvertBlenderEvent(unsigned short incode,short val);
 	virtual void	NextFrame();
 	virtual void	HookEscape();
-
-	void			SetExitKey(short key);
-
-	//virtual void	SetExitKey(short key);
+	virtual void	SetExitKey(short key);
 private:
 	short		m_exit_key;
 

Modified: branches/soc-2011-cucumber/source/gameengine/GameLogic/SCA_IInputDevice.h
===================================================================
--- branches/soc-2011-cucumber/source/gameengine/GameLogic/SCA_IInputDevice.h	2011-06-15 06:25:05 UTC (rev 37500)
+++ branches/soc-2011-cucumber/source/gameengine/GameLogic/SCA_IInputDevice.h	2011-06-15 06:42:46 UTC (rev 37501)
@@ -286,6 +286,7 @@
 	*/
 	int				m_currentTable; 
 	void			ClearStatusTable(int tableid);
+	short			m_exitkey;
 
 public:
 	virtual bool	IsPressed(SCA_IInputDevice::KX_EnumInputs inputcode)=0;
@@ -316,7 +317,11 @@
 	*/
 	virtual void	NextFrame();
 
+	//Exit Key get/set
+	virtual void	SetExitKey(short key){m_exitkey=key;};
+	virtual short	GetExitKey(){return m_exitkey;};
 
+
 #ifdef WITH_CXX_GUARDEDALLOC
 public:
 	void *operator new(size_t num_bytes) { return MEM_mallocN(num_bytes, "GE:SCA_InputEvent"); }

Modified: branches/soc-2011-cucumber/source/gameengine/GamePlayer/common/GPC_KeyboardDevice.h
===================================================================
--- branches/soc-2011-cucumber/source/gameengine/GamePlayer/common/GPC_KeyboardDevice.h	2011-06-15 06:25:05 UTC (rev 37500)
+++ branches/soc-2011-cucumber/source/gameengine/GamePlayer/common/GPC_KeyboardDevice.h	2011-06-15 06:42:46 UTC (rev 37501)
@@ -59,6 +59,7 @@
 	 * System dependent keyboard codes are stored as ints.
 	 */
 	std::map<int, KX_EnumInputs> m_reverseKeyTranslateTable;
+	short	m_exitkey;
 
 public:
 	bool m_hookesc;

Modified: branches/soc-2011-cucumber/source/gameengine/GamePlayer/ghost/GPG_Application.cpp
===================================================================
--- branches/soc-2011-cucumber/source/gameengine/GamePlayer/ghost/GPG_Application.cpp	2011-06-15 06:25:05 UTC (rev 37500)
+++ branches/soc-2011-cucumber/source/gameengine/GamePlayer/ghost/GPG_Application.cpp	2011-06-15 06:42:46 UTC (rev 37501)
@@ -622,7 +622,7 @@
 		
 		
 
-		m_exitkey = ConvertKeyCode(gm->exitkey);
+		m_keyboard->SetExitKey(ConvertKeyCode(gm->exitkey));
 #ifdef WITH_PYTHON
 		CValue::SetDeprecationWarnings(nodepwarnings);
 #else
@@ -902,8 +902,7 @@
 		GHOST_TEventDataPtr eventData = ((GHOST_IEvent*)event)->getData();
 		GHOST_TEventKeyData* keyData = static_cast<GHOST_TEventKeyData*>(eventData);
 
-		printf("%d %d\n", m_keyboard->ToNative(keyData->key), m_exitkey);
-		if (m_keyboard->ToNative(keyData->key) == m_exitkey && !m_keyboard->m_hookesc && !m_isEmbedded) {
+		if (m_keyboard->ToNative(keyData->key) == m_keyboard->GetExitKey() && !m_keyboard->m_hookesc && !m_isEmbedded) {
 			m_exitRequested = KX_EXIT_REQUEST_OUTSIDE;
 		}
 		m_keyboard->ConvertEvent(keyData->key, isDown);

Modified: branches/soc-2011-cucumber/source/gameengine/GamePlayer/ghost/GPG_Application.h
===================================================================
--- branches/soc-2011-cucumber/source/gameengine/GamePlayer/ghost/GPG_Application.h	2011-06-15 06:25:05 UTC (rev 37500)
+++ branches/soc-2011-cucumber/source/gameengine/GamePlayer/ghost/GPG_Application.h	2011-06-15 06:42:46 UTC (rev 37501)
@@ -102,7 +102,6 @@
 	 * Shuts the game engine down.
 	 */
 	void exitEngine(void);
-	short					m_exitkey;
 
 	/* The game data */
 	STR_String				m_startSceneName;




More information about the Bf-blender-cvs mailing list