mirror of
https://gitlab.winehq.org/wine/wine.git
synced 2025-08-28 10:13:55 +02:00
188 lines
7.8 KiB
Text
188 lines
7.8 KiB
Text
/*
|
|
* Copyright 2025 Zhiyi Zhang for CodeWeavers
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
|
*/
|
|
|
|
#ifdef __WIDL__
|
|
#pragma winrt ns_prefix
|
|
#endif
|
|
|
|
#ifndef DO_NO_IMPORTS
|
|
import "inspectable.idl";
|
|
import "asyncinfo.idl";
|
|
import "eventtoken.idl";
|
|
import "windowscontracts.idl";
|
|
import "windows.foundation.idl";
|
|
import "windows.system.idl";
|
|
import "windows.ui.idl";
|
|
import "windows.ui.composition.idl";
|
|
#endif
|
|
|
|
namespace Windows.UI.WindowManagement
|
|
{
|
|
typedef enum WindowingEnvironmentKind WindowingEnvironmentKind;
|
|
|
|
interface IDisplayRegion;
|
|
interface IWindowingEnvironment;
|
|
interface IWindowingEnvironmentAddedEventArgs;
|
|
interface IWindowingEnvironmentChangedEventArgs;
|
|
interface IWindowingEnvironmentRemovedEventArgs;
|
|
interface IWindowingEnvironmentStatics;
|
|
|
|
runtimeclass DisplayRegion;
|
|
runtimeclass WindowingEnvironment;
|
|
runtimeclass WindowingEnvironmentAddedEventArgs;
|
|
runtimeclass WindowingEnvironmentChangedEventArgs;
|
|
runtimeclass WindowingEnvironmentRemovedEventArgs;
|
|
|
|
declare {
|
|
interface Windows.Foundation.Collections.IIterable<Windows.UI.WindowManagement.DisplayRegion *>;
|
|
interface Windows.Foundation.Collections.IIterable<Windows.UI.WindowManagement.WindowingEnvironment *>;
|
|
interface Windows.Foundation.Collections.IIterator<Windows.UI.WindowManagement.DisplayRegion *>;
|
|
interface Windows.Foundation.Collections.IIterator<Windows.UI.WindowManagement.WindowingEnvironment *>;
|
|
interface Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.DisplayRegion *>;
|
|
interface Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.WindowingEnvironment *>;
|
|
interface Windows.Foundation.TypedEventHandler<Windows.UI.WindowManagement.DisplayRegion *, IInspectable *>;
|
|
interface Windows.Foundation.TypedEventHandler<Windows.UI.WindowManagement.WindowingEnvironment *, Windows.UI.WindowManagement.WindowingEnvironmentChangedEventArgs *>;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0)
|
|
]
|
|
enum WindowingEnvironmentKind
|
|
{
|
|
Unknown = 0,
|
|
Overlapped = 1,
|
|
Tiled = 2,
|
|
};
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
exclusiveto(Windows.UI.WindowManagement.DisplayRegion),
|
|
uuid(db50c3a2-4094-5f47-8cb1-ea01ddafaa94)
|
|
]
|
|
interface IDisplayRegion : IInspectable
|
|
{
|
|
[propget] HRESULT DisplayMonitorDeviceId([out, retval] HSTRING *value);
|
|
[propget] HRESULT IsVisible([out, retval] boolean *value);
|
|
[propget] HRESULT WorkAreaOffset([out, retval] Windows.Foundation.Point *value);
|
|
[propget] HRESULT WorkAreaSize([out, retval] Windows.Foundation.Size *value);
|
|
[propget] HRESULT WindowingEnvironment([out, retval] Windows.UI.WindowManagement.WindowingEnvironment **value);
|
|
[eventadd] HRESULT Changed([in] Windows.Foundation.TypedEventHandler<Windows.UI.WindowManagement.DisplayRegion *, IInspectable *> *handler, [out, retval] EventRegistrationToken *token);
|
|
[eventremove] HRESULT Changed([in] EventRegistrationToken token);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
exclusiveto(Windows.UI.WindowManagement.WindowingEnvironment),
|
|
uuid(264363c0-2a49-5417-b3ae-48a71c63a3bd)
|
|
]
|
|
interface IWindowingEnvironment : IInspectable
|
|
{
|
|
[propget] HRESULT IsEnabled([out, retval] boolean *value);
|
|
[propget] HRESULT Kind([out, retval] Windows.UI.WindowManagement.WindowingEnvironmentKind *value);
|
|
HRESULT GetDisplayRegions([out, retval] Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.DisplayRegion *> **result);
|
|
[eventadd] HRESULT Changed([in] Windows.Foundation.TypedEventHandler<Windows.UI.WindowManagement.WindowingEnvironment *, Windows.UI.WindowManagement.WindowingEnvironmentChangedEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
|
|
[eventremove] HRESULT Changed([in] EventRegistrationToken token);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
exclusiveto(Windows.UI.WindowManagement.WindowingEnvironmentAddedEventArgs),
|
|
uuid(ff2a5b7f-f183-5c66-99b2-429082069299)
|
|
]
|
|
interface IWindowingEnvironmentAddedEventArgs : IInspectable
|
|
{
|
|
[propget] HRESULT WindowingEnvironment([out, retval] Windows.UI.WindowManagement.WindowingEnvironment **value);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
exclusiveto(Windows.UI.WindowManagement.WindowingEnvironmentChangedEventArgs),
|
|
uuid(4160cfc6-023d-5e9a-b431-350e67dc978a)
|
|
]
|
|
interface IWindowingEnvironmentChangedEventArgs : IInspectable
|
|
{
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
exclusiveto(Windows.UI.WindowManagement.WindowingEnvironmentRemovedEventArgs),
|
|
uuid(2e5b5473-beff-5e53-9316-7e775fe568b3)
|
|
]
|
|
interface IWindowingEnvironmentRemovedEventArgs : IInspectable
|
|
{
|
|
[propget] HRESULT WindowingEnvironment([out, retval] Windows.UI.WindowManagement.WindowingEnvironment **value);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
exclusiveto(Windows.UI.WindowManagement.WindowingEnvironment),
|
|
uuid(874e9fb7-c642-55ab-8aa2-162f734a9a72)
|
|
]
|
|
interface IWindowingEnvironmentStatics : IInspectable
|
|
{
|
|
[overload("FindAll")] HRESULT FindAll([out, retval] Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.WindowingEnvironment *> **result);
|
|
[overload("FindAll")] HRESULT FindAllWithKind([in] Windows.UI.WindowManagement.WindowingEnvironmentKind kind, [out, retval] Windows.Foundation.Collections.IVectorView<Windows.UI.WindowManagement.WindowingEnvironment *> **result);
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
marshaling_behavior(agile)
|
|
]
|
|
runtimeclass DisplayRegion
|
|
{
|
|
[default] interface Windows.UI.WindowManagement.IDisplayRegion;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
marshaling_behavior(agile),
|
|
static(Windows.UI.WindowManagement.IWindowingEnvironmentStatics, Windows.Foundation.UniversalApiContract, 8.0),
|
|
threading(both)
|
|
]
|
|
runtimeclass WindowingEnvironment
|
|
{
|
|
[default] interface Windows.UI.WindowManagement.IWindowingEnvironment;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
marshaling_behavior(agile)
|
|
]
|
|
runtimeclass WindowingEnvironmentAddedEventArgs
|
|
{
|
|
[default] interface Windows.UI.WindowManagement.IWindowingEnvironmentAddedEventArgs;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
marshaling_behavior(agile)
|
|
]
|
|
runtimeclass WindowingEnvironmentChangedEventArgs
|
|
{
|
|
[default] interface Windows.UI.WindowManagement.IWindowingEnvironmentChangedEventArgs;
|
|
}
|
|
|
|
[
|
|
contract(Windows.Foundation.UniversalApiContract, 8.0),
|
|
marshaling_behavior(agile)
|
|
]
|
|
runtimeclass WindowingEnvironmentRemovedEventArgs
|
|
{
|
|
[default] interface Windows.UI.WindowManagement.IWindowingEnvironmentRemovedEventArgs;
|
|
}
|
|
}
|