377 lines
14 KiB
C#
377 lines
14 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Runtime.CompilerServices;
|
|
using UnityEngine.Scripting;
|
|
|
|
namespace UnityEngine.CSSLayout
|
|
{
|
|
// Token: 0x0200051C RID: 1308
|
|
internal static class Native
|
|
{
|
|
// Token: 0x06003CC8 RID: 15560
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern IntPtr CSSNodeNew();
|
|
|
|
// Token: 0x06003CC9 RID: 15561
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeInit(IntPtr cssNode);
|
|
|
|
// Token: 0x06003CCA RID: 15562 RVA: 0x0006B6AC File Offset: 0x000698AC
|
|
public static void CSSNodeFree(IntPtr cssNode)
|
|
{
|
|
if (!(cssNode == IntPtr.Zero))
|
|
{
|
|
Native.CSSNodeSetMeasureFunc(cssNode, null);
|
|
Native.CSSNodeFreeInternal(cssNode);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06003CCB RID: 15563
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
private static extern void CSSNodeFreeInternal(IntPtr cssNode);
|
|
|
|
// Token: 0x06003CCC RID: 15564 RVA: 0x0006B6D4 File Offset: 0x000698D4
|
|
public static void CSSNodeReset(IntPtr cssNode)
|
|
{
|
|
Native.CSSNodeSetMeasureFunc(cssNode, null);
|
|
Native.CSSNodeResetInternal(cssNode);
|
|
}
|
|
|
|
// Token: 0x06003CCD RID: 15565
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
private static extern void CSSNodeResetInternal(IntPtr cssNode);
|
|
|
|
// Token: 0x06003CCE RID: 15566
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern int CSSNodeGetInstanceCount();
|
|
|
|
// Token: 0x06003CCF RID: 15567
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSLayoutSetExperimentalFeatureEnabled(CSSExperimentalFeature feature, bool enabled);
|
|
|
|
// Token: 0x06003CD0 RID: 15568
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern bool CSSLayoutIsExperimentalFeatureEnabled(CSSExperimentalFeature feature);
|
|
|
|
// Token: 0x06003CD1 RID: 15569
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeInsertChild(IntPtr node, IntPtr child, uint index);
|
|
|
|
// Token: 0x06003CD2 RID: 15570
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeRemoveChild(IntPtr node, IntPtr child);
|
|
|
|
// Token: 0x06003CD3 RID: 15571
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern IntPtr CSSNodeGetChild(IntPtr node, uint index);
|
|
|
|
// Token: 0x06003CD4 RID: 15572
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern uint CSSNodeChildCount(IntPtr node);
|
|
|
|
// Token: 0x06003CD5 RID: 15573
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeCalculateLayout(IntPtr node, float availableWidth, float availableHeight, CSSDirection parentDirection);
|
|
|
|
// Token: 0x06003CD6 RID: 15574
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeMarkDirty(IntPtr node);
|
|
|
|
// Token: 0x06003CD7 RID: 15575
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern bool CSSNodeIsDirty(IntPtr node);
|
|
|
|
// Token: 0x06003CD8 RID: 15576
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodePrint(IntPtr node, CSSPrintOptions options);
|
|
|
|
// Token: 0x06003CD9 RID: 15577
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern bool CSSValueIsUndefined(float value);
|
|
|
|
// Token: 0x06003CDA RID: 15578
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeCopyStyle(IntPtr dstNode, IntPtr srcNode);
|
|
|
|
// Token: 0x06003CDB RID: 15579
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeSetContext(IntPtr node, IntPtr context);
|
|
|
|
// Token: 0x06003CDC RID: 15580
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern IntPtr CSSNodeGetContext(IntPtr node);
|
|
|
|
// Token: 0x06003CDD RID: 15581 RVA: 0x0006B6E4 File Offset: 0x000698E4
|
|
public static void CSSNodeSetMeasureFunc(IntPtr node, CSSMeasureFunc measureFunc)
|
|
{
|
|
if (measureFunc != null)
|
|
{
|
|
Native.s_MeasureFunctions[node] = new WeakReference(measureFunc);
|
|
CSSLayoutCallbacks.RegisterWrapper(node);
|
|
}
|
|
else if (Native.s_MeasureFunctions.ContainsKey(node))
|
|
{
|
|
Native.s_MeasureFunctions.Remove(node);
|
|
CSSLayoutCallbacks.UnegisterWrapper(node);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06003CDE RID: 15582 RVA: 0x0006B73C File Offset: 0x0006993C
|
|
public static CSSMeasureFunc CSSNodeGetMeasureFunc(IntPtr node)
|
|
{
|
|
WeakReference weakReference = null;
|
|
CSSMeasureFunc cssmeasureFunc;
|
|
if (Native.s_MeasureFunctions.TryGetValue(node, out weakReference) && weakReference.IsAlive)
|
|
{
|
|
cssmeasureFunc = weakReference.Target as CSSMeasureFunc;
|
|
}
|
|
else
|
|
{
|
|
cssmeasureFunc = null;
|
|
}
|
|
return cssmeasureFunc;
|
|
}
|
|
|
|
// Token: 0x06003CDF RID: 15583 RVA: 0x0006B784 File Offset: 0x00069984
|
|
[RequiredByNativeCode]
|
|
public unsafe static void CSSNodeMeasureInvoke(IntPtr node, float width, CSSMeasureMode widthMode, float height, CSSMeasureMode heightMode, IntPtr returnValueAddress)
|
|
{
|
|
CSSMeasureFunc cssmeasureFunc = Native.CSSNodeGetMeasureFunc(node);
|
|
if (cssmeasureFunc != null)
|
|
{
|
|
*(CSSSize*)(void*)returnValueAddress = cssmeasureFunc(node, width, widthMode, height, heightMode);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06003CE0 RID: 15584
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeSetHasNewLayout(IntPtr node, bool hasNewLayout);
|
|
|
|
// Token: 0x06003CE1 RID: 15585
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern bool CSSNodeGetHasNewLayout(IntPtr node);
|
|
|
|
// Token: 0x06003CE2 RID: 15586
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetDirection(IntPtr node, CSSDirection direction);
|
|
|
|
// Token: 0x06003CE3 RID: 15587
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSDirection CSSNodeStyleGetDirection(IntPtr node);
|
|
|
|
// Token: 0x06003CE4 RID: 15588
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetFlexDirection(IntPtr node, CSSFlexDirection flexDirection);
|
|
|
|
// Token: 0x06003CE5 RID: 15589
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSFlexDirection CSSNodeStyleGetFlexDirection(IntPtr node);
|
|
|
|
// Token: 0x06003CE6 RID: 15590
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetJustifyContent(IntPtr node, CSSJustify justifyContent);
|
|
|
|
// Token: 0x06003CE7 RID: 15591
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSJustify CSSNodeStyleGetJustifyContent(IntPtr node);
|
|
|
|
// Token: 0x06003CE8 RID: 15592
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetAlignContent(IntPtr node, CSSAlign alignContent);
|
|
|
|
// Token: 0x06003CE9 RID: 15593
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSAlign CSSNodeStyleGetAlignContent(IntPtr node);
|
|
|
|
// Token: 0x06003CEA RID: 15594
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetAlignItems(IntPtr node, CSSAlign alignItems);
|
|
|
|
// Token: 0x06003CEB RID: 15595
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSAlign CSSNodeStyleGetAlignItems(IntPtr node);
|
|
|
|
// Token: 0x06003CEC RID: 15596
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetAlignSelf(IntPtr node, CSSAlign alignSelf);
|
|
|
|
// Token: 0x06003CED RID: 15597
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSAlign CSSNodeStyleGetAlignSelf(IntPtr node);
|
|
|
|
// Token: 0x06003CEE RID: 15598
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetPositionType(IntPtr node, CSSPositionType positionType);
|
|
|
|
// Token: 0x06003CEF RID: 15599
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSPositionType CSSNodeStyleGetPositionType(IntPtr node);
|
|
|
|
// Token: 0x06003CF0 RID: 15600
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetFlexWrap(IntPtr node, CSSWrap flexWrap);
|
|
|
|
// Token: 0x06003CF1 RID: 15601
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSWrap CSSNodeStyleGetFlexWrap(IntPtr node);
|
|
|
|
// Token: 0x06003CF2 RID: 15602
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetOverflow(IntPtr node, CSSOverflow flexWrap);
|
|
|
|
// Token: 0x06003CF3 RID: 15603
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSOverflow CSSNodeStyleGetOverflow(IntPtr node);
|
|
|
|
// Token: 0x06003CF4 RID: 15604
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetFlex(IntPtr node, float flex);
|
|
|
|
// Token: 0x06003CF5 RID: 15605
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetFlexGrow(IntPtr node, float flexGrow);
|
|
|
|
// Token: 0x06003CF6 RID: 15606
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetFlexGrow(IntPtr node);
|
|
|
|
// Token: 0x06003CF7 RID: 15607
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetFlexShrink(IntPtr node, float flexShrink);
|
|
|
|
// Token: 0x06003CF8 RID: 15608
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetFlexShrink(IntPtr node);
|
|
|
|
// Token: 0x06003CF9 RID: 15609
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetFlexBasis(IntPtr node, float flexBasis);
|
|
|
|
// Token: 0x06003CFA RID: 15610
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetFlexBasis(IntPtr node);
|
|
|
|
// Token: 0x06003CFB RID: 15611
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetWidth(IntPtr node, float width);
|
|
|
|
// Token: 0x06003CFC RID: 15612
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetWidth(IntPtr node);
|
|
|
|
// Token: 0x06003CFD RID: 15613
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetHeight(IntPtr node, float height);
|
|
|
|
// Token: 0x06003CFE RID: 15614
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetHeight(IntPtr node);
|
|
|
|
// Token: 0x06003CFF RID: 15615
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetMinWidth(IntPtr node, float minWidth);
|
|
|
|
// Token: 0x06003D00 RID: 15616
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetMinWidth(IntPtr node);
|
|
|
|
// Token: 0x06003D01 RID: 15617
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetMinHeight(IntPtr node, float minHeight);
|
|
|
|
// Token: 0x06003D02 RID: 15618
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetMinHeight(IntPtr node);
|
|
|
|
// Token: 0x06003D03 RID: 15619
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetMaxWidth(IntPtr node, float maxWidth);
|
|
|
|
// Token: 0x06003D04 RID: 15620
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetMaxWidth(IntPtr node);
|
|
|
|
// Token: 0x06003D05 RID: 15621
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetMaxHeight(IntPtr node, float maxHeight);
|
|
|
|
// Token: 0x06003D06 RID: 15622
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetMaxHeight(IntPtr node);
|
|
|
|
// Token: 0x06003D07 RID: 15623
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetAspectRatio(IntPtr node, float aspectRatio);
|
|
|
|
// Token: 0x06003D08 RID: 15624
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetAspectRatio(IntPtr node);
|
|
|
|
// Token: 0x06003D09 RID: 15625
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetPosition(IntPtr node, CSSEdge edge, float position);
|
|
|
|
// Token: 0x06003D0A RID: 15626
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetPosition(IntPtr node, CSSEdge edge);
|
|
|
|
// Token: 0x06003D0B RID: 15627
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetMargin(IntPtr node, CSSEdge edge, float margin);
|
|
|
|
// Token: 0x06003D0C RID: 15628
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetMargin(IntPtr node, CSSEdge edge);
|
|
|
|
// Token: 0x06003D0D RID: 15629
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetPadding(IntPtr node, CSSEdge edge, float padding);
|
|
|
|
// Token: 0x06003D0E RID: 15630
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetPadding(IntPtr node, CSSEdge edge);
|
|
|
|
// Token: 0x06003D0F RID: 15631
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void CSSNodeStyleSetBorder(IntPtr node, CSSEdge edge, float border);
|
|
|
|
// Token: 0x06003D10 RID: 15632
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeStyleGetBorder(IntPtr node, CSSEdge edge);
|
|
|
|
// Token: 0x06003D11 RID: 15633
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeLayoutGetLeft(IntPtr node);
|
|
|
|
// Token: 0x06003D12 RID: 15634
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeLayoutGetTop(IntPtr node);
|
|
|
|
// Token: 0x06003D13 RID: 15635
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeLayoutGetRight(IntPtr node);
|
|
|
|
// Token: 0x06003D14 RID: 15636
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeLayoutGetBottom(IntPtr node);
|
|
|
|
// Token: 0x06003D15 RID: 15637
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeLayoutGetWidth(IntPtr node);
|
|
|
|
// Token: 0x06003D16 RID: 15638
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern float CSSNodeLayoutGetHeight(IntPtr node);
|
|
|
|
// Token: 0x06003D17 RID: 15639
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern CSSDirection CSSNodeLayoutGetDirection(IntPtr node);
|
|
|
|
// Token: 0x040012DD RID: 4829
|
|
private const string DllName = "CSSLayout";
|
|
|
|
// Token: 0x040012DE RID: 4830
|
|
private static Dictionary<IntPtr, WeakReference> s_MeasureFunctions = new Dictionary<IntPtr, WeakReference>();
|
|
}
|
|
}
|