mirror of
https://github.com/ZuneDev/Xune.git
synced 2026-07-27 13:13:10 -07:00
532 lines
23 KiB
C#
532 lines
23 KiB
C#
// Decompiled with JetBrains decompiler
|
|
// Type: Microsoft.Iris.Render.Protocols.Splash.Rendering.RemoteVisual
|
|
// 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.Collections.Generic;
|
|
using System.Runtime.InteropServices;
|
|
|
|
namespace Microsoft.Iris.Render.Protocols.Splash.Rendering
|
|
{
|
|
internal class RemoteVisual : RemoteObject
|
|
{
|
|
private static ushort[] s_priv_ByteOrder_Msg0_ClearGradients;
|
|
private static ushort[] s_priv_ByteOrder_Msg1_AddGradient;
|
|
private static ushort[] s_priv_ByteOrder_Msg2_SetRelativeSize;
|
|
private static ushort[] s_priv_ByteOrder_Msg3_Reset;
|
|
private static ushort[] s_priv_ByteOrder_Msg4_ChangeDataBits;
|
|
private static ushort[] s_priv_ByteOrder_Msg5_ChangeParent;
|
|
private static ushort[] s_priv_ByteOrder_Msg6_SetDebugOutlineColor;
|
|
private static ushort[] s_priv_ByteOrder_Msg7_SetDebugID;
|
|
private static ushort[] s_priv_ByteOrder_Msg8_SetAlpha;
|
|
private static ushort[] s_priv_ByteOrder_Msg9_SetLayer;
|
|
private static ushort[] s_priv_ByteOrder_Msg10_SetRotation;
|
|
private static ushort[] s_priv_ByteOrder_Msg11_SetCenterPointScale;
|
|
private static ushort[] s_priv_ByteOrder_Msg12_SetScale;
|
|
private static ushort[] s_priv_ByteOrder_Msg13_SetSize;
|
|
private static ushort[] s_priv_ByteOrder_Msg14_SetPosition;
|
|
private static ushort[] s_priv_ByteOrder_Msg16_SetVisible;
|
|
|
|
protected RemoteVisual()
|
|
{
|
|
}
|
|
|
|
public unsafe void SendClearGradients() => m_gradients.Clear();
|
|
|
|
public unsafe void SendAddGradient(RemoteGradient grad) => m_gradients.Add(grad);
|
|
|
|
public unsafe void SendSetRelativeSize(bool fRelative)
|
|
{
|
|
m_fRelativeSize = fRelative ? uint.MaxValue : 0;
|
|
}
|
|
|
|
public unsafe void SendReset()
|
|
{
|
|
// TODO: Reset
|
|
}
|
|
|
|
public unsafe void BuildChangeDataBits(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
uint nValue,
|
|
uint nMask)
|
|
{
|
|
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(RemoteVisual.Msg4_ChangeDataBits);
|
|
RemoteVisual.Msg4_ChangeDataBits* msg4ChangeDataBitsPtr = (RemoteVisual.Msg4_ChangeDataBits*)_priv_portUse.AllocMessageBuffer(size);
|
|
msg4ChangeDataBitsPtr->_priv_size = size;
|
|
msg4ChangeDataBitsPtr->_priv_msgid = 4U;
|
|
msg4ChangeDataBitsPtr->nValue = nValue;
|
|
msg4ChangeDataBitsPtr->nMask = nMask;
|
|
msg4ChangeDataBitsPtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg4ChangeDataBitsPtr, ref s_priv_ByteOrder_Msg4_ChangeDataBits, typeof(RemoteVisual.Msg4_ChangeDataBits), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg4ChangeDataBitsPtr;
|
|
}
|
|
|
|
public unsafe void SendChangeDataBits(uint nValue, uint nMask)
|
|
{
|
|
// TODO
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildChangeDataBits(out _priv_portUse, out _priv_pmsgUse, nValue, nMask);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildChangeParent(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
RemoteVisual visNewParent,
|
|
RemoteVisual visSibling,
|
|
VisualOrder nOrder)
|
|
{
|
|
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
|
_priv_portUse = this.m_renderPort;
|
|
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
|
if (visNewParent != null)
|
|
_priv_portUse.ValidateHandleOrNull(visNewParent.RenderHandle);
|
|
if (visSibling != null)
|
|
_priv_portUse.ValidateHandleOrNull(visSibling.RenderHandle);
|
|
uint size = (uint)sizeof(RemoteVisual.Msg5_ChangeParent);
|
|
RemoteVisual.Msg5_ChangeParent* msg5ChangeParentPtr = (RemoteVisual.Msg5_ChangeParent*)_priv_portUse.AllocMessageBuffer(size);
|
|
msg5ChangeParentPtr->_priv_size = size;
|
|
msg5ChangeParentPtr->_priv_msgid = 5U;
|
|
msg5ChangeParentPtr->visNewParent = visNewParent != null ? visNewParent.RenderHandle : RENDERHANDLE.NULL;
|
|
msg5ChangeParentPtr->visSibling = visSibling != null ? visSibling.RenderHandle : RENDERHANDLE.NULL;
|
|
msg5ChangeParentPtr->nOrder = nOrder;
|
|
msg5ChangeParentPtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg5ChangeParentPtr, ref s_priv_ByteOrder_Msg5_ChangeParent, typeof(RemoteVisual.Msg5_ChangeParent), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg5ChangeParentPtr;
|
|
}
|
|
|
|
public unsafe void SendChangeParent(
|
|
RemoteVisual visNewParent,
|
|
RemoteVisual visSibling,
|
|
VisualOrder nOrder)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildChangeParent(out _priv_portUse, out _priv_pmsgUse, visNewParent, visSibling, nOrder);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildSetDebugOutlineColor(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
ColorF clr)
|
|
{
|
|
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(RemoteVisual.Msg6_SetDebugOutlineColor);
|
|
RemoteVisual.Msg6_SetDebugOutlineColor* debugOutlineColorPtr = (RemoteVisual.Msg6_SetDebugOutlineColor*)_priv_portUse.AllocMessageBuffer(size);
|
|
debugOutlineColorPtr->_priv_size = size;
|
|
debugOutlineColorPtr->_priv_msgid = 6U;
|
|
debugOutlineColorPtr->clr = clr;
|
|
debugOutlineColorPtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)debugOutlineColorPtr, ref s_priv_ByteOrder_Msg6_SetDebugOutlineColor, typeof(RemoteVisual.Msg6_SetDebugOutlineColor), 0, 0);
|
|
_priv_pmsgUse = (Message*)debugOutlineColorPtr;
|
|
}
|
|
|
|
public unsafe void SendSetDebugOutlineColor(ColorF clr)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildSetDebugOutlineColor(out _priv_portUse, out _priv_pmsgUse, clr);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildSetDebugID(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
string stDebugID)
|
|
{
|
|
Debug2.Throw(this.IsValid, "Non-static method call requires an instance");
|
|
_priv_portUse = this.m_renderPort;
|
|
_priv_portUse.ValidateHandle(this.m_renderHandle);
|
|
BlobInfo blobInfo = new BlobInfo(_priv_portUse, (uint)sizeof(RemoteVisual.Msg7_SetDebugID));
|
|
BLOBREF blobref = blobInfo.Add(stDebugID);
|
|
uint adjustedTotalSize = blobInfo.AdjustedTotalSize;
|
|
RemoteVisual.Msg7_SetDebugID* msg7SetDebugIdPtr = (RemoteVisual.Msg7_SetDebugID*)_priv_portUse.AllocMessageBuffer(adjustedTotalSize);
|
|
msg7SetDebugIdPtr->_priv_size = adjustedTotalSize;
|
|
msg7SetDebugIdPtr->_priv_msgid = 7U;
|
|
msg7SetDebugIdPtr->stDebugID = blobref;
|
|
blobInfo.Attach((Message*)msg7SetDebugIdPtr);
|
|
msg7SetDebugIdPtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg7SetDebugIdPtr, ref s_priv_ByteOrder_Msg7_SetDebugID, typeof(RemoteVisual.Msg7_SetDebugID), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg7SetDebugIdPtr;
|
|
}
|
|
|
|
public unsafe void SendSetDebugID(string stDebugID)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildSetDebugID(out _priv_portUse, out _priv_pmsgUse, stDebugID);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildSetAlpha(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
float fAlpha)
|
|
{
|
|
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(RemoteVisual.Msg8_SetAlpha);
|
|
RemoteVisual.Msg8_SetAlpha* msg8SetAlphaPtr = (RemoteVisual.Msg8_SetAlpha*)_priv_portUse.AllocMessageBuffer(size);
|
|
msg8SetAlphaPtr->_priv_size = size;
|
|
msg8SetAlphaPtr->_priv_msgid = 8U;
|
|
msg8SetAlphaPtr->fAlpha = fAlpha;
|
|
msg8SetAlphaPtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg8SetAlphaPtr, ref s_priv_ByteOrder_Msg8_SetAlpha, typeof(RemoteVisual.Msg8_SetAlpha), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg8SetAlphaPtr;
|
|
}
|
|
|
|
public unsafe void SendSetAlpha(float fAlpha)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildSetAlpha(out _priv_portUse, out _priv_pmsgUse, fAlpha);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildSetLayer(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
uint layer)
|
|
{
|
|
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(RemoteVisual.Msg9_SetLayer);
|
|
RemoteVisual.Msg9_SetLayer* msg9SetLayerPtr = (RemoteVisual.Msg9_SetLayer*)_priv_portUse.AllocMessageBuffer(size);
|
|
msg9SetLayerPtr->_priv_size = size;
|
|
msg9SetLayerPtr->_priv_msgid = 9U;
|
|
msg9SetLayerPtr->layer = layer;
|
|
msg9SetLayerPtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg9SetLayerPtr, ref s_priv_ByteOrder_Msg9_SetLayer, typeof(RemoteVisual.Msg9_SetLayer), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg9SetLayerPtr;
|
|
}
|
|
|
|
public unsafe void SendSetLayer(uint layer)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildSetLayer(out _priv_portUse, out _priv_pmsgUse, layer);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildSetRotation(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
AxisAngle aaRotation)
|
|
{
|
|
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(RemoteVisual.Msg10_SetRotation);
|
|
RemoteVisual.Msg10_SetRotation* msg10SetRotationPtr = (RemoteVisual.Msg10_SetRotation*)_priv_portUse.AllocMessageBuffer(size);
|
|
msg10SetRotationPtr->_priv_size = size;
|
|
msg10SetRotationPtr->_priv_msgid = 10U;
|
|
msg10SetRotationPtr->aaRotation = aaRotation;
|
|
msg10SetRotationPtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg10SetRotationPtr, ref s_priv_ByteOrder_Msg10_SetRotation, typeof(RemoteVisual.Msg10_SetRotation), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg10SetRotationPtr;
|
|
}
|
|
|
|
public unsafe void SendSetRotation(AxisAngle aaRotation)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildSetRotation(out _priv_portUse, out _priv_pmsgUse, aaRotation);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildSetCenterPointScale(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
Vector3 vCenterPointScale)
|
|
{
|
|
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(RemoteVisual.Msg11_SetCenterPointScale);
|
|
RemoteVisual.Msg11_SetCenterPointScale* centerPointScalePtr = (RemoteVisual.Msg11_SetCenterPointScale*)_priv_portUse.AllocMessageBuffer(size);
|
|
centerPointScalePtr->_priv_size = size;
|
|
centerPointScalePtr->_priv_msgid = 11U;
|
|
centerPointScalePtr->vCenterPointScale = vCenterPointScale;
|
|
centerPointScalePtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)centerPointScalePtr, ref s_priv_ByteOrder_Msg11_SetCenterPointScale, typeof(RemoteVisual.Msg11_SetCenterPointScale), 0, 0);
|
|
_priv_pmsgUse = (Message*)centerPointScalePtr;
|
|
}
|
|
|
|
public unsafe void SendSetCenterPointScale(Vector3 vCenterPointScale)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildSetCenterPointScale(out _priv_portUse, out _priv_pmsgUse, vCenterPointScale);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildSetScale(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
Vector3 vScale)
|
|
{
|
|
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(RemoteVisual.Msg12_SetScale);
|
|
RemoteVisual.Msg12_SetScale* msg12SetScalePtr = (RemoteVisual.Msg12_SetScale*)_priv_portUse.AllocMessageBuffer(size);
|
|
msg12SetScalePtr->_priv_size = size;
|
|
msg12SetScalePtr->_priv_msgid = 12U;
|
|
msg12SetScalePtr->vScale = vScale;
|
|
msg12SetScalePtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg12SetScalePtr, ref s_priv_ByteOrder_Msg12_SetScale, typeof(RemoteVisual.Msg12_SetScale), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg12SetScalePtr;
|
|
}
|
|
|
|
public unsafe void SendSetScale(Vector3 vScale)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildSetScale(out _priv_portUse, out _priv_pmsgUse, vScale);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildSetSize(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
Vector2 vSizePxl)
|
|
{
|
|
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(RemoteVisual.Msg13_SetSize);
|
|
RemoteVisual.Msg13_SetSize* msg13SetSizePtr = (RemoteVisual.Msg13_SetSize*)_priv_portUse.AllocMessageBuffer(size);
|
|
msg13SetSizePtr->_priv_size = size;
|
|
msg13SetSizePtr->_priv_msgid = 13U;
|
|
msg13SetSizePtr->vSizePxl = vSizePxl;
|
|
msg13SetSizePtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg13SetSizePtr, ref s_priv_ByteOrder_Msg13_SetSize, typeof(RemoteVisual.Msg13_SetSize), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg13SetSizePtr;
|
|
}
|
|
|
|
public unsafe void SendSetSize(Vector2 vSizePxl)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildSetSize(out _priv_portUse, out _priv_pmsgUse, vSizePxl);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
public unsafe void BuildSetPosition(
|
|
out RenderPort _priv_portUse,
|
|
out Message* _priv_pmsgUse,
|
|
Vector3 vPositionPxl)
|
|
{
|
|
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(RemoteVisual.Msg14_SetPosition);
|
|
RemoteVisual.Msg14_SetPosition* msg14SetPositionPtr = (RemoteVisual.Msg14_SetPosition*)_priv_portUse.AllocMessageBuffer(size);
|
|
msg14SetPositionPtr->_priv_size = size;
|
|
msg14SetPositionPtr->_priv_msgid = 14U;
|
|
msg14SetPositionPtr->vPositionPxl = vPositionPxl;
|
|
msg14SetPositionPtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg14SetPositionPtr, ref s_priv_ByteOrder_Msg14_SetPosition, typeof(RemoteVisual.Msg14_SetPosition), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg14SetPositionPtr;
|
|
}
|
|
|
|
public unsafe void SendSetPosition(Vector3 vPositionPxl)
|
|
{
|
|
RenderPort _priv_portUse;
|
|
Message* _priv_pmsgUse;
|
|
this.BuildSetPosition(out _priv_portUse, out _priv_pmsgUse, vPositionPxl);
|
|
_priv_portUse.SendRemoteMessage(_priv_pmsgUse);
|
|
}
|
|
|
|
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(RemoteVisual.Msg16_SetVisible);
|
|
RemoteVisual.Msg16_SetVisible* msg16SetVisiblePtr = (RemoteVisual.Msg16_SetVisible*)_priv_portUse.AllocMessageBuffer(size);
|
|
msg16SetVisiblePtr->_priv_size = size;
|
|
msg16SetVisiblePtr->_priv_msgid = 16U;
|
|
msg16SetVisiblePtr->fVisible = fVisible ? uint.MaxValue : 0U;
|
|
msg16SetVisiblePtr->_priv_idObjectSubject = this.m_renderHandle;
|
|
if (_priv_portUse.ForeignByteOrder)
|
|
MarshalHelper.SwapByteOrder((byte*)msg16SetVisiblePtr, ref s_priv_ByteOrder_Msg16_SetVisible, typeof(RemoteVisual.Msg16_SetVisible), 0, 0);
|
|
_priv_pmsgUse = (Message*)msg16SetVisiblePtr;
|
|
}
|
|
|
|
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 static RemoteVisual CreateFromHandle(RenderPort port, RENDERHANDLE handle) => new RemoteVisual(port, handle, true);
|
|
|
|
public static RemoteVisual CreateFromExternalHandle(
|
|
RenderPort port,
|
|
RENDERHANDLE handle,
|
|
IRenderHandleOwner owner)
|
|
{
|
|
port.RegisterKnownHandle(owner, handle);
|
|
return new RemoteVisual(port, handle, false);
|
|
}
|
|
|
|
protected RemoteVisual(RenderPort port, RENDERHANDLE handle, bool fFreeOnDispose)
|
|
: base(port, handle, fFreeOnDispose)
|
|
{
|
|
}
|
|
|
|
protected RemoteVisual(RenderPort port, IRenderHandleOwner owner)
|
|
: base(port, owner)
|
|
{
|
|
}
|
|
|
|
public override bool Equals(object other) => other is RemoteVisual && this.m_renderHandle == ((RemoteObject)other).m_renderHandle;
|
|
|
|
public override int GetHashCode() => base.GetHashCode();
|
|
|
|
List<RemoteGradient> m_gradients;
|
|
uint m_fRelativeSize;
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg4_ChangeDataBits
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public uint nValue;
|
|
public uint nMask;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg5_ChangeParent
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public RENDERHANDLE visNewParent;
|
|
public RENDERHANDLE visSibling;
|
|
public VisualOrder nOrder;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg6_SetDebugOutlineColor
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public ColorF clr;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg7_SetDebugID
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public BLOBREF stDebugID;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg8_SetAlpha
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public float fAlpha;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg9_SetLayer
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public uint layer;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg10_SetRotation
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public AxisAngle aaRotation;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg11_SetCenterPointScale
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public Vector3 vCenterPointScale;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg12_SetScale
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public Vector3 vScale;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg13_SetSize
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public Vector2 vSizePxl;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg14_SetPosition
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public Vector3 vPositionPxl;
|
|
}
|
|
|
|
[ComVisible(false)]
|
|
private struct Msg16_SetVisible
|
|
{
|
|
public uint _priv_size;
|
|
public uint _priv_msgid;
|
|
public RENDERHANDLE _priv_idObjectSubject;
|
|
public uint fVisible;
|
|
}
|
|
}
|
|
}
|