mirror of
https://github.com/ZuneDev/Xune.git
synced 2026-07-27 13:13:10 -07:00
Added raw UIX.RenderApi project
This commit is contained in:
+46
@@ -0,0 +1,46 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.IFormWindowCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop
|
||||
{
|
||||
internal interface IFormWindowCallback
|
||||
{
|
||||
void OnRendererSuspended(RENDERHANDLE target, bool fEnabled);
|
||||
|
||||
void OnNativeScreensave(RENDERHANDLE target, bool fStartScreensave);
|
||||
|
||||
void OnShellShutdownHook(RENDERHANDLE target, ushort uIdMsg);
|
||||
|
||||
void OnSetFocus(RENDERHANDLE target, bool focused, HWND hwndFocusChange);
|
||||
|
||||
void OnDropComplete(RENDERHANDLE target);
|
||||
|
||||
void OnPartialDrop(RENDERHANDLE target, string file);
|
||||
|
||||
unsafe void OnStateChange(RENDERHANDLE target, Message* stateInfo);
|
||||
|
||||
void OnTerminalSessionChange(RENDERHANDLE target, IntPtr wParam, IntPtr lParam);
|
||||
|
||||
void OnPrivateSysCommand(RENDERHANDLE target, IntPtr wParam, IntPtr lParam);
|
||||
|
||||
void OnMouseIdle(RENDERHANDLE target, bool fNewIdle);
|
||||
|
||||
void OnCloseRequested(RENDERHANDLE target);
|
||||
|
||||
void OnLoad(RENDERHANDLE target);
|
||||
|
||||
void OnWindowDestroyed(
|
||||
RENDERHANDLE target,
|
||||
uint nFinalShow,
|
||||
Rectangle rcLastPosition,
|
||||
Point ptFinalMaxPosition);
|
||||
|
||||
void OnWindowCreated(RENDERHANDLE target, HWND m_hWnd);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.IInputCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop
|
||||
{
|
||||
internal interface IInputCallback
|
||||
{
|
||||
unsafe void OnInput(RENDERHANDLE target, Message* inputInfo);
|
||||
}
|
||||
}
|
||||
+420
@@ -0,0 +1,420 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.LocalFormWindowCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop
|
||||
{
|
||||
internal class LocalFormWindowCallback : RemoteObject
|
||||
{
|
||||
private static ushort[] s_priv_ByteOrder_Msg0_OnRendererSuspended;
|
||||
private static ushort[] s_priv_ByteOrder_Msg1_OnNativeScreensave;
|
||||
private static ushort[] s_priv_ByteOrder_Msg2_OnShellShutdownHook;
|
||||
private static ushort[] s_priv_ByteOrder_Msg4_OnDropComplete;
|
||||
private static ushort[] s_priv_ByteOrder_Msg5_OnPartialDrop;
|
||||
private static ushort[] s_priv_ByteOrder_Msg6_OnStateChange;
|
||||
private static ushort[] s_priv_ByteOrder_Msg7_OnTerminalSessionChange;
|
||||
private static ushort[] s_priv_ByteOrder_Msg8_OnPrivateSysCommand;
|
||||
private static ushort[] s_priv_ByteOrder_Msg9_OnMouseIdle;
|
||||
private static ushort[] s_priv_ByteOrder_Msg10_OnCloseRequested;
|
||||
private static ushort[] s_priv_ByteOrder_Msg11_OnLoad;
|
||||
private static ushort[] s_priv_ByteOrder_Msg12_OnWindowDestroyed;
|
||||
|
||||
protected LocalFormWindowCallback()
|
||||
{
|
||||
}
|
||||
|
||||
internal static LocalFormWindowCallback CreateCallbackImpl(
|
||||
RenderPort port,
|
||||
RENDERHANDLE callbackInstance)
|
||||
{
|
||||
return new LocalFormWindowCallback(port, callbackInstance);
|
||||
}
|
||||
|
||||
protected LocalFormWindowCallback(RenderPort port, RENDERHANDLE handle)
|
||||
: base(port, handle, false)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is LocalFormWindowCallback && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(LocalFormWindowCallback.DispatchCallback), out uint _);
|
||||
|
||||
private static unsafe void DispatchCallback(
|
||||
RenderPort port,
|
||||
IRenderHandleOwner owner,
|
||||
CallbackMessage* message)
|
||||
{
|
||||
if (!(owner is IFormWindowCallback _priv_target))
|
||||
return;
|
||||
switch (message->nMsg)
|
||||
{
|
||||
case 0:
|
||||
LocalFormWindowCallback.Dispatch_OnRendererSuspended(port, _priv_target, (LocalFormWindowCallback.Msg0_OnRendererSuspended*) message);
|
||||
break;
|
||||
case 1:
|
||||
LocalFormWindowCallback.Dispatch_OnNativeScreensave(port, _priv_target, (LocalFormWindowCallback.Msg1_OnNativeScreensave*) message);
|
||||
break;
|
||||
case 2:
|
||||
LocalFormWindowCallback.Dispatch_OnShellShutdownHook(port, _priv_target, (LocalFormWindowCallback.Msg2_OnShellShutdownHook*) message);
|
||||
break;
|
||||
case 3:
|
||||
LocalFormWindowCallback.Dispatch_OnSetFocus(port, _priv_target, (LocalFormWindowCallback.Msg3_OnSetFocus*) message);
|
||||
break;
|
||||
case 4:
|
||||
LocalFormWindowCallback.Dispatch_OnDropComplete(port, _priv_target, (LocalFormWindowCallback.Msg4_OnDropComplete*) message);
|
||||
break;
|
||||
case 5:
|
||||
LocalFormWindowCallback.Dispatch_OnPartialDrop(port, _priv_target, (LocalFormWindowCallback.Msg5_OnPartialDrop*) message);
|
||||
break;
|
||||
case 6:
|
||||
LocalFormWindowCallback.Dispatch_OnStateChange(port, _priv_target, (LocalFormWindowCallback.Msg6_OnStateChange*) message);
|
||||
break;
|
||||
case 7:
|
||||
LocalFormWindowCallback.Dispatch_OnTerminalSessionChange(port, _priv_target, (LocalFormWindowCallback.Msg7_OnTerminalSessionChange*) message);
|
||||
break;
|
||||
case 8:
|
||||
LocalFormWindowCallback.Dispatch_OnPrivateSysCommand(port, _priv_target, (LocalFormWindowCallback.Msg8_OnPrivateSysCommand*) message);
|
||||
break;
|
||||
case 9:
|
||||
LocalFormWindowCallback.Dispatch_OnMouseIdle(port, _priv_target, (LocalFormWindowCallback.Msg9_OnMouseIdle*) message);
|
||||
break;
|
||||
case 10:
|
||||
LocalFormWindowCallback.Dispatch_OnCloseRequested(port, _priv_target, (LocalFormWindowCallback.Msg10_OnCloseRequested*) message);
|
||||
break;
|
||||
case 11:
|
||||
LocalFormWindowCallback.Dispatch_OnLoad(port, _priv_target, (LocalFormWindowCallback.Msg11_OnLoad*) message);
|
||||
break;
|
||||
case 12:
|
||||
LocalFormWindowCallback.Dispatch_OnWindowDestroyed(port, _priv_target, (LocalFormWindowCallback.Msg12_OnWindowDestroyed*) message);
|
||||
break;
|
||||
case 13:
|
||||
LocalFormWindowCallback.Dispatch_OnWindowCreated(port, _priv_target, (LocalFormWindowCallback.Msg13_OnWindowCreated*) message);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnRendererSuspended(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg0_OnRendererSuspended* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg0_OnRendererSuspended, typeof (LocalFormWindowCallback.Msg0_OnRendererSuspended), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
bool fEnabled = _priv_pmsg->fEnabled != 0U;
|
||||
_priv_target.OnRendererSuspended(target, fEnabled);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnNativeScreensave(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg1_OnNativeScreensave* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg1_OnNativeScreensave, typeof (LocalFormWindowCallback.Msg1_OnNativeScreensave), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
bool fStartScreensave = _priv_pmsg->fStartScreensave != 0U;
|
||||
_priv_target.OnNativeScreensave(target, fStartScreensave);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnShellShutdownHook(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg2_OnShellShutdownHook* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg2_OnShellShutdownHook, typeof (LocalFormWindowCallback.Msg2_OnShellShutdownHook), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
ushort uIdMsg = _priv_pmsg->uIdMsg;
|
||||
_priv_target.OnShellShutdownHook(target, uIdMsg);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnSetFocus(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg3_OnSetFocus* _priv_pmsg)
|
||||
{
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
bool focused = _priv_pmsg->focused != 0U;
|
||||
HWND hwndFocusChange = _priv_pmsg->hwndFocusChange;
|
||||
_priv_target.OnSetFocus(target, focused, hwndFocusChange);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnDropComplete(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg4_OnDropComplete* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg4_OnDropComplete, typeof (LocalFormWindowCallback.Msg4_OnDropComplete), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
_priv_target.OnDropComplete(target);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnPartialDrop(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg5_OnPartialDrop* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg5_OnPartialDrop, typeof (LocalFormWindowCallback.Msg5_OnPartialDrop), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
string file;
|
||||
MarshalHelper.Decode(_priv_port, (Message*) _priv_pmsg, _priv_pmsg->file, out file);
|
||||
_priv_target.OnPartialDrop(target, file);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnStateChange(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg6_OnStateChange* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg6_OnStateChange, typeof (LocalFormWindowCallback.Msg6_OnStateChange), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
Message* pmsgInner;
|
||||
MarshalHelper.Decode(_priv_port, (Message*) _priv_pmsg, _priv_pmsg->stateInfo, out pmsgInner);
|
||||
_priv_target.OnStateChange(target, pmsgInner);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnTerminalSessionChange(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg7_OnTerminalSessionChange* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg7_OnTerminalSessionChange, typeof (LocalFormWindowCallback.Msg7_OnTerminalSessionChange), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
IntPtr wParam = _priv_pmsg->wParam;
|
||||
IntPtr lParam = _priv_pmsg->lParam;
|
||||
_priv_target.OnTerminalSessionChange(target, wParam, lParam);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnPrivateSysCommand(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg8_OnPrivateSysCommand* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg8_OnPrivateSysCommand, typeof (LocalFormWindowCallback.Msg8_OnPrivateSysCommand), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
IntPtr wParam = _priv_pmsg->wParam;
|
||||
IntPtr lParam = _priv_pmsg->lParam;
|
||||
_priv_target.OnPrivateSysCommand(target, wParam, lParam);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnMouseIdle(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg9_OnMouseIdle* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg9_OnMouseIdle, typeof (LocalFormWindowCallback.Msg9_OnMouseIdle), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
bool fNewIdle = _priv_pmsg->fNewIdle != 0U;
|
||||
_priv_target.OnMouseIdle(target, fNewIdle);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnCloseRequested(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg10_OnCloseRequested* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg10_OnCloseRequested, typeof (LocalFormWindowCallback.Msg10_OnCloseRequested), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
_priv_target.OnCloseRequested(target);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnLoad(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg11_OnLoad* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg11_OnLoad, typeof (LocalFormWindowCallback.Msg11_OnLoad), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
_priv_target.OnLoad(target);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnWindowDestroyed(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg12_OnWindowDestroyed* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalFormWindowCallback.s_priv_ByteOrder_Msg12_OnWindowDestroyed, typeof (LocalFormWindowCallback.Msg12_OnWindowDestroyed), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
uint nFinalShow = _priv_pmsg->nFinalShow;
|
||||
Rectangle rcLastPosition = _priv_pmsg->rcLastPosition;
|
||||
Point finalMaxPosition = _priv_pmsg->ptFinalMaxPosition;
|
||||
_priv_target.OnWindowDestroyed(target, nFinalShow, rcLastPosition, finalMaxPosition);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnWindowCreated(
|
||||
RenderPort _priv_port,
|
||||
IFormWindowCallback _priv_target,
|
||||
LocalFormWindowCallback.Msg13_OnWindowCreated* _priv_pmsg)
|
||||
{
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
HWND hWnd = _priv_pmsg->m_hWnd;
|
||||
_priv_target.OnWindowCreated(target, hWnd);
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
private static unsafe void OnInvalidCallback(CallbackMessage* message, string category)
|
||||
{
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg0_OnRendererSuspended
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public uint fEnabled;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg1_OnNativeScreensave
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public uint fStartScreensave;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg2_OnShellShutdownHook
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public ushort uIdMsg;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg3_OnSetFocus
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public uint focused;
|
||||
public HWND hwndFocusChange;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg4_OnDropComplete
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg5_OnPartialDrop
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public BLOBREF file;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg6_OnStateChange
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public BLOBREF stateInfo;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg7_OnTerminalSessionChange
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public IntPtr wParam;
|
||||
public IntPtr lParam;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg8_OnPrivateSysCommand
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public IntPtr wParam;
|
||||
public IntPtr lParam;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg9_OnMouseIdle
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public uint fNewIdle;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg10_OnCloseRequested
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg11_OnLoad
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg12_OnWindowDestroyed
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public uint nFinalShow;
|
||||
public Rectangle rcLastPosition;
|
||||
public Point ptFinalMaxPosition;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg13_OnWindowCreated
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public HWND m_hWnd;
|
||||
}
|
||||
}
|
||||
}
|
||||
+77
@@ -0,0 +1,77 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.LocalInputCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop
|
||||
{
|
||||
internal class LocalInputCallback : RemoteObject
|
||||
{
|
||||
private static ushort[] s_priv_ByteOrder_Msg0_OnInput;
|
||||
|
||||
protected LocalInputCallback()
|
||||
{
|
||||
}
|
||||
|
||||
internal static LocalInputCallback CreateCallbackImpl(
|
||||
RenderPort port,
|
||||
RENDERHANDLE callbackInstance)
|
||||
{
|
||||
return new LocalInputCallback(port, callbackInstance);
|
||||
}
|
||||
|
||||
protected LocalInputCallback(RenderPort port, RENDERHANDLE handle)
|
||||
: base(port, handle, false)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is LocalInputCallback && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(LocalInputCallback.DispatchCallback), out uint _);
|
||||
|
||||
private static unsafe void DispatchCallback(
|
||||
RenderPort port,
|
||||
IRenderHandleOwner owner,
|
||||
CallbackMessage* message)
|
||||
{
|
||||
if (!(owner is IInputCallback _priv_target) || message->nMsg != 0U)
|
||||
return;
|
||||
LocalInputCallback.Dispatch_OnInput(port, _priv_target, (LocalInputCallback.Msg0_OnInput*) message);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnInput(
|
||||
RenderPort _priv_port,
|
||||
IInputCallback _priv_target,
|
||||
LocalInputCallback.Msg0_OnInput* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalInputCallback.s_priv_ByteOrder_Msg0_OnInput, typeof (LocalInputCallback.Msg0_OnInput), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
Message* pmsgInner;
|
||||
MarshalHelper.Decode(_priv_port, (Message*) _priv_pmsg, _priv_pmsg->inputInfo, out pmsgInner);
|
||||
_priv_target.OnInput(target, pmsgInner);
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
private static unsafe void OnInvalidCallback(CallbackMessage* message, string category)
|
||||
{
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg0_OnInput
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public BLOBREF inputInfo;
|
||||
}
|
||||
}
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt.IDesktopManagerCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Internal;
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
|
||||
{
|
||||
internal interface IDesktopManagerCallback
|
||||
{
|
||||
void OnEndDisplayModes(RENDERHANDLE target);
|
||||
|
||||
void OnDisplayMode(RENDERHANDLE target, RenderDisplayMode mode, bool fSupported);
|
||||
|
||||
void OnBeginDisplayModes(RENDERHANDLE target);
|
||||
|
||||
void OnEndEnumMonitorInfo(RENDERHANDLE target);
|
||||
|
||||
unsafe void OnMonitorInfo(RENDERHANDLE target, Message* info);
|
||||
|
||||
void OnBeginEnumMonitorInfo(RENDERHANDLE target);
|
||||
}
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt.IHwndHostWindowCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
|
||||
{
|
||||
internal interface IHwndHostWindowCallback
|
||||
{
|
||||
void OnHandleChanged(RENDERHANDLE target, HWND m_hWnd);
|
||||
}
|
||||
}
|
||||
+207
@@ -0,0 +1,207 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt.LocalDesktopManagerCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Internal;
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
|
||||
{
|
||||
internal class LocalDesktopManagerCallback : RemoteObject
|
||||
{
|
||||
private static ushort[] s_priv_ByteOrder_Msg0_OnEndDisplayModes;
|
||||
private static ushort[] s_priv_ByteOrder_Msg1_OnDisplayMode;
|
||||
private static ushort[] s_priv_ByteOrder_Msg2_OnBeginDisplayModes;
|
||||
private static ushort[] s_priv_ByteOrder_Msg3_OnEndEnumMonitorInfo;
|
||||
private static ushort[] s_priv_ByteOrder_Msg4_OnMonitorInfo;
|
||||
private static ushort[] s_priv_ByteOrder_Msg5_OnBeginEnumMonitorInfo;
|
||||
|
||||
protected LocalDesktopManagerCallback()
|
||||
{
|
||||
}
|
||||
|
||||
internal static LocalDesktopManagerCallback CreateCallbackImpl(
|
||||
RenderPort port,
|
||||
RENDERHANDLE callbackInstance)
|
||||
{
|
||||
return new LocalDesktopManagerCallback(port, callbackInstance);
|
||||
}
|
||||
|
||||
protected LocalDesktopManagerCallback(RenderPort port, RENDERHANDLE handle)
|
||||
: base(port, handle, false)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is LocalDesktopManagerCallback && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(LocalDesktopManagerCallback.DispatchCallback), out uint _);
|
||||
|
||||
private static unsafe void DispatchCallback(
|
||||
RenderPort port,
|
||||
IRenderHandleOwner owner,
|
||||
CallbackMessage* message)
|
||||
{
|
||||
if (!(owner is IDesktopManagerCallback _priv_target))
|
||||
return;
|
||||
switch (message->nMsg)
|
||||
{
|
||||
case 0:
|
||||
LocalDesktopManagerCallback.Dispatch_OnEndDisplayModes(port, _priv_target, (LocalDesktopManagerCallback.Msg0_OnEndDisplayModes*) message);
|
||||
break;
|
||||
case 1:
|
||||
LocalDesktopManagerCallback.Dispatch_OnDisplayMode(port, _priv_target, (LocalDesktopManagerCallback.Msg1_OnDisplayMode*) message);
|
||||
break;
|
||||
case 2:
|
||||
LocalDesktopManagerCallback.Dispatch_OnBeginDisplayModes(port, _priv_target, (LocalDesktopManagerCallback.Msg2_OnBeginDisplayModes*) message);
|
||||
break;
|
||||
case 3:
|
||||
LocalDesktopManagerCallback.Dispatch_OnEndEnumMonitorInfo(port, _priv_target, (LocalDesktopManagerCallback.Msg3_OnEndEnumMonitorInfo*) message);
|
||||
break;
|
||||
case 4:
|
||||
LocalDesktopManagerCallback.Dispatch_OnMonitorInfo(port, _priv_target, (LocalDesktopManagerCallback.Msg4_OnMonitorInfo*) message);
|
||||
break;
|
||||
case 5:
|
||||
LocalDesktopManagerCallback.Dispatch_OnBeginEnumMonitorInfo(port, _priv_target, (LocalDesktopManagerCallback.Msg5_OnBeginEnumMonitorInfo*) message);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnEndDisplayModes(
|
||||
RenderPort _priv_port,
|
||||
IDesktopManagerCallback _priv_target,
|
||||
LocalDesktopManagerCallback.Msg0_OnEndDisplayModes* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalDesktopManagerCallback.s_priv_ByteOrder_Msg0_OnEndDisplayModes, typeof (LocalDesktopManagerCallback.Msg0_OnEndDisplayModes), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
_priv_target.OnEndDisplayModes(target);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnDisplayMode(
|
||||
RenderPort _priv_port,
|
||||
IDesktopManagerCallback _priv_target,
|
||||
LocalDesktopManagerCallback.Msg1_OnDisplayMode* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalDesktopManagerCallback.s_priv_ByteOrder_Msg1_OnDisplayMode, typeof (LocalDesktopManagerCallback.Msg1_OnDisplayMode), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
RenderDisplayMode mode = _priv_pmsg->mode;
|
||||
bool fSupported = _priv_pmsg->fSupported != 0U;
|
||||
_priv_target.OnDisplayMode(target, mode, fSupported);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnBeginDisplayModes(
|
||||
RenderPort _priv_port,
|
||||
IDesktopManagerCallback _priv_target,
|
||||
LocalDesktopManagerCallback.Msg2_OnBeginDisplayModes* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalDesktopManagerCallback.s_priv_ByteOrder_Msg2_OnBeginDisplayModes, typeof (LocalDesktopManagerCallback.Msg2_OnBeginDisplayModes), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
_priv_target.OnBeginDisplayModes(target);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnEndEnumMonitorInfo(
|
||||
RenderPort _priv_port,
|
||||
IDesktopManagerCallback _priv_target,
|
||||
LocalDesktopManagerCallback.Msg3_OnEndEnumMonitorInfo* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalDesktopManagerCallback.s_priv_ByteOrder_Msg3_OnEndEnumMonitorInfo, typeof (LocalDesktopManagerCallback.Msg3_OnEndEnumMonitorInfo), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
_priv_target.OnEndEnumMonitorInfo(target);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnMonitorInfo(
|
||||
RenderPort _priv_port,
|
||||
IDesktopManagerCallback _priv_target,
|
||||
LocalDesktopManagerCallback.Msg4_OnMonitorInfo* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalDesktopManagerCallback.s_priv_ByteOrder_Msg4_OnMonitorInfo, typeof (LocalDesktopManagerCallback.Msg4_OnMonitorInfo), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
Message* pmsgInner;
|
||||
MarshalHelper.Decode(_priv_port, (Message*) _priv_pmsg, _priv_pmsg->info, out pmsgInner);
|
||||
_priv_target.OnMonitorInfo(target, pmsgInner);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnBeginEnumMonitorInfo(
|
||||
RenderPort _priv_port,
|
||||
IDesktopManagerCallback _priv_target,
|
||||
LocalDesktopManagerCallback.Msg5_OnBeginEnumMonitorInfo* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalDesktopManagerCallback.s_priv_ByteOrder_Msg5_OnBeginEnumMonitorInfo, typeof (LocalDesktopManagerCallback.Msg5_OnBeginEnumMonitorInfo), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
_priv_target.OnBeginEnumMonitorInfo(target);
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
private static unsafe void OnInvalidCallback(CallbackMessage* message, string category)
|
||||
{
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg0_OnEndDisplayModes
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg1_OnDisplayMode
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public RenderDisplayMode mode;
|
||||
public uint fSupported;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg2_OnBeginDisplayModes
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg3_OnEndEnumMonitorInfo
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg4_OnMonitorInfo
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public BLOBREF info;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg5_OnBeginEnumMonitorInfo
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
}
|
||||
}
|
||||
}
|
||||
+72
@@ -0,0 +1,72 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt.LocalHwndHostWindowCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
|
||||
{
|
||||
internal class LocalHwndHostWindowCallback : RemoteObject
|
||||
{
|
||||
protected LocalHwndHostWindowCallback()
|
||||
{
|
||||
}
|
||||
|
||||
internal static LocalHwndHostWindowCallback CreateCallbackImpl(
|
||||
RenderPort port,
|
||||
RENDERHANDLE callbackInstance)
|
||||
{
|
||||
return new LocalHwndHostWindowCallback(port, callbackInstance);
|
||||
}
|
||||
|
||||
protected LocalHwndHostWindowCallback(RenderPort port, RENDERHANDLE handle)
|
||||
: base(port, handle, false)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is LocalHwndHostWindowCallback && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(LocalHwndHostWindowCallback.DispatchCallback), out uint _);
|
||||
|
||||
private static unsafe void DispatchCallback(
|
||||
RenderPort port,
|
||||
IRenderHandleOwner owner,
|
||||
CallbackMessage* message)
|
||||
{
|
||||
if (!(owner is IHwndHostWindowCallback _priv_target) || message->nMsg != 0U)
|
||||
return;
|
||||
LocalHwndHostWindowCallback.Dispatch_OnHandleChanged(port, _priv_target, (LocalHwndHostWindowCallback.Msg0_OnHandleChanged*) message);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnHandleChanged(
|
||||
RenderPort _priv_port,
|
||||
IHwndHostWindowCallback _priv_target,
|
||||
LocalHwndHostWindowCallback.Msg0_OnHandleChanged* _priv_pmsg)
|
||||
{
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
HWND hWnd = _priv_pmsg->m_hWnd;
|
||||
_priv_target.OnHandleChanged(target, hWnd);
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
private static unsafe void OnInvalidCallback(CallbackMessage* message, string category)
|
||||
{
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg0_OnHandleChanged
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
public HWND m_hWnd;
|
||||
}
|
||||
}
|
||||
}
|
||||
+89
@@ -0,0 +1,89 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt.ProtocolSplashDesktopNt
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Common;
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
|
||||
{
|
||||
internal sealed class ProtocolSplashDesktopNt : ProtocolInstance
|
||||
{
|
||||
private RENDERHANDLE _priv_remoteClass_FormWindow;
|
||||
private RENDERHANDLE _priv_remoteClass_HwndHostWindow;
|
||||
private RENDERHANDLE _priv_remoteClass_DesktopManager;
|
||||
private RENDERHANDLE _priv_callbackInstance_HwndHostWindowCallback;
|
||||
private RENDERHANDLE _priv_callbackInstance_DesktopManagerCallback;
|
||||
|
||||
public static ProtocolSplashDesktopNt Bind(RenderPort port)
|
||||
{
|
||||
Debug2.Validate(port != null, typeof (ArgumentNullException), nameof (port));
|
||||
ProtocolInstance protocolInstance = port.LookUpProtocol("Splash::Desktop::Nt");
|
||||
if (protocolInstance != null)
|
||||
{
|
||||
ProtocolSplashDesktopNt protocolSplashDesktopNt = protocolInstance as ProtocolSplashDesktopNt;
|
||||
Debug2.Validate(protocolSplashDesktopNt != null, typeof (InvalidOperationException), "protocol name collision");
|
||||
return protocolSplashDesktopNt;
|
||||
}
|
||||
ProtocolSplashDesktopNt protocolSplashDesktopNt1 = new ProtocolSplashDesktopNt(port);
|
||||
port.BindProtocol((ProtocolInstance) protocolSplashDesktopNt1);
|
||||
return protocolSplashDesktopNt1;
|
||||
}
|
||||
|
||||
public LocalHwndHostWindowCallback LocalHwndHostWindowCallbackHandle => LocalHwndHostWindowCallback.CreateCallbackImpl(this.Port, this._priv_callbackInstance_HwndHostWindowCallback);
|
||||
|
||||
public LocalDesktopManagerCallback LocalDesktopManagerCallbackHandle => LocalDesktopManagerCallback.CreateCallbackImpl(this.Port, this._priv_callbackInstance_DesktopManagerCallback);
|
||||
|
||||
private ProtocolSplashDesktopNt(RenderPort port)
|
||||
: base(port, "Splash::Desktop::Nt")
|
||||
{
|
||||
}
|
||||
|
||||
protected override void Init()
|
||||
{
|
||||
RenderPort port = this.Port;
|
||||
this._priv_remoteClass_FormWindow = port.InitRemoteClass("Splash::Desktop::Nt::FormWindow");
|
||||
this._priv_remoteClass_HwndHostWindow = port.InitRemoteClass("Splash::Desktop::Nt::HwndHostWindow");
|
||||
this._priv_remoteClass_DesktopManager = port.InitRemoteClass("Splash::Desktop::Nt::DesktopManager");
|
||||
this._priv_callbackInstance_HwndHostWindowCallback = LocalHwndHostWindowCallback.BindCallback(port);
|
||||
this._priv_callbackInstance_DesktopManagerCallback = LocalDesktopManagerCallback.BindCallback(port);
|
||||
}
|
||||
|
||||
internal RENDERHANDLE FormWindow_ClassHandle => this._priv_remoteClass_FormWindow;
|
||||
|
||||
internal RENDERHANDLE HwndHostWindow_ClassHandle => this._priv_remoteClass_HwndHostWindow;
|
||||
|
||||
internal RENDERHANDLE DesktopManager_ClassHandle => this._priv_remoteClass_DesktopManager;
|
||||
|
||||
internal RENDERHANDLE HwndHostWindowCallback_CallbackInstance => this._priv_callbackInstance_HwndHostWindowCallback;
|
||||
|
||||
internal RENDERHANDLE DesktopManagerCallback_CallbackInstance => this._priv_callbackInstance_DesktopManagerCallback;
|
||||
|
||||
internal RemoteFormWindow BuildRemoteFormWindow(
|
||||
IRenderHandleOwner _priv_owner,
|
||||
RemoteDesktopManager manager,
|
||||
LocalFormWindowCallback cb)
|
||||
{
|
||||
return RemoteFormWindow.Create(this, _priv_owner, manager, cb);
|
||||
}
|
||||
|
||||
internal RemoteHwndHostWindow BuildRemoteHwndHostWindow(
|
||||
IRenderHandleOwner _priv_owner,
|
||||
RemoteFormWindow winParent,
|
||||
LocalHwndHostWindowCallback cb)
|
||||
{
|
||||
return RemoteHwndHostWindow.Create(this, _priv_owner, winParent, cb);
|
||||
}
|
||||
|
||||
internal RemoteDesktopManager BuildRemoteDesktopManager(
|
||||
IRenderHandleOwner _priv_owner,
|
||||
LocalDesktopManagerCallback cb,
|
||||
bool fEnumDisplayModes)
|
||||
{
|
||||
return RemoteDesktopManager.Create(this, _priv_owner, cb, fEnumDisplayModes);
|
||||
}
|
||||
}
|
||||
}
|
||||
+168
@@ -0,0 +1,168 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt.RemoteDesktopManager
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Common;
|
||||
using Microsoft.Iris.Render.Internal;
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
|
||||
{
|
||||
internal class RemoteDesktopManager : RemoteObject
|
||||
{
|
||||
private static ushort[] s_priv_ByteOrder_Msg2_Create;
|
||||
private static ushort[] s_priv_ByteOrder_Msg0_RebuildMonitorCache;
|
||||
private static ushort[] s_priv_ByteOrder_Msg1_ChangeFullScreenMode;
|
||||
|
||||
protected RemoteDesktopManager()
|
||||
{
|
||||
}
|
||||
|
||||
public static unsafe RemoteDesktopManager Create(
|
||||
ProtocolSplashDesktopNt _priv_protocolInstance,
|
||||
IRenderHandleOwner _priv_owner,
|
||||
LocalDesktopManagerCallback cb,
|
||||
bool fEnumDisplayModes)
|
||||
{
|
||||
RenderPort port = _priv_protocolInstance.Port;
|
||||
RENDERHANDLE managerClassHandle = _priv_protocolInstance.DesktopManager_ClassHandle;
|
||||
RemoteDesktopManager remoteDesktopManager = new RemoteDesktopManager(port, _priv_owner);
|
||||
uint num = (uint) sizeof (RemoteDesktopManager.Msg2_Create);
|
||||
// ISSUE: untyped stack allocation
|
||||
byte* pMem = (byte*) __untypedstackalloc(1 * (int) num);
|
||||
RemoteDesktopManager.Msg2_Create* msg2CreatePtr = (RemoteDesktopManager.Msg2_Create*) pMem;
|
||||
msg2CreatePtr->_priv_size = num;
|
||||
msg2CreatePtr->_priv_msgid = 2U;
|
||||
msg2CreatePtr->_priv_objcb = cb.RenderHandle;
|
||||
msg2CreatePtr->_priv_ctxcb = port.Session.LocalContext;
|
||||
msg2CreatePtr->fEnumDisplayModes = fEnumDisplayModes ? uint.MaxValue : 0U;
|
||||
msg2CreatePtr->_priv_idObjectSubject = remoteDesktopManager.m_renderHandle;
|
||||
if (port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder(pMem, ref RemoteDesktopManager.s_priv_ByteOrder_Msg2_Create, typeof (RemoteDesktopManager.Msg2_Create), 0, 0);
|
||||
port.CreateRemoteObject(managerClassHandle, remoteDesktopManager.m_renderHandle, (Message*) msg2CreatePtr);
|
||||
return remoteDesktopManager;
|
||||
}
|
||||
|
||||
public unsafe void BuildRebuildMonitorCache(
|
||||
out RenderPort _priv_portUse,
|
||||
out Message* _priv_pmsgUse)
|
||||
{
|
||||
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
||||
_priv_portUse = this.m_renderPort;
|
||||
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
||||
uint size = (uint) sizeof (RemoteDesktopManager.Msg0_RebuildMonitorCache);
|
||||
RemoteDesktopManager.Msg0_RebuildMonitorCache* rebuildMonitorCachePtr = (RemoteDesktopManager.Msg0_RebuildMonitorCache*) _priv_portUse.AllocMessageBuffer(size);
|
||||
rebuildMonitorCachePtr->_priv_size = size;
|
||||
rebuildMonitorCachePtr->_priv_msgid = 0U;
|
||||
rebuildMonitorCachePtr->_priv_idObjectSubject = this.m_renderHandle;
|
||||
if (_priv_portUse.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) rebuildMonitorCachePtr, ref RemoteDesktopManager.s_priv_ByteOrder_Msg0_RebuildMonitorCache, typeof (RemoteDesktopManager.Msg0_RebuildMonitorCache), 0, 0);
|
||||
_priv_pmsgUse = (Message*) rebuildMonitorCachePtr;
|
||||
}
|
||||
|
||||
public unsafe void SendRebuildMonitorCache()
|
||||
{
|
||||
RenderPort _priv_portUse;
|
||||
Message* _priv_pmsgUse;
|
||||
this.BuildRebuildMonitorCache(out _priv_portUse, out _priv_pmsgUse);
|
||||
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
||||
}
|
||||
|
||||
public unsafe void BuildChangeFullScreenMode(
|
||||
out RenderPort _priv_portUse,
|
||||
out Message* _priv_pmsgUse,
|
||||
uint idDisplay,
|
||||
RenderDisplayMode mode,
|
||||
bool fTvMode)
|
||||
{
|
||||
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
||||
_priv_portUse = this.m_renderPort;
|
||||
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
||||
uint size = (uint) sizeof (RemoteDesktopManager.Msg1_ChangeFullScreenMode);
|
||||
RemoteDesktopManager.Msg1_ChangeFullScreenMode* changeFullScreenModePtr = (RemoteDesktopManager.Msg1_ChangeFullScreenMode*) _priv_portUse.AllocMessageBuffer(size);
|
||||
changeFullScreenModePtr->_priv_size = size;
|
||||
changeFullScreenModePtr->_priv_msgid = 1U;
|
||||
changeFullScreenModePtr->idDisplay = idDisplay;
|
||||
changeFullScreenModePtr->mode = mode;
|
||||
changeFullScreenModePtr->fTvMode = fTvMode ? uint.MaxValue : 0U;
|
||||
changeFullScreenModePtr->_priv_idObjectSubject = this.m_renderHandle;
|
||||
if (_priv_portUse.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) changeFullScreenModePtr, ref RemoteDesktopManager.s_priv_ByteOrder_Msg1_ChangeFullScreenMode, typeof (RemoteDesktopManager.Msg1_ChangeFullScreenMode), 0, 0);
|
||||
_priv_pmsgUse = (Message*) changeFullScreenModePtr;
|
||||
}
|
||||
|
||||
public unsafe void SendChangeFullScreenMode(
|
||||
uint idDisplay,
|
||||
RenderDisplayMode mode,
|
||||
bool fTvMode)
|
||||
{
|
||||
RenderPort _priv_portUse;
|
||||
Message* _priv_pmsgUse;
|
||||
this.BuildChangeFullScreenMode(out _priv_portUse, out _priv_pmsgUse, idDisplay, mode, fTvMode);
|
||||
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
||||
}
|
||||
|
||||
public static RemoteDesktopManager CreateFromHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle)
|
||||
{
|
||||
return new RemoteDesktopManager(port, handle, true);
|
||||
}
|
||||
|
||||
public static RemoteDesktopManager CreateFromExternalHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle,
|
||||
IRenderHandleOwner owner)
|
||||
{
|
||||
port.RegisterKnownHandle(owner, handle);
|
||||
return new RemoteDesktopManager(port, handle, false);
|
||||
}
|
||||
|
||||
protected RemoteDesktopManager(RenderPort port, RENDERHANDLE handle, bool fFreeOnDispose)
|
||||
: base(port, handle, fFreeOnDispose)
|
||||
{
|
||||
}
|
||||
|
||||
protected RemoteDesktopManager(RenderPort port, IRenderHandleOwner owner)
|
||||
: base(port, owner)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is RemoteDesktopManager && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg2_Create
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE _priv_objcb;
|
||||
public ContextID _priv_ctxcb;
|
||||
public uint fEnumDisplayModes;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg0_RebuildMonitorCache
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg1_ChangeFullScreenMode
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public uint idDisplay;
|
||||
public RenderDisplayMode mode;
|
||||
public uint fTvMode;
|
||||
}
|
||||
}
|
||||
}
|
||||
+86
@@ -0,0 +1,86 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt.RemoteFormWindow
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
|
||||
{
|
||||
internal class RemoteFormWindow : RemoteFormWindowBase
|
||||
{
|
||||
private static ushort[] s_priv_ByteOrder_Msg41_Create;
|
||||
|
||||
protected RemoteFormWindow()
|
||||
{
|
||||
}
|
||||
|
||||
public static unsafe RemoteFormWindow Create(
|
||||
ProtocolSplashDesktopNt _priv_protocolInstance,
|
||||
IRenderHandleOwner _priv_owner,
|
||||
RemoteDesktopManager manager,
|
||||
LocalFormWindowCallback cb)
|
||||
{
|
||||
RenderPort port = _priv_protocolInstance.Port;
|
||||
RENDERHANDLE windowClassHandle = _priv_protocolInstance.FormWindow_ClassHandle;
|
||||
RemoteFormWindow remoteFormWindow = new RemoteFormWindow(port, _priv_owner);
|
||||
uint num = (uint) sizeof (RemoteFormWindow.Msg41_Create);
|
||||
// ISSUE: untyped stack allocation
|
||||
byte* pMem = (byte*) __untypedstackalloc(1 * (int) num);
|
||||
RemoteFormWindow.Msg41_Create* msg41CreatePtr = (RemoteFormWindow.Msg41_Create*) pMem;
|
||||
msg41CreatePtr->_priv_size = num;
|
||||
msg41CreatePtr->_priv_msgid = 41U;
|
||||
msg41CreatePtr->manager = manager != null ? manager.RenderHandle : RENDERHANDLE.NULL;
|
||||
msg41CreatePtr->_priv_objcb = cb.RenderHandle;
|
||||
msg41CreatePtr->_priv_ctxcb = port.Session.LocalContext;
|
||||
msg41CreatePtr->_priv_idObjectSubject = remoteFormWindow.m_renderHandle;
|
||||
if (port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder(pMem, ref RemoteFormWindow.s_priv_ByteOrder_Msg41_Create, typeof (RemoteFormWindow.Msg41_Create), 0, 0);
|
||||
port.CreateRemoteObject(windowClassHandle, remoteFormWindow.m_renderHandle, (Message*) msg41CreatePtr);
|
||||
return remoteFormWindow;
|
||||
}
|
||||
|
||||
public static RemoteFormWindow CreateFromHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle)
|
||||
{
|
||||
return new RemoteFormWindow(port, handle, true);
|
||||
}
|
||||
|
||||
public static RemoteFormWindow CreateFromExternalHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle,
|
||||
IRenderHandleOwner owner)
|
||||
{
|
||||
port.RegisterKnownHandle(owner, handle);
|
||||
return new RemoteFormWindow(port, handle, false);
|
||||
}
|
||||
|
||||
protected RemoteFormWindow(RenderPort port, RENDERHANDLE handle, bool fFreeOnDispose)
|
||||
: base(port, handle, fFreeOnDispose)
|
||||
{
|
||||
}
|
||||
|
||||
protected RemoteFormWindow(RenderPort port, IRenderHandleOwner owner)
|
||||
: base(port, owner)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is RemoteFormWindow && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg41_Create
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE manager;
|
||||
public RENDERHANDLE _priv_objcb;
|
||||
public ContextID _priv_ctxcb;
|
||||
}
|
||||
}
|
||||
}
|
||||
+235
@@ -0,0 +1,235 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt.RemoteHwndHostWindow
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Common;
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
|
||||
{
|
||||
internal class RemoteHwndHostWindow : RemoteObject
|
||||
{
|
||||
private static ushort[] s_priv_ByteOrder_Msg4_Create;
|
||||
private static ushort[] s_priv_ByteOrder_Msg0_SetVisible;
|
||||
private static ushort[] s_priv_ByteOrder_Msg1_SetSize;
|
||||
private static ushort[] s_priv_ByteOrder_Msg2_SetPosition;
|
||||
private static ushort[] s_priv_ByteOrder_Msg3_SetBackgroundColor;
|
||||
|
||||
protected RemoteHwndHostWindow()
|
||||
{
|
||||
}
|
||||
|
||||
public static unsafe RemoteHwndHostWindow Create(
|
||||
ProtocolSplashDesktopNt _priv_protocolInstance,
|
||||
IRenderHandleOwner _priv_owner,
|
||||
RemoteFormWindow winParent,
|
||||
LocalHwndHostWindowCallback cb)
|
||||
{
|
||||
RenderPort port = _priv_protocolInstance.Port;
|
||||
RENDERHANDLE windowClassHandle = _priv_protocolInstance.HwndHostWindow_ClassHandle;
|
||||
RemoteHwndHostWindow remoteHwndHostWindow = new RemoteHwndHostWindow(port, _priv_owner);
|
||||
uint num = (uint) sizeof (RemoteHwndHostWindow.Msg4_Create);
|
||||
// ISSUE: untyped stack allocation
|
||||
byte* pMem = (byte*) __untypedstackalloc(1 * (int) num);
|
||||
RemoteHwndHostWindow.Msg4_Create* msg4CreatePtr = (RemoteHwndHostWindow.Msg4_Create*) pMem;
|
||||
msg4CreatePtr->_priv_size = num;
|
||||
msg4CreatePtr->_priv_msgid = 4U;
|
||||
msg4CreatePtr->winParent = winParent != null ? winParent.RenderHandle : RENDERHANDLE.NULL;
|
||||
msg4CreatePtr->_priv_objcb = cb.RenderHandle;
|
||||
msg4CreatePtr->_priv_ctxcb = port.Session.LocalContext;
|
||||
msg4CreatePtr->_priv_idObjectSubject = remoteHwndHostWindow.m_renderHandle;
|
||||
if (port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder(pMem, ref RemoteHwndHostWindow.s_priv_ByteOrder_Msg4_Create, typeof (RemoteHwndHostWindow.Msg4_Create), 0, 0);
|
||||
port.CreateRemoteObject(windowClassHandle, remoteHwndHostWindow.m_renderHandle, (Message*) msg4CreatePtr);
|
||||
return remoteHwndHostWindow;
|
||||
}
|
||||
|
||||
public unsafe void BuildSetVisible(
|
||||
out RenderPort _priv_portUse,
|
||||
out Message* _priv_pmsgUse,
|
||||
bool fVisible)
|
||||
{
|
||||
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
||||
_priv_portUse = this.m_renderPort;
|
||||
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
||||
uint size = (uint) sizeof (RemoteHwndHostWindow.Msg0_SetVisible);
|
||||
RemoteHwndHostWindow.Msg0_SetVisible* msg0SetVisiblePtr = (RemoteHwndHostWindow.Msg0_SetVisible*) _priv_portUse.AllocMessageBuffer(size);
|
||||
msg0SetVisiblePtr->_priv_size = size;
|
||||
msg0SetVisiblePtr->_priv_msgid = 0U;
|
||||
msg0SetVisiblePtr->fVisible = fVisible ? uint.MaxValue : 0U;
|
||||
msg0SetVisiblePtr->_priv_idObjectSubject = this.m_renderHandle;
|
||||
if (_priv_portUse.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) msg0SetVisiblePtr, ref RemoteHwndHostWindow.s_priv_ByteOrder_Msg0_SetVisible, typeof (RemoteHwndHostWindow.Msg0_SetVisible), 0, 0);
|
||||
_priv_pmsgUse = (Message*) msg0SetVisiblePtr;
|
||||
}
|
||||
|
||||
public unsafe void SendSetVisible(bool fVisible)
|
||||
{
|
||||
RenderPort _priv_portUse;
|
||||
Message* _priv_pmsgUse;
|
||||
this.BuildSetVisible(out _priv_portUse, out _priv_pmsgUse, fVisible);
|
||||
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
||||
}
|
||||
|
||||
public unsafe void BuildSetSize(
|
||||
out RenderPort _priv_portUse,
|
||||
out Message* _priv_pmsgUse,
|
||||
Size sizeWindowPxl)
|
||||
{
|
||||
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
||||
_priv_portUse = this.m_renderPort;
|
||||
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
||||
uint size = (uint) sizeof (RemoteHwndHostWindow.Msg1_SetSize);
|
||||
RemoteHwndHostWindow.Msg1_SetSize* msg1SetSizePtr = (RemoteHwndHostWindow.Msg1_SetSize*) _priv_portUse.AllocMessageBuffer(size);
|
||||
msg1SetSizePtr->_priv_size = size;
|
||||
msg1SetSizePtr->_priv_msgid = 1U;
|
||||
msg1SetSizePtr->sizeWindowPxl = sizeWindowPxl;
|
||||
msg1SetSizePtr->_priv_idObjectSubject = this.m_renderHandle;
|
||||
if (_priv_portUse.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) msg1SetSizePtr, ref RemoteHwndHostWindow.s_priv_ByteOrder_Msg1_SetSize, typeof (RemoteHwndHostWindow.Msg1_SetSize), 0, 0);
|
||||
_priv_pmsgUse = (Message*) msg1SetSizePtr;
|
||||
}
|
||||
|
||||
public unsafe void SendSetSize(Size sizeWindowPxl)
|
||||
{
|
||||
RenderPort _priv_portUse;
|
||||
Message* _priv_pmsgUse;
|
||||
this.BuildSetSize(out _priv_portUse, out _priv_pmsgUse, sizeWindowPxl);
|
||||
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
||||
}
|
||||
|
||||
public unsafe void BuildSetPosition(
|
||||
out RenderPort _priv_portUse,
|
||||
out Message* _priv_pmsgUse,
|
||||
Point ptClientPxl)
|
||||
{
|
||||
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
||||
_priv_portUse = this.m_renderPort;
|
||||
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
||||
uint size = (uint) sizeof (RemoteHwndHostWindow.Msg2_SetPosition);
|
||||
RemoteHwndHostWindow.Msg2_SetPosition* msg2SetPositionPtr = (RemoteHwndHostWindow.Msg2_SetPosition*) _priv_portUse.AllocMessageBuffer(size);
|
||||
msg2SetPositionPtr->_priv_size = size;
|
||||
msg2SetPositionPtr->_priv_msgid = 2U;
|
||||
msg2SetPositionPtr->ptClientPxl = ptClientPxl;
|
||||
msg2SetPositionPtr->_priv_idObjectSubject = this.m_renderHandle;
|
||||
if (_priv_portUse.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) msg2SetPositionPtr, ref RemoteHwndHostWindow.s_priv_ByteOrder_Msg2_SetPosition, typeof (RemoteHwndHostWindow.Msg2_SetPosition), 0, 0);
|
||||
_priv_pmsgUse = (Message*) msg2SetPositionPtr;
|
||||
}
|
||||
|
||||
public unsafe void SendSetPosition(Point ptClientPxl)
|
||||
{
|
||||
RenderPort _priv_portUse;
|
||||
Message* _priv_pmsgUse;
|
||||
this.BuildSetPosition(out _priv_portUse, out _priv_pmsgUse, ptClientPxl);
|
||||
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
||||
}
|
||||
|
||||
public unsafe void BuildSetBackgroundColor(
|
||||
out RenderPort _priv_portUse,
|
||||
out Message* _priv_pmsgUse,
|
||||
ColorF clrBackground)
|
||||
{
|
||||
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
||||
_priv_portUse = this.m_renderPort;
|
||||
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
||||
uint size = (uint) sizeof (RemoteHwndHostWindow.Msg3_SetBackgroundColor);
|
||||
RemoteHwndHostWindow.Msg3_SetBackgroundColor* setBackgroundColorPtr = (RemoteHwndHostWindow.Msg3_SetBackgroundColor*) _priv_portUse.AllocMessageBuffer(size);
|
||||
setBackgroundColorPtr->_priv_size = size;
|
||||
setBackgroundColorPtr->_priv_msgid = 3U;
|
||||
setBackgroundColorPtr->clrBackground = clrBackground;
|
||||
setBackgroundColorPtr->_priv_idObjectSubject = this.m_renderHandle;
|
||||
if (_priv_portUse.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) setBackgroundColorPtr, ref RemoteHwndHostWindow.s_priv_ByteOrder_Msg3_SetBackgroundColor, typeof (RemoteHwndHostWindow.Msg3_SetBackgroundColor), 0, 0);
|
||||
_priv_pmsgUse = (Message*) setBackgroundColorPtr;
|
||||
}
|
||||
|
||||
public unsafe void SendSetBackgroundColor(ColorF clrBackground)
|
||||
{
|
||||
RenderPort _priv_portUse;
|
||||
Message* _priv_pmsgUse;
|
||||
this.BuildSetBackgroundColor(out _priv_portUse, out _priv_pmsgUse, clrBackground);
|
||||
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
||||
}
|
||||
|
||||
public static RemoteHwndHostWindow CreateFromHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle)
|
||||
{
|
||||
return new RemoteHwndHostWindow(port, handle, true);
|
||||
}
|
||||
|
||||
public static RemoteHwndHostWindow CreateFromExternalHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle,
|
||||
IRenderHandleOwner owner)
|
||||
{
|
||||
port.RegisterKnownHandle(owner, handle);
|
||||
return new RemoteHwndHostWindow(port, handle, false);
|
||||
}
|
||||
|
||||
protected RemoteHwndHostWindow(RenderPort port, RENDERHANDLE handle, bool fFreeOnDispose)
|
||||
: base(port, handle, fFreeOnDispose)
|
||||
{
|
||||
}
|
||||
|
||||
protected RemoteHwndHostWindow(RenderPort port, IRenderHandleOwner owner)
|
||||
: base(port, owner)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is RemoteHwndHostWindow && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg4_Create
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE winParent;
|
||||
public RENDERHANDLE _priv_objcb;
|
||||
public ContextID _priv_ctxcb;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg0_SetVisible
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public uint fVisible;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg1_SetSize
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public Size sizeWindowPxl;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg2_SetPosition
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public Point ptClientPxl;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg3_SetBackgroundColor
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public ColorF clrBackground;
|
||||
}
|
||||
}
|
||||
}
|
||||
+68
@@ -0,0 +1,68 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.ProtocolSplashDesktop
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Common;
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop
|
||||
{
|
||||
internal sealed class ProtocolSplashDesktop : ProtocolInstance
|
||||
{
|
||||
private RENDERHANDLE _priv_remoteClass_InputRouter;
|
||||
private RENDERHANDLE _priv_remoteClass_FormWindowBase;
|
||||
private RENDERHANDLE _priv_callbackInstance_InputCallback;
|
||||
private RENDERHANDLE _priv_callbackInstance_FormWindowCallback;
|
||||
|
||||
public static ProtocolSplashDesktop Bind(RenderPort port)
|
||||
{
|
||||
Debug2.Validate(port != null, typeof (ArgumentNullException), nameof (port));
|
||||
ProtocolInstance protocolInstance = port.LookUpProtocol("Splash::Desktop");
|
||||
if (protocolInstance != null)
|
||||
{
|
||||
ProtocolSplashDesktop protocolSplashDesktop = protocolInstance as ProtocolSplashDesktop;
|
||||
Debug2.Validate(protocolSplashDesktop != null, typeof (InvalidOperationException), "protocol name collision");
|
||||
return protocolSplashDesktop;
|
||||
}
|
||||
ProtocolSplashDesktop protocolSplashDesktop1 = new ProtocolSplashDesktop(port);
|
||||
port.BindProtocol((ProtocolInstance) protocolSplashDesktop1);
|
||||
return protocolSplashDesktop1;
|
||||
}
|
||||
|
||||
public LocalInputCallback LocalInputCallbackHandle => LocalInputCallback.CreateCallbackImpl(this.Port, this._priv_callbackInstance_InputCallback);
|
||||
|
||||
public LocalFormWindowCallback LocalFormWindowCallbackHandle => LocalFormWindowCallback.CreateCallbackImpl(this.Port, this._priv_callbackInstance_FormWindowCallback);
|
||||
|
||||
private ProtocolSplashDesktop(RenderPort port)
|
||||
: base(port, "Splash::Desktop")
|
||||
{
|
||||
}
|
||||
|
||||
protected override void Init()
|
||||
{
|
||||
RenderPort port = this.Port;
|
||||
this._priv_remoteClass_InputRouter = port.InitRemoteClass("Splash::Desktop::InputRouter");
|
||||
this._priv_remoteClass_FormWindowBase = port.InitRemoteClass("Splash::Desktop::FormWindowBase");
|
||||
this._priv_callbackInstance_InputCallback = LocalInputCallback.BindCallback(port);
|
||||
this._priv_callbackInstance_FormWindowCallback = LocalFormWindowCallback.BindCallback(port);
|
||||
}
|
||||
|
||||
internal RENDERHANDLE InputRouter_ClassHandle => this._priv_remoteClass_InputRouter;
|
||||
|
||||
internal RENDERHANDLE FormWindowBase_ClassHandle => this._priv_remoteClass_FormWindowBase;
|
||||
|
||||
internal RENDERHANDLE InputCallback_CallbackInstance => this._priv_callbackInstance_InputCallback;
|
||||
|
||||
internal RENDERHANDLE FormWindowCallback_CallbackInstance => this._priv_callbackInstance_FormWindowCallback;
|
||||
|
||||
internal RemoteInputRouter BuildRemoteInputRouter(
|
||||
IRenderHandleOwner _priv_owner,
|
||||
LocalInputCallback ic)
|
||||
{
|
||||
return RemoteInputRouter.Create(this, _priv_owner, ic);
|
||||
}
|
||||
}
|
||||
}
|
||||
+1312
File diff suppressed because it is too large
Load Diff
+158
@@ -0,0 +1,158 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.RemoteInputRouter
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Common;
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop
|
||||
{
|
||||
internal class RemoteInputRouter : RemoteObject
|
||||
{
|
||||
private static ushort[] s_priv_ByteOrder_Msg2_Create;
|
||||
private static ushort[] s_priv_ByteOrder_Msg0_UnRegisterWithInputSource;
|
||||
private static ushort[] s_priv_ByteOrder_Msg1_RegisterWithInputSource;
|
||||
|
||||
protected RemoteInputRouter()
|
||||
{
|
||||
}
|
||||
|
||||
public static unsafe RemoteInputRouter Create(
|
||||
ProtocolSplashDesktop _priv_protocolInstance,
|
||||
IRenderHandleOwner _priv_owner,
|
||||
LocalInputCallback ic)
|
||||
{
|
||||
RenderPort port = _priv_protocolInstance.Port;
|
||||
RENDERHANDLE routerClassHandle = _priv_protocolInstance.InputRouter_ClassHandle;
|
||||
RemoteInputRouter remoteInputRouter = new RemoteInputRouter(port, _priv_owner);
|
||||
uint num = (uint) sizeof (RemoteInputRouter.Msg2_Create);
|
||||
// ISSUE: untyped stack allocation
|
||||
byte* pMem = (byte*) __untypedstackalloc(1 * (int) num);
|
||||
RemoteInputRouter.Msg2_Create* msg2CreatePtr = (RemoteInputRouter.Msg2_Create*) pMem;
|
||||
msg2CreatePtr->_priv_size = num;
|
||||
msg2CreatePtr->_priv_msgid = 2U;
|
||||
msg2CreatePtr->_priv_objic = ic.RenderHandle;
|
||||
msg2CreatePtr->_priv_ctxic = port.Session.LocalContext;
|
||||
msg2CreatePtr->_priv_idObjectSubject = remoteInputRouter.m_renderHandle;
|
||||
if (port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder(pMem, ref RemoteInputRouter.s_priv_ByteOrder_Msg2_Create, typeof (RemoteInputRouter.Msg2_Create), 0, 0);
|
||||
port.CreateRemoteObject(routerClassHandle, remoteInputRouter.m_renderHandle, (Message*) msg2CreatePtr);
|
||||
return remoteInputRouter;
|
||||
}
|
||||
|
||||
public unsafe void BuildUnRegisterWithInputSource(
|
||||
out RenderPort _priv_portUse,
|
||||
out Message* _priv_pmsgUse)
|
||||
{
|
||||
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
||||
_priv_portUse = this.m_renderPort;
|
||||
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
||||
uint size = (uint) sizeof (RemoteInputRouter.Msg0_UnRegisterWithInputSource);
|
||||
RemoteInputRouter.Msg0_UnRegisterWithInputSource* registerWithInputSourcePtr = (RemoteInputRouter.Msg0_UnRegisterWithInputSource*) _priv_portUse.AllocMessageBuffer(size);
|
||||
registerWithInputSourcePtr->_priv_size = size;
|
||||
registerWithInputSourcePtr->_priv_msgid = 0U;
|
||||
registerWithInputSourcePtr->_priv_idObjectSubject = this.m_renderHandle;
|
||||
if (_priv_portUse.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) registerWithInputSourcePtr, ref RemoteInputRouter.s_priv_ByteOrder_Msg0_UnRegisterWithInputSource, typeof (RemoteInputRouter.Msg0_UnRegisterWithInputSource), 0, 0);
|
||||
_priv_pmsgUse = (Message*) registerWithInputSourcePtr;
|
||||
}
|
||||
|
||||
public unsafe void SendUnRegisterWithInputSource()
|
||||
{
|
||||
RenderPort _priv_portUse;
|
||||
Message* _priv_pmsgUse;
|
||||
this.BuildUnRegisterWithInputSource(out _priv_portUse, out _priv_pmsgUse);
|
||||
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
||||
}
|
||||
|
||||
public unsafe void BuildRegisterWithInputSource(
|
||||
out RenderPort _priv_portUse,
|
||||
out Message* _priv_pmsgUse,
|
||||
uint idGroup,
|
||||
RENDERHANDLE idSource)
|
||||
{
|
||||
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
||||
_priv_portUse = this.m_renderPort;
|
||||
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
||||
uint size = (uint) sizeof (RemoteInputRouter.Msg1_RegisterWithInputSource);
|
||||
RemoteInputRouter.Msg1_RegisterWithInputSource* registerWithInputSourcePtr = (RemoteInputRouter.Msg1_RegisterWithInputSource*) _priv_portUse.AllocMessageBuffer(size);
|
||||
registerWithInputSourcePtr->_priv_size = size;
|
||||
registerWithInputSourcePtr->_priv_msgid = 1U;
|
||||
registerWithInputSourcePtr->idGroup = idGroup;
|
||||
registerWithInputSourcePtr->idSource = idSource;
|
||||
registerWithInputSourcePtr->_priv_idObjectSubject = this.m_renderHandle;
|
||||
if (_priv_portUse.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) registerWithInputSourcePtr, ref RemoteInputRouter.s_priv_ByteOrder_Msg1_RegisterWithInputSource, typeof (RemoteInputRouter.Msg1_RegisterWithInputSource), 0, 0);
|
||||
_priv_pmsgUse = (Message*) registerWithInputSourcePtr;
|
||||
}
|
||||
|
||||
public unsafe void SendRegisterWithInputSource(uint idGroup, RENDERHANDLE idSource)
|
||||
{
|
||||
RenderPort _priv_portUse;
|
||||
Message* _priv_pmsgUse;
|
||||
this.BuildRegisterWithInputSource(out _priv_portUse, out _priv_pmsgUse, idGroup, idSource);
|
||||
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
||||
}
|
||||
|
||||
public static RemoteInputRouter CreateFromHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle)
|
||||
{
|
||||
return new RemoteInputRouter(port, handle, true);
|
||||
}
|
||||
|
||||
public static RemoteInputRouter CreateFromExternalHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle,
|
||||
IRenderHandleOwner owner)
|
||||
{
|
||||
port.RegisterKnownHandle(owner, handle);
|
||||
return new RemoteInputRouter(port, handle, false);
|
||||
}
|
||||
|
||||
protected RemoteInputRouter(RenderPort port, RENDERHANDLE handle, bool fFreeOnDispose)
|
||||
: base(port, handle, fFreeOnDispose)
|
||||
{
|
||||
}
|
||||
|
||||
protected RemoteInputRouter(RenderPort port, IRenderHandleOwner owner)
|
||||
: base(port, owner)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is RemoteInputRouter && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg2_Create
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE _priv_objic;
|
||||
public ContextID _priv_ctxic;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg0_UnRegisterWithInputSource
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg1_RegisterWithInputSource
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public uint idGroup;
|
||||
public RENDERHANDLE idSource;
|
||||
}
|
||||
}
|
||||
}
|
||||
+48
@@ -0,0 +1,48 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Xenon.ProtocolSplashDesktopXenon
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Common;
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Xenon
|
||||
{
|
||||
internal sealed class ProtocolSplashDesktopXenon : ProtocolInstance
|
||||
{
|
||||
private RENDERHANDLE _priv_remoteClass_FormWindow;
|
||||
|
||||
public static ProtocolSplashDesktopXenon Bind(RenderPort port)
|
||||
{
|
||||
Debug2.Validate(port != null, typeof (ArgumentNullException), nameof (port));
|
||||
ProtocolInstance protocolInstance = port.LookUpProtocol("Splash::Desktop::Xenon");
|
||||
if (protocolInstance != null)
|
||||
{
|
||||
ProtocolSplashDesktopXenon splashDesktopXenon = protocolInstance as ProtocolSplashDesktopXenon;
|
||||
Debug2.Validate(splashDesktopXenon != null, typeof (InvalidOperationException), "protocol name collision");
|
||||
return splashDesktopXenon;
|
||||
}
|
||||
ProtocolSplashDesktopXenon splashDesktopXenon1 = new ProtocolSplashDesktopXenon(port);
|
||||
port.BindProtocol((ProtocolInstance) splashDesktopXenon1);
|
||||
return splashDesktopXenon1;
|
||||
}
|
||||
|
||||
private ProtocolSplashDesktopXenon(RenderPort port)
|
||||
: base(port, "Splash::Desktop::Xenon")
|
||||
{
|
||||
}
|
||||
|
||||
protected override void Init() => this._priv_remoteClass_FormWindow = this.Port.InitRemoteClass("Splash::Desktop::Xenon::FormWindow");
|
||||
|
||||
internal RENDERHANDLE FormWindow_ClassHandle => this._priv_remoteClass_FormWindow;
|
||||
|
||||
internal RemoteFormWindow BuildRemoteFormWindow(
|
||||
IRenderHandleOwner _priv_owner,
|
||||
LocalFormWindowCallback cb)
|
||||
{
|
||||
return RemoteFormWindow.Create(this, _priv_owner, cb);
|
||||
}
|
||||
}
|
||||
}
|
||||
+83
@@ -0,0 +1,83 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Desktop.Xenon.RemoteFormWindow
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Xenon
|
||||
{
|
||||
internal class RemoteFormWindow : RemoteFormWindowBase
|
||||
{
|
||||
private static ushort[] s_priv_ByteOrder_Msg41_Create;
|
||||
|
||||
protected RemoteFormWindow()
|
||||
{
|
||||
}
|
||||
|
||||
public static unsafe RemoteFormWindow Create(
|
||||
ProtocolSplashDesktopXenon _priv_protocolInstance,
|
||||
IRenderHandleOwner _priv_owner,
|
||||
LocalFormWindowCallback cb)
|
||||
{
|
||||
RenderPort port = _priv_protocolInstance.Port;
|
||||
RENDERHANDLE windowClassHandle = _priv_protocolInstance.FormWindow_ClassHandle;
|
||||
RemoteFormWindow remoteFormWindow = new RemoteFormWindow(port, _priv_owner);
|
||||
uint num = (uint) sizeof (RemoteFormWindow.Msg41_Create);
|
||||
// ISSUE: untyped stack allocation
|
||||
byte* pMem = (byte*) __untypedstackalloc(1 * (int) num);
|
||||
RemoteFormWindow.Msg41_Create* msg41CreatePtr = (RemoteFormWindow.Msg41_Create*) pMem;
|
||||
msg41CreatePtr->_priv_size = num;
|
||||
msg41CreatePtr->_priv_msgid = 41U;
|
||||
msg41CreatePtr->_priv_objcb = cb.RenderHandle;
|
||||
msg41CreatePtr->_priv_ctxcb = port.Session.LocalContext;
|
||||
msg41CreatePtr->_priv_idObjectSubject = remoteFormWindow.m_renderHandle;
|
||||
if (port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder(pMem, ref RemoteFormWindow.s_priv_ByteOrder_Msg41_Create, typeof (RemoteFormWindow.Msg41_Create), 0, 0);
|
||||
port.CreateRemoteObject(windowClassHandle, remoteFormWindow.m_renderHandle, (Message*) msg41CreatePtr);
|
||||
return remoteFormWindow;
|
||||
}
|
||||
|
||||
public static RemoteFormWindow CreateFromHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle)
|
||||
{
|
||||
return new RemoteFormWindow(port, handle, true);
|
||||
}
|
||||
|
||||
public static RemoteFormWindow CreateFromExternalHandle(
|
||||
RenderPort port,
|
||||
RENDERHANDLE handle,
|
||||
IRenderHandleOwner owner)
|
||||
{
|
||||
port.RegisterKnownHandle(owner, handle);
|
||||
return new RemoteFormWindow(port, handle, false);
|
||||
}
|
||||
|
||||
protected RemoteFormWindow(RenderPort port, RENDERHANDLE handle, bool fFreeOnDispose)
|
||||
: base(port, handle, fFreeOnDispose)
|
||||
{
|
||||
}
|
||||
|
||||
protected RemoteFormWindow(RenderPort port, IRenderHandleOwner owner)
|
||||
: base(port, owner)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is RemoteFormWindow && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg41_Create
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE _priv_objcb;
|
||||
public ContextID _priv_ctxcb;
|
||||
}
|
||||
}
|
||||
}
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Messaging.IDataBufferCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Messaging
|
||||
{
|
||||
internal interface IDataBufferCallback
|
||||
{
|
||||
void OnComplete(RENDERHANDLE target);
|
||||
}
|
||||
}
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Messaging.IRenderPortCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Messaging
|
||||
{
|
||||
internal interface IRenderPortCallback
|
||||
{
|
||||
void OnBatchProcessed(RENDERHANDLE target, uint uBatchCompleted);
|
||||
|
||||
void OnPingReply(RENDERHANDLE target);
|
||||
}
|
||||
}
|
||||
+74
@@ -0,0 +1,74 @@
|
||||
// Decompiled with JetBrains decompiler
|
||||
// Type: Microsoft.Iris.Render.Protocols.Splash.Messaging.LocalDataBufferCallback
|
||||
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
|
||||
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
|
||||
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
|
||||
|
||||
using Microsoft.Iris.Render.Protocol;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
namespace Microsoft.Iris.Render.Protocols.Splash.Messaging
|
||||
{
|
||||
internal class LocalDataBufferCallback : RemoteObject
|
||||
{
|
||||
private static ushort[] s_priv_ByteOrder_Msg0_OnComplete;
|
||||
|
||||
protected LocalDataBufferCallback()
|
||||
{
|
||||
}
|
||||
|
||||
internal static LocalDataBufferCallback CreateCallbackImpl(
|
||||
RenderPort port,
|
||||
RENDERHANDLE callbackInstance)
|
||||
{
|
||||
return new LocalDataBufferCallback(port, callbackInstance);
|
||||
}
|
||||
|
||||
protected LocalDataBufferCallback(RenderPort port, RENDERHANDLE handle)
|
||||
: base(port, handle, false)
|
||||
{
|
||||
}
|
||||
|
||||
public override bool Equals(object other) => other is LocalDataBufferCallback && this.m_renderHandle == ((RemoteObject) other).m_renderHandle;
|
||||
|
||||
public override int GetHashCode() => base.GetHashCode();
|
||||
|
||||
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(LocalDataBufferCallback.DispatchCallback), out uint _);
|
||||
|
||||
private static unsafe void DispatchCallback(
|
||||
RenderPort port,
|
||||
IRenderHandleOwner owner,
|
||||
CallbackMessage* message)
|
||||
{
|
||||
if (!(owner is IDataBufferCallback _priv_target) || message->nMsg != 0U)
|
||||
return;
|
||||
LocalDataBufferCallback.Dispatch_OnComplete(port, _priv_target, (LocalDataBufferCallback.Msg0_OnComplete*) message);
|
||||
}
|
||||
|
||||
private static unsafe void Dispatch_OnComplete(
|
||||
RenderPort _priv_port,
|
||||
IDataBufferCallback _priv_target,
|
||||
LocalDataBufferCallback.Msg0_OnComplete* _priv_pmsg)
|
||||
{
|
||||
if (_priv_port.ForeignByteOrder)
|
||||
MarshalHelper.SwapByteOrder((byte*) _priv_pmsg, ref LocalDataBufferCallback.s_priv_ByteOrder_Msg0_OnComplete, typeof (LocalDataBufferCallback.Msg0_OnComplete), sizeof (CallbackMessage), 0);
|
||||
RENDERHANDLE target = _priv_pmsg->target;
|
||||
_priv_target.OnComplete(target);
|
||||
}
|
||||
|
||||
[Conditional("DEBUG")]
|
||||
private static unsafe void OnInvalidCallback(CallbackMessage* message, string category)
|
||||
{
|
||||
}
|
||||
|
||||
[ComVisible(false)]
|
||||
private struct Msg0_OnComplete
|
||||
{
|
||||
public uint _priv_size;
|
||||
public uint _priv_msgid;
|
||||
public RENDERHANDLE _priv_idObjectSubject;
|
||||
public RENDERHANDLE target;
|
||||
}
|
||||
}
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user