Commit 76ffc732 authored by Mohamad Al-Jaf's avatar Mohamad Al-Jaf Committed by Alexandre Julliard

include: Add Windows.UI.Composition.CompositionPropertySet definition.

Needed for mingw Firefox build and Windows.UI.Composition.Compositor.
parent 438185ed
......@@ -40,6 +40,7 @@ namespace Windows.UI.Composition {
typedef enum CompositionColorSpace CompositionColorSpace;
typedef enum CompositionCompositeMode CompositionCompositeMode;
typedef enum CompositionEffectFactoryLoadStatus CompositionEffectFactoryLoadStatus;
typedef enum CompositionGetValueStatus CompositionGetValueStatus;
typedef enum CompositionStretch CompositionStretch;
interface IColorKeyFrameAnimation;
......@@ -54,6 +55,8 @@ namespace Windows.UI.Composition {
interface ICompositionEasingFunctionStatics;
interface ICompositionEffectBrush;
interface ICompositionEffectFactory;
interface ICompositionPropertySet;
interface ICompositionPropertySet2;
interface ICompositionSurface;
interface ICompositionSurfaceBrush;
interface ICompositionSurfaceBrush2;
......@@ -82,6 +85,7 @@ namespace Windows.UI.Composition {
runtimeclass CompositionEffectBrush;
runtimeclass CompositionEffectFactory;
runtimeclass CompositionObject;
runtimeclass CompositionPropertySet;
runtimeclass CompositionSurfaceBrush;
runtimeclass ContainerVisual;
runtimeclass CubicBezierEasingFunction;
......@@ -185,6 +189,16 @@ namespace Windows.UI.Composition {
[
contract(Windows.Foundation.UniversalApiContract, 2.0)
]
enum CompositionGetValueStatus
{
Succeeded = 0,
TypeMismatch = 1,
NotFound = 2,
};
[
contract(Windows.Foundation.UniversalApiContract, 2.0)
]
enum CompositionStretch
{
None = 0,
......@@ -299,6 +313,49 @@ namespace Windows.UI.Composition {
[
contract(Windows.Foundation.UniversalApiContract, 2.0),
exclusiveto(Windows.UI.Composition.CompositionPropertySet),
uuid(c9d6d202-5f67-4453-9117-9eadd430d3c2)
]
interface ICompositionPropertySet : IInspectable
{
HRESULT InsertColor([in] HSTRING name, [in] Windows.UI.Color value);
HRESULT InsertMatrix3x2([in] HSTRING name, [in] Windows.Foundation.Numerics.Matrix3x2 value);
HRESULT InsertMatrix4x4([in] HSTRING name, [in] Windows.Foundation.Numerics.Matrix4x4 value);
HRESULT InsertQuaternion([in] HSTRING name, [in] Windows.Foundation.Numerics.Quaternion value);
HRESULT InsertScalar([in] HSTRING name, [in] FLOAT value);
HRESULT InsertVector2([in] HSTRING name, [in] Windows.Foundation.Numerics.Vector2 value);
HRESULT InsertVector3([in] HSTRING name, [in] Windows.Foundation.Numerics.Vector3 value);
HRESULT InsertVector4([in] HSTRING name, [in] Windows.Foundation.Numerics.Vector4 value);
HRESULT TryGetColor([in] HSTRING name, [out] Windows.UI.Color *value, [out, retval] Windows.UI.Composition.CompositionGetValueStatus *result);
HRESULT TryGetMatrix3x2(
[in] HSTRING name, [out] Windows.Foundation.Numerics.Matrix3x2 *value,
[out, retval] Windows.UI.Composition.CompositionGetValueStatus *result
);
HRESULT TryGetMatrix4x4(
[in] HSTRING name, [out] Windows.Foundation.Numerics.Matrix4x4 *value,
[out, retval] Windows.UI.Composition.CompositionGetValueStatus *result
);
HRESULT TryGetQuaternion(
[in] HSTRING name, [out] Windows.Foundation.Numerics.Quaternion *value,
[out, retval] Windows.UI.Composition.CompositionGetValueStatus *result
);
HRESULT TryGetScalar([in] HSTRING name, [out] FLOAT *value, [out, retval] Windows.UI.Composition.CompositionGetValueStatus *result);
HRESULT TryGetVector2(
[in] HSTRING name, [out] Windows.Foundation.Numerics.Vector2 *value,
[out, retval] Windows.UI.Composition.CompositionGetValueStatus *result
);
HRESULT TryGetVector3(
[in] HSTRING name, [out] Windows.Foundation.Numerics.Vector3 *value,
[out, retval] Windows.UI.Composition.CompositionGetValueStatus *result
);
HRESULT TryGetVector4(
[in] HSTRING name, [out] Windows.Foundation.Numerics.Vector4 *value,
[out, retval] Windows.UI.Composition.CompositionGetValueStatus *result
);
}
[
contract(Windows.Foundation.UniversalApiContract, 2.0),
uuid(1527540d-42c7-47a6-a408-668f79a90dfb)
]
interface ICompositionSurface : IInspectable
......@@ -549,6 +606,17 @@ namespace Windows.UI.Composition {
marshaling_behavior(agile),
threading(both)
]
runtimeclass CompositionPropertySet : Windows.UI.Composition.CompositionObject
{
[default] interface Windows.UI.Composition.ICompositionPropertySet;
[contract(Windows.Foundation.UniversalApiContract, 3.0)] interface Windows.UI.Composition.ICompositionPropertySet2;
}
[
contract(Windows.Foundation.UniversalApiContract, 2.0),
marshaling_behavior(agile),
threading(both)
]
runtimeclass CompositionSurfaceBrush : Windows.UI.Composition.CompositionBrush
{
[default] interface Windows.UI.Composition.ICompositionSurfaceBrush;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment