Permalink
Browse files

[retroplayer] Game add-ons

Thanks to Themaister for rewind functionality, fetzerch for mouse support,
file length check and cmake modifications, topfs2 for fixing a crash when
loading game clients, eibma for fixing linux compilation errors, a1rwulf
for catching a missing callback symbol and fixing some rebase errors, and
to notspiff for helping with the rebrand and cmake.
  • Loading branch information...
1 parent 918e289 commit e2563f6529ea0f08fe153d6baa9dff0935ea8d65 @garbear garbear committed with garbear Mar 3, 2014
Showing with 9,954 additions and 62 deletions.
  1. +4 −0 .gitignore
  2. +354 −33 Kodi.xcodeproj/project.pbxproj
  3. +17 −0 Makefile.in
  4. +2 −2 addons/kodi.game/addon.xml
  5. +9 −0 addons/kodi.resource/games.xsd
  6. +5 −0 addons/library.kodi.game/.gitignore
  7. +141 −3 addons/resource.language.en_gb/resources/strings.po
  8. +1 −0 configure.ac
  9. +17 −0 doxygen_resources/pages/mainpage.dox
  10. +2 −0 lib/addons/library.kodi.game/CMakeLists.txt
  11. +29 −0 lib/addons/library.kodi.game/Makefile.in
  12. +164 −0 lib/addons/library.kodi.game/libKODI_game.cpp
  13. +84 −0 lib/addons/library.kodi.game/project/VS2010Express/libKODI_game.vcxproj
  14. +14 −0 lib/addons/library.kodi.game/project/VS2010Express/libKODI_game.vcxproj.filters
  15. +16 −0 project/Win32BuildSetup/genNsisIncludes.bat
  16. +1 −0 project/Win32BuildSetup/genNsisInstaller.nsi
  17. +1 −0 project/cmake/installdata/common/addons.txt
  18. +1 −0 project/cmake/scripts/linux/Install.cmake
  19. +1 −0 project/cmake/treedata/common/addons.txt
  20. +5 −0 project/cmake/treedata/common/games.txt
  21. +3 −0 project/cmake/treedata/common/subdirs.txt
  22. +31 −0 system/settings/settings.xml
  23. +11 −0 xbmc/Application.cpp
  24. +1 −0 xbmc/DatabaseManager.cpp
  25. +12 −1 xbmc/FileItem.cpp
  26. +6 −0 xbmc/GUIInfoManager.cpp
  27. +3 −0 xbmc/addons/Addon.cpp
  28. +12 −1 xbmc/addons/AddonBuilder.cpp
  29. +6 −1 xbmc/addons/BinaryAddonCache.cpp
  30. +2 −0 xbmc/addons/CMakeLists.txt
  31. +29 −0 xbmc/addons/DllGameClient.h
  32. +11 −1 xbmc/addons/GUIDialogAddonInfo.cpp
  33. +2 −0 xbmc/addons/GUIWindowAddonBrowser.cpp
  34. +35 −0 xbmc/addons/GameResource.cpp
  35. +41 −0 xbmc/addons/GameResource.h
  36. +3 −0 xbmc/addons/IAddon.h
  37. +1 −0 xbmc/addons/Makefile
  38. +5 −0 xbmc/addons/PluginSource.cpp
  39. +1 −1 xbmc/addons/PluginSource.h
  40. +5 −0 xbmc/addons/addon-bindings.mk
  41. +33 −1 xbmc/addons/binary/interfaces/AddonInterfaces.cpp
  42. +11 −0 xbmc/addons/binary/interfaces/AddonInterfaces.h
  43. +213 −0 xbmc/addons/binary/interfaces/api1/Game/AddonCallbacksGame.cpp
  44. +72 −0 xbmc/addons/binary/interfaces/api1/Game/AddonCallbacksGame.h
  45. +9 −0 xbmc/addons/binary/interfaces/api1/Game/CMakeLists.txt
  46. +7 −0 xbmc/addons/binary/interfaces/api1/Game/Makefile
  47. +161 −0 xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_game_callbacks.h
  48. +287 −0 xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_game_dll.h
  49. +487 −0 xbmc/addons/kodi-addon-dev-kit/include/kodi/kodi_game_types.h
  50. +238 −0 xbmc/addons/kodi-addon-dev-kit/include/kodi/libKODI_game.h
  51. +212 −7 xbmc/filesystem/AddonsDirectory.cpp
  52. +5 −2 xbmc/games/CMakeLists.txt
  53. +6 −0 xbmc/games/GameSettings.cpp
  54. +3 −1 xbmc/games/GameSettings.h
  55. +32 −0 xbmc/games/GameTypes.h
  56. +260 −0 xbmc/games/GameUtils.cpp
  57. +73 −0 xbmc/games/GameUtils.h
  58. +1 −0 xbmc/games/Makefile
  59. +18 −0 xbmc/games/addons/CMakeLists.txt
  60. +918 −0 xbmc/games/addons/GameClient.cpp
  61. +173 −0 xbmc/games/addons/GameClient.h
  62. +55 −0 xbmc/games/addons/GameClientCallbacks.h
  63. +193 −0 xbmc/games/addons/GameClientInput.cpp
  64. +68 −0 xbmc/games/addons/GameClientInput.h
  65. +104 −0 xbmc/games/addons/GameClientKeyboard.cpp
  66. +60 −0 xbmc/games/addons/GameClientKeyboard.h
  67. +127 −0 xbmc/games/addons/GameClientMouse.cpp
  68. +63 −0 xbmc/games/addons/GameClientMouse.h
  69. +218 −0 xbmc/games/addons/GameClientProperties.cpp
  70. +90 −0 xbmc/games/addons/GameClientProperties.h
  71. +53 −0 xbmc/games/addons/GameClientTiming.cpp
  72. +79 −0 xbmc/games/addons/GameClientTiming.h
  73. +142 −0 xbmc/games/addons/GameClientTranslator.cpp
  74. +98 −0 xbmc/games/addons/GameClientTranslator.h
  75. +12 −0 xbmc/games/addons/Makefile
  76. +9 −0 xbmc/games/addons/playback/CMakeLists.txt
  77. +44 −0 xbmc/games/addons/playback/GameClientRealtimePlayback.h
  78. +338 −0 xbmc/games/addons/playback/GameClientReversiblePlayback.cpp
  79. +94 −0 xbmc/games/addons/playback/GameClientReversiblePlayback.h
  80. +135 −0 xbmc/games/addons/playback/GameLoop.cpp
  81. +73 −0 xbmc/games/addons/playback/GameLoop.h
  82. +49 −0 xbmc/games/addons/playback/IGameClientPlayback.h
  83. +7 −0 xbmc/games/addons/playback/Makefile
  84. +66 −0 xbmc/games/addons/savestates/BasicMemoryStream.cpp
  85. +56 −0 xbmc/games/addons/savestates/BasicMemoryStream.h
  86. +23 −0 xbmc/games/addons/savestates/CMakeLists.txt
  87. +107 −0 xbmc/games/addons/savestates/DeltaPairMemoryStream.cpp
  88. +75 −0 xbmc/games/addons/savestates/DeltaPairMemoryStream.h
  89. +152 −0 xbmc/games/addons/savestates/IMemoryStream.h
  90. +115 −0 xbmc/games/addons/savestates/LinearMemoryStream.cpp
  91. +76 −0 xbmc/games/addons/savestates/LinearMemoryStream.h
  92. +14 −0 xbmc/games/addons/savestates/Makefile
  93. +264 −0 xbmc/games/addons/savestates/Savestate.cpp
  94. +103 −0 xbmc/games/addons/savestates/Savestate.h
  95. +110 −0 xbmc/games/addons/savestates/SavestateDatabase.cpp
  96. +55 −0 xbmc/games/addons/savestates/SavestateDatabase.h
  97. +43 −0 xbmc/games/addons/savestates/SavestateDefines.h
  98. +79 −0 xbmc/games/addons/savestates/SavestateReader.cpp
  99. +48 −0 xbmc/games/addons/savestates/SavestateReader.h
  100. +46 −0 xbmc/games/addons/savestates/SavestateTranslator.cpp
  101. +34 −0 xbmc/games/addons/savestates/SavestateTranslator.h
  102. +149 −0 xbmc/games/addons/savestates/SavestateUtils.cpp
  103. +55 −0 xbmc/games/addons/savestates/SavestateUtils.h
  104. +171 −0 xbmc/games/addons/savestates/SavestateWriter.cpp
  105. +51 −0 xbmc/games/addons/savestates/SavestateWriter.h
  106. +1 −0 xbmc/games/controllers/ControllerDefinitions.h
  107. +2 −0 xbmc/games/controllers/ControllerTranslator.cpp
  108. +9 −0 xbmc/games/controllers/windows/GUIConfigurationWizard.cpp
  109. +7 −0 xbmc/games/controllers/windows/GUIConfigurationWizard.h
  110. +7 −0 xbmc/games/dialogs/CMakeLists.txt
  111. +169 −0 xbmc/games/dialogs/GUIDialogSelectGameClient.cpp
  112. +44 −0 xbmc/games/dialogs/GUIDialogSelectGameClient.h
  113. +6 −0 xbmc/games/dialogs/Makefile
  114. +7 −0 xbmc/games/ports/CMakeLists.txt
  115. +7 −0 xbmc/games/ports/Makefile
  116. +175 −0 xbmc/games/ports/PortManager.cpp
  117. +91 −0 xbmc/games/ports/PortManager.h
  118. +84 −0 xbmc/games/ports/PortMapper.cpp
  119. +44 −0 xbmc/games/ports/PortMapper.h
  120. +3 −0 xbmc/guilib/WindowIDs.h
  121. +76 −2 xbmc/input/InputManager.cpp
  122. +59 −2 xbmc/input/InputManager.h
  123. +3 −0 xbmc/input/joysticks/CMakeLists.txt
  124. +6 −1 xbmc/input/joysticks/DefaultJoystick.cpp
  125. +4 −0 xbmc/input/joysticks/DefaultJoystick.h
  126. +33 −0 xbmc/input/joysticks/IButtonSequence.h
  127. +79 −0 xbmc/input/joysticks/JoystickEasterEgg.cpp
  128. +47 −0 xbmc/input/joysticks/JoystickEasterEgg.h
  129. +2 −0 xbmc/input/joysticks/JoystickTypes.h
  130. +1 −0 xbmc/input/joysticks/Makefile
  131. +6 −1 xbmc/input/keyboard/CMakeLists.txt
  132. +68 −0 xbmc/input/keyboard/KeyboardEasterEgg.cpp
  133. +47 −0 xbmc/input/keyboard/KeyboardEasterEgg.h
  134. +6 −0 xbmc/input/keyboard/Makefile
  135. +8 −0 xbmc/input/mouse/CMakeLists.txt
  136. +75 −0 xbmc/input/mouse/IMouseButtonMap.h
  137. +59 −0 xbmc/input/mouse/IMouseDriverHandler.h
  138. +69 −0 xbmc/input/mouse/IMouseInputHandler.h
  139. +6 −0 xbmc/input/mouse/Makefile
  140. +83 −0 xbmc/input/mouse/MouseWindowingButtonMap.cpp
  141. +49 −0 xbmc/input/mouse/MouseWindowingButtonMap.h
  142. +5 −0 xbmc/input/mouse/generic/CMakeLists.txt
  143. +6 −0 xbmc/input/mouse/generic/Makefile
  144. +68 −0 xbmc/input/mouse/generic/MouseInputHandling.cpp
  145. +55 −0 xbmc/input/mouse/generic/MouseInputHandling.h
  146. +22 −1 xbmc/interfaces/builtins/AddonBuiltins.cpp
  147. +3 −0 xbmc/interfaces/json-rpc/AddonsOperations.cpp
  148. +2 −0 xbmc/peripherals/Peripherals.cpp
  149. +2 −0 xbmc/peripherals/Peripherals.h
  150. +9 −0 xbmc/profiles/ProfilesManager.cpp
  151. +1 −0 xbmc/profiles/ProfilesManager.h
  152. +17 −0 xbmc/settings/AdvancedSettings.cpp
  153. +1 −0 xbmc/settings/AdvancedSettings.h
  154. +5 −0 xbmc/settings/Settings.cpp
  155. +3 −0 xbmc/settings/Settings.h
  156. +3 −1 xbmc/utils/Observer.h
