summaryrefslogtreecommitdiff
path: root/Runtime/Export/XboxKeyboard.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Runtime/Export/XboxKeyboard.txt')
-rw-r--r--Runtime/Export/XboxKeyboard.txt51
1 files changed, 51 insertions, 0 deletions
diff --git a/Runtime/Export/XboxKeyboard.txt b/Runtime/Export/XboxKeyboard.txt
new file mode 100644
index 0000000..c734c66
--- /dev/null
+++ b/Runtime/Export/XboxKeyboard.txt
@@ -0,0 +1,51 @@
+C++RAW
+
+#include "UnityPrefix.h"
+#include "Runtime/Scripting/ScriptingUtility.h"
+#include "Runtime/Mono/MonoManager.h"
+#include "Runtime/Mono/MonoBehaviour.h"
+#include "Runtime/Utilities/Utility.h"
+
+#if UNITY_XENON
+#include "PlatformDependent/Xbox360/Source/Services/Keyboard.h"
+#endif
+
+CSRAW
+using System;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using UnityEngine;
+
+namespace UnityEngine
+{
+ // Xbox Guide's keyboard-style input interface
+ CONDITIONAL UNITY_XENON_API
+ CLASS X360Keyboard
+
+ CSRAW
+ internal X360Keyboard() {}
+
+ // Keyboard input result
+ public delegate void DelegateResult(bool textValid, string text);
+ public static DelegateResult OnResult;
+
+ CSRAW private static void TriggerOnResult(bool textValid, string text)
+ {
+ if (OnResult != null)
+ OnResult(textValid, text);
+ }
+
+ // Shows the onscreen keyboard.
+ CUSTOM public static bool Show(UInt32 userIndex, UInt32 characterLimit, string defaultText, string titleText, string descriptionText)
+ {
+ #if UNITY_XENON
+ return xenon::Keyboard::Show(userIndex, characterLimit, MonoStringToWideCpp(defaultText.str), MonoStringToWideCpp(titleText.str), MonoStringToWideCpp(descriptionText.str));
+ #else
+ return false;
+ #endif
+ }
+
+ END
+
+CSRAW
+} // namespace