Add GameTransportControls .idl file

This commit is contained in:
Rodrigo Todescatto
2026-01-27 17:42:13 -03:00
parent 9c9baca4a7
commit f9418f2eab

View File

@@ -0,0 +1,114 @@
//All the info came from the Unity PDB.
//Since it doens't count with all definitions,
//some of them are simply placeholders and should
//not represent something correct at all.
namespace Windows.Xbox.Media
{
[version(1)]
enum GamePlaybackStatus
{
Closed,
Changing,
Stopped,
Playing,
Paused
};
[version(1)]
enum GameTransportControlsButton
{
Play,
Pause,
Menu,
View,
Back,
MaxButtons
};
//Placeholder member, correct ones are unknown at the moment.
[version(1)]
enum GameTransportControlsProperty
{
Unknown
};
//Placeholder member, correct ones are unknown at the moment.
[version(1)]
enum SoundLevel
{
Unknown
};
//Placeholder GUID, correct one is unknown at the moment.
[uuid(EAE84482-F678-4CB7-885C-821EDDFD129F)]
[version(1)]
[exclusiveto(Windows.Xbox.Media.GameTransportControlsPropertyChangedEventArgs)]
interface IGameTransportControlsPropertyChangedEventArgs : IInspectable
{
[propget] HRESULT Property([out][retval] Windows.Xbox.Media.GameTransportControlsProperty* value);
}
//Placeholder GUID, correct one is unknown at the moment.
[uuid(4E9960F2-2785-4B88-986F-04BDA2B004B6)]
[version(1)]
[exclusiveto(Windows.Xbox.Media.GameTransportControlsButtonPressedEventArgs)]
interface IGameTransportControlsButtonPressedEventArgs : IInspectable
{
[propget] HRESULT Button([out][retval] Windows.Xbox.Media.GameTransportControlsButton* value);
}
[uuid(F5BA60D7-9303-44CD-AC0C-4E532702CD00)]
[version(1)]
[exclusiveto(Windows.Xbox.Media.GameTransportControls)]
interface IGameTransportControls : IInspectable
{
[propget] HRESULT Title([out][retval] HSTRING* value);
[propput] HRESULT Title([in] HSTRING value);
[propget] HRESULT Subtitle([out][retval] HSTRING* value);
[propput] HRESULT Subtitle([in] HSTRING value);
[propget] HRESULT PlaybackStatus([out][retval] Windows.Xbox.Media.GamePlaybackStatus* value);
[propput] HRESULT PlaybackStatus([in] Windows.Xbox.Media.GamePlaybackStatus value);
[propget] HRESULT SoundLevel([out][retval] Windows.Xbox.Media.SoundLevel* value);
[propget] HRESULT IsEnabled([out][retval] boolean* value);
[propput] HRESULT IsEnabled([in] boolean value);
[propget] HRESULT IsPlayEnabled([out][retval] boolean* value);
[propput] HRESULT IsPlayEnabled([in] boolean value);
[propget] HRESULT IsPauseEnabled([out][retval] boolean* value);
[propput] HRESULT IsPauseEnabled([in] boolean value);
[propget] HRESULT IsMenuEnabled([out][retval] boolean* value);
[propput] HRESULT IsMenuEnabled([in] boolean value);
[propget] HRESULT IsViewEnabled([out][retval] boolean* value);
[propput] HRESULT IsViewEnabled([in] boolean value);
[propget] HRESULT IsBackEnabled([out][retval] boolean* value);
[propput] HRESULT IsBackEnabled([in] boolean value);
HRESULT add_ButtonPressed([in] Windows.Foundation.TypedEventHandler<Windows.Xbox.Media.GameTransportControls, Windows.Xbox.Media.GameTransportControlsButtonPressedEventArgs>* handler, [out][retval] Windows.Foundation.EventRegistrationToken* token);
HRESULT remove_ButtonPressed([in] Windows.Foundation.EventRegistrationToken token);
HRESULT add_PropertyChanged([in] Windows.Foundation.TypedEventHandler<Windows.Xbox.Media.GameTransportControls, Windows.Xbox.Media.GameTransportControlsPropertyChangedEventArgs>* handler, [out][retval] Windows.Foundation.EventRegistrationToken* token);
HRESULT remove_PropertyChanged([in] Windows.Foundation.EventRegistrationToken token);
}
[version(1)]
[default_interface]
runtimeclass GameTransportControls : IGameTransportControls {}
[version(1)]
[default_interface]
runtimeclass GameTransportControlsButtonPressedEventArgs : Windows.Xbox.Media.IGameTransportControlsButtonPressedEventArgs {}
[version(1)]
[default_interface]
runtimeclass GameTransportControlsPropertyChangedEventArgs : Windows.Xbox.Media.IGameTransportControlsPropertyChangedEventArgs {}
}