View
@@ -129,6 +129,7 @@ cmake_install.cmake
/addons/pvr.*
/addons/adsp.*
/addons/peripheral.*
+/addons/game.*
/addons/xbmc.addon/addon.xml
/addons/xbmc.json/addon.xml
/addons/kodi.guilib/addon.xml
@@ -151,6 +152,7 @@ cmake_install.cmake
/lib/addons/library.xbmc.pvr/Makefile
/lib/addons/library.xbmc.codec/Makefile
/lib/addons/library.kodi.peripheral/Makefile
+/lib/addons/library.kodi.game/Makefile
/lib/addons/library.xbmc.addon/project/VS2010Express/Release
/lib/addons/library.xbmc.addon/project/VS2010Express/Debug
/lib/addons/library.kodi.adsp/project/VS2010Express/Release
@@ -165,6 +167,8 @@ cmake_install.cmake
/lib/addons/library.kodi.inputstream/Makefile
/lib/addons/library.kodi.peripheral/project/VS2010Express/Release
/lib/addons/library.kodi.peripheral/project/VS2010Express/Debug
+/lib/addons/library.kodi.game/project/VS2010Express/Release
+/lib/addons/library.kodi.game/project/VS2010Express/Debug
# /lib/cpluff/
/lib/cpluff/ABOUT-NLS
Oops, something went wrong.
View
@@ -30,6 +30,7 @@ DIRECTORY_ARCHIVES=$(VideoPlayer_ARCHIVES) \
xbmc/addons/binary/interfaces/api1/AudioDSP/addon-callbacks-audiodsp.a \
xbmc/addons/binary/interfaces/api1/AudioEngine/addon-callbacks-audioengine.a \
xbmc/addons/binary/interfaces/api1/Codec/addon-callbacks-codec.a \
+ xbmc/addons/binary/interfaces/api1/Game/addon-callbacks-game.a \
xbmc/addons/binary/interfaces/api1/GUI/addon-callbacks-gui.a \
xbmc/addons/binary/interfaces/api1/InputStream/addon-callbacks-inputstream.a \
xbmc/addons/binary/interfaces/api1/Peripheral/addon-callbacks-peripheral.a \
@@ -53,11 +54,16 @@ DIRECTORY_ARCHIVES=$(VideoPlayer_ARCHIVES) \
xbmc/filesystem/MusicDatabaseDirectory/musicdatabasedirectory.a \
xbmc/filesystem/VideoDatabaseDirectory/videodatabasedirectory.a \
xbmc/filesystem/filesystem.a \
+ xbmc/games/addons/gameaddons.a \
+ xbmc/games/addons/playback/gameaddonplayback.a \
+ xbmc/games/addons/savestates/gamesavestates.a \
xbmc/games/controllers/controllers.a \
xbmc/games/controllers/dialogs/controllerdialogs.a \
xbmc/games/controllers/guicontrols/controllerguicontrols.a \
xbmc/games/controllers/windows/controllerwindows.a \
+ xbmc/games/dialogs/gamedialogs.a \
xbmc/games/games.a \
+ xbmc/games/ports/gameports.a \
xbmc/games/tags/gameinfotags.a \
xbmc/guilib/guilib.a \
xbmc/input/input.a \
@@ -153,7 +159,10 @@ ifeq ($(findstring osx,@ARCH@),osx)
DIRECTORY_ARCHIVES += xbmc/input/joysticks/input_joysticks.a
DIRECTORY_ARCHIVES += xbmc/input/joysticks/dialogs/input_joystick_dialogs.a
DIRECTORY_ARCHIVES += xbmc/input/joysticks/generic/input_joysticks_generic.a
+DIRECTORY_ARCHIVES += xbmc/input/keyboard/input_keyboard.a
DIRECTORY_ARCHIVES += xbmc/input/keyboard/generic/input_keyboard_generic.a
+DIRECTORY_ARCHIVES += xbmc/input/mouse/input_mouse.a
+DIRECTORY_ARCHIVES += xbmc/input/mouse/generic/input_mouse_generic.a
DIRECTORY_ARCHIVES += xbmc/network/osx/network.a
DIRECTORY_ARCHIVES += xbmc/network/linux/network_linux.a
DIRECTORY_ARCHIVES += xbmc/powermanagement/osx/powermanagement.a
@@ -170,8 +179,11 @@ ifeq (@USE_ANDROID@,1)
DIRECTORY_ARCHIVES += xbmc/input/joysticks/input_joysticks.a
DIRECTORY_ARCHIVES += xbmc/input/joysticks/dialogs/input_joystick_dialogs.a
DIRECTORY_ARCHIVES += xbmc/input/joysticks/generic/input_joysticks_generic.a
+DIRECTORY_ARCHIVES += xbmc/input/keyboard/input_keyboard.a
DIRECTORY_ARCHIVES += xbmc/input/keyboard/generic/input_keyboard_generic.a
DIRECTORY_ARCHIVES += xbmc/input/linux/input_linux.a
+DIRECTORY_ARCHIVES += xbmc/input/mouse/input_mouse.a
+DIRECTORY_ARCHIVES += xbmc/input/mouse/generic/input_mouse_generic.a
DIRECTORY_ARCHIVES += xbmc/input/touch/input_touch.a
DIRECTORY_ARCHIVES += xbmc/input/touch/generic/input_touch_generic.a
DIRECTORY_ARCHIVES += xbmc/network/linux/network_linux.a
@@ -182,8 +194,11 @@ else
DIRECTORY_ARCHIVES += xbmc/input/joysticks/input_joysticks.a
DIRECTORY_ARCHIVES += xbmc/input/joysticks/dialogs/input_joystick_dialogs.a
DIRECTORY_ARCHIVES += xbmc/input/joysticks/generic/input_joysticks_generic.a
+DIRECTORY_ARCHIVES += xbmc/input/keyboard/input_keyboard.a
DIRECTORY_ARCHIVES += xbmc/input/keyboard/generic/input_keyboard_generic.a
DIRECTORY_ARCHIVES += xbmc/input/linux/input_linux.a
+DIRECTORY_ARCHIVES += xbmc/input/mouse/input_mouse.a
+DIRECTORY_ARCHIVES += xbmc/input/mouse/generic/input_mouse_generic.a
DIRECTORY_ARCHIVES += xbmc/input/touch/input_touch.a
DIRECTORY_ARCHIVES += xbmc/input/touch/generic/input_touch_generic.a
DIRECTORY_ARCHIVES += xbmc/network/linux/network_linux.a
@@ -227,6 +242,7 @@ LIBADDON_DIRS=\
lib/addons/library.kodi.guilib \
lib/addons/library.kodi.inputstream \
lib/addons/library.kodi.peripheral \
+ lib/addons/library.kodi.game \
ESTUARY_MEDIA=addons/skin.estuary/media
SKIN_DIRS=$(ESTUARY_MEDIA)
@@ -347,6 +363,7 @@ libaddon: exports
$(MAKE) -C lib/addons/library.kodi.adsp
$(MAKE) -C lib/addons/library.kodi.audioengine
$(MAKE) -C lib/addons/library.xbmc.codec
+ $(MAKE) -C lib/addons/library.kodi.game
$(MAKE) -C lib/addons/library.kodi.guilib
$(MAKE) -C lib/addons/library.kodi.peripheral
$(MAKE) -C lib/addons/library.xbmc.pvr
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<addon id="kodi.game" version="1.0.14" provider-name="Team-Kodi">
- <backwards-compatibility abi="1.0.14"/>
+<addon id="kodi.game" version="1.0.28" provider-name="Team-Kodi">
+ <backwards-compatibility abi="1.0.28"/>
<requires>
<import addon="xbmc.core" version="0.1.0"/>
</requires>
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "http://www.w3.org/2001/XMLSchema.dtd">
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
+ <xs:element name="extension">
+ <xs:complexType>
+ <xs:attribute name="point" type="xs:string" use="required"/>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
@@ -0,0 +1,5 @@
+# Ignore everything in this directory
+*
+# Except this file
+!.gitignore
+
@@ -16070,7 +16070,7 @@ msgstr ""
#empty strings from id 35019 to 35048
#. Name of game add-ons category
-#: xbmc/filesystem/AddonsDirectory.cpp
+#: xbmc/addons/Addon.cpp
msgctxt "#35049"
msgid "Game add-ons"
msgstr ""
@@ -16267,6 +16267,16 @@ msgctxt "#35102"
msgid "Disable joystick when this device is present"
msgstr ""
+#. Label for mouse buttons. Used in the controller mapping dialog.
+msgctxt "#35103"
+msgid "Buttons"
+msgstr ""
+
+#. Label for relative mounters like the mouse pointer. Used in the controller mapping dialog.
+msgctxt "#35104"
+msgid "Pointers"
+msgstr ""
+
#empty strings from id 35103 to 35149
#. Name of keyboard category in the settings category window
@@ -16275,7 +16285,7 @@ msgctxt "#35150"
msgid "Keyboard"
msgstr ""
-#. Name of group for configuring keyboard players
+#. Name of group in "Games -> Keyboard" for configuring keyboard players
#: system/settings/settings.xml
msgctxt "#35151"
msgid "Player configuration"
@@ -16372,7 +16382,135 @@ msgctxt "#35200"
msgid "ALL YOUR BASE ARE BELONG[CR]TO US"
msgstr ""
-#empty strings from id 35201 to 35504
+#. Name of group in "Games -> General" for configuring gameplay
+#: system/settings/settings.xml
+msgctxt "#35201"
+msgid "Gameplay"
+msgstr ""
+
+#empty string with id 35202
+
+#: system/settings/settings.xml
+msgctxt "#35203"
+msgid "Enable rewind if supported"
+msgstr ""
+
+#: system/settings/settings.xml
+msgctxt "#35204"
+msgid "Enable real-time rewinding during game play, if supported. Press rewind or manually seek backwards using the seek bar."
+msgstr ""
+
+#: system/settings/settings.xml
+msgctxt "#35205"
+msgid "Maximum rewind time"
+msgstr ""
+
+#: system/settings/settings.xml
+msgctxt "#35206"
+msgid "Maximum time possible to rewind, if supported. Large rewind histories can use a lot of RAM."
+msgstr ""
+
+#. Description of add-on category for emulators
+#: xbmc/filesystem/AddonsDirectory.cpp
+msgctxt "#35207"
+msgid "Emulators"
+msgstr ""
+
+#. Description of add-on category for standalone games
+#: xbmc/filesystem/AddonsDirectory.cpp
+msgctxt "#35208"
+msgid "Standalone games"
+msgstr ""
+
+#: xbmc/addons/Addon.cpp
+msgctxt "#35209"
+msgid "Game resources"
+msgstr ""
+
+#. Dialog title when gameplay fails
+#: xbmc/games/addons/GameClient.cpp
+#: xbmc/games/GameManager.cpp
+msgctxt "#35210"
+msgid "Failed to play game"
+msgstr ""
+
+#. Error dialog text when the game requires restricted files to play. %s - emulator ID
+#: xbmc/games/addons/GameClient.cpp
+msgctxt "#35211"
+msgid "This game requires the following add-on: %s"
+msgstr ""
+
+#. Error dialog text when launching a game and no emulators are compatible
+#: xbmc/games/GameUtils.cpp
+msgctxt "#35212"
+msgid "This game isn't compatible with any available emulators."
+msgstr ""
+
+#. Error dialog text when launching a game and the emulator has an internal error. %s - emulator name
+#: xbmc/games/GameClient.cpp
+msgctxt "#35213"
+msgid "The emulator \"%s\" had an internal error."
+msgstr ""
+
+#. Error dialog text when the game can't be played because it's not on a hard drive or partition
+#: xbmc/games/GameUtils.cpp
+msgctxt "#35214"
+msgid "This game can only be played directly from a hard drive or partition. Compressed files must be extracted."
+msgstr ""
+
+#. Error dialog text when libretro support is disabled
+#: xbmc/games/addons/GameClientProperties.cpp
+msgctxt "#35215"
+msgid "This game depends on a disabled add-on. Would you like to enable it?"
+msgstr ""
+
+#. Description of add-on category for game support add-ons like game.libretro (the libretro wrapper)
+#: xbmc/filesystem/AddonsDirectory.cpp
+msgctxt "#35216"
+msgid "Support add-ons"
+msgstr ""
+
+#empty strings from id 35217 to 35219
+
+#. Description of add-on category for game providers
+#: xbmc/filesystem/AddonsDirectory.cpp
+msgctxt "#35220"
+msgid "Game providers"
+msgstr ""
+
+#empty strings from id 35221 to 35249
+
+#: xbmc/windows/GUIMediaWindow.cpp
+msgctxt "#35250"
+msgid "Add games..."
+msgstr ""
+
+#: xbmc/dialogs/GUIDialogMediaSource.cpp
+msgctxt "#35251"
+msgid "Add game source"
+msgstr ""
+
+#: xbmc/dialogs/GUIDialogMediaSource.cpp
+msgctxt "#35252"
+msgid "Edit game source"
+msgstr ""
+
+#: xbmc/games/windows/GUIWindowGames.cpp
+msgctxt "#35253"
+msgid "Install emulator"
+msgstr ""
+
+#: xbmc/games/windows/GUIWindowGames.cpp
+msgctxt "#35254"
+msgid "Manage emulators"
+msgstr ""
+
+#: xbmc/games/dialogs/GUIDialogSelectGameClient.cpp
+msgctxt "#35255"
+msgid "Browse all emulators"
+msgstr ""
+
+#empty strings from id 35256 to 35504
#. connection state "host unreachable"
#: xbmc/addons/AddonCallbacksPVR.cpp
View
@@ -2194,6 +2194,7 @@ OUTPUT_FILES="Makefile \
lib/addons/library.kodi.adsp/Makefile \
lib/addons/library.kodi.audioengine/Makefile \
lib/addons/library.xbmc.codec/Makefile \
+ lib/addons/library.kodi.game/Makefile \
lib/addons/library.kodi.guilib/Makefile \
lib/addons/library.kodi.peripheral/Makefile \
lib/addons/library.xbmc.pvr/Makefile \
@@ -148,6 +148,18 @@
\defgroup mouse Mouse
\ingroup input
Everything around mouse
+
+ Mouse input is processed by \ref CInputManager and forwarded to
+ registered mouse handlers (e.g. game clients) or as actions to the UI:
+
+ - If no mouse handlers are registered or if they don't consume events,
+ the mouse input events are forwarded to the UI via \ref CInputManager::ProcessMouse.
+ - Clients (e.g. game clients implementing \ref MOUSE::IMouseInputHandler) call
+ \ref CInputManager::RegisterMouseHandler to register themselves as eligible
+ for mouse input events.
+ - Mouse events (from \ref CInputManager::OnEvent) are collected via implementations of
+ \ref MOUSE::IMouseDriverHandler and transformed into higher level features by
+ \ref MOUSE::IMouseButtonMap instances before they are sent to the handlers.
*/
/*!
@@ -169,6 +181,11 @@
*/
/*!
+ \defgroup games
+ Everything about RetroPlayer.
+*/
+
+/*!
\defgroup interface Interfaces
Everything around interfaces
*/
@@ -0,0 +1,2 @@
+project(KODI_game)
+core_add_addon_library(${PROJECT_NAME})
@@ -0,0 +1,29 @@
+ARCH=@ARCH@
+INCLUDES=-I. -I../../../xbmc/addons/include
+DEFINES+=
+CXXFLAGS=-fPIC
+LIBNAME=libKODI_game
+OBJS=$(LIBNAME).o
+
+ifeq ($(findstring osx,$(ARCH)), osx)
+LIB_SHARED=../../../addons/library.kodi.game/$(LIBNAME)-$(ARCH).dylib
+else
+LIB_SHARED=../../../addons/library.kodi.game/$(LIBNAME)-$(ARCH).so
+endif
+
+all: $(LIB_SHARED)
+
+$(LIB_SHARED): $(OBJS)
+ifeq ($(findstring osx,$(ARCH)), osx)
+ $(CXX) $(CXXFLAGS) $(LDFLAGS) -dynamiclib -o $@ $(OBJS)
+else
+ $(CXX) $(CFLAGS) $(LDFLAGS) -shared -g -o $(LIB_SHARED) $(OBJS)
+endif
+
+CLEAN_FILES = \
+ $(LIB_SHARED) \
+
+DISTCLEAN_FILES= \
+ Makefile \
+
+include ../../../Makefile.include
Oops, something went wrong.

0 comments on commit e2563f6

Please sign in to comment.