mirror of
git://source.winehq.org/git/wine.git
synced 2024-11-05 18:01:34 +00:00
131 lines
4.4 KiB
Text
131 lines
4.4 KiB
Text
|
/*
|
||
|
* Copyright (C) 2023 Mohamad Al-Jaf
|
||
|
*
|
||
|
* 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
|
||
|
|
||
|
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"; */
|
||
|
/* import "windows.ui.input.idl"; */
|
||
|
/* import "windows.ui.input.inking.idl"; */
|
||
|
/* import "windows.ui.input.inking.core.idl"; */
|
||
|
/* import "windows.ui.popups.idl"; */
|
||
|
|
||
|
namespace Windows.UI.Core {
|
||
|
typedef enum CoreDispatcherPriority CoreDispatcherPriority;
|
||
|
typedef enum CoreProcessEventsOption CoreProcessEventsOption;
|
||
|
|
||
|
interface ICoreAcceleratorKeys;
|
||
|
interface ICoreDispatcher;
|
||
|
interface ICoreDispatcher2;
|
||
|
interface ICoreDispatcherWithTaskPriority;
|
||
|
interface IIdleDispatchedHandlerArgs;
|
||
|
|
||
|
runtimeclass AcceleratorKeyEventArgs;
|
||
|
runtimeclass CoreDispatcher;
|
||
|
runtimeclass IdleDispatchedHandlerArgs;
|
||
|
|
||
|
[
|
||
|
contract(Windows.Foundation.UniversalApiContract, 1.0)
|
||
|
]
|
||
|
enum CoreDispatcherPriority
|
||
|
{
|
||
|
[contract(Windows.Foundation.UniversalApiContract, 1.0)]
|
||
|
Idle = -2,
|
||
|
Low = -1,
|
||
|
Normal = 0,
|
||
|
High = 1,
|
||
|
};
|
||
|
|
||
|
[
|
||
|
contract(Windows.Foundation.UniversalApiContract, 1.0)
|
||
|
]
|
||
|
enum CoreProcessEventsOption
|
||
|
{
|
||
|
ProcessOneAndAllPending = 0,
|
||
|
ProcessOneIfPresent = 1,
|
||
|
ProcessUntilQuit = 2,
|
||
|
ProcessAllIfPresent = 3,
|
||
|
};
|
||
|
|
||
|
[
|
||
|
contract(Windows.Foundation.UniversalApiContract, 1.0),
|
||
|
uuid(d1f276c4-98d8-4636-bf49-eb79507548e9)
|
||
|
]
|
||
|
delegate HRESULT DispatchedHandler();
|
||
|
|
||
|
[
|
||
|
contract(Windows.Foundation.UniversalApiContract, 1.0),
|
||
|
uuid(a42b0c24-7f21-4abc-99c1-8f01007f0880)
|
||
|
]
|
||
|
delegate HRESULT IdleDispatchedHandler([in] Windows.UI.Core.IdleDispatchedHandlerArgs *e);
|
||
|
|
||
|
[
|
||
|
contract(Windows.Foundation.UniversalApiContract, 1.0),
|
||
|
exclusiveto(Windows.UI.Core.CoreDispatcher),
|
||
|
uuid(60db2fa8-b705-4fde-a7d6-ebbb1891d39e)
|
||
|
]
|
||
|
interface ICoreDispatcher : IInspectable
|
||
|
requires Windows.UI.Core.ICoreAcceleratorKeys
|
||
|
{
|
||
|
[propget] HRESULT HasThreadAccess([out, retval] boolean *value);
|
||
|
HRESULT ProcessEvents([in] Windows.UI.Core.CoreProcessEventsOption options);
|
||
|
HRESULT RunAsync([in] Windows.UI.Core.CoreDispatcherPriority priority, [in] Windows.UI.Core.DispatchedHandler *callback,
|
||
|
[out, retval] Windows.Foundation.IAsyncAction **action);
|
||
|
HRESULT RunIdleAsync([in] Windows.UI.Core.IdleDispatchedHandler *callback, [out, retval] Windows.Foundation.IAsyncAction **action);
|
||
|
}
|
||
|
|
||
|
[
|
||
|
contract(Windows.Foundation.UniversalApiContract, 1.0),
|
||
|
exclusiveto(Windows.UI.Core.IdleDispatchedHandlerArgs),
|
||
|
uuid(98bb6a24-dc1c-43cb-b4ed-d1c0eb2391f3)
|
||
|
]
|
||
|
interface IIdleDispatchedHandlerArgs : IInspectable
|
||
|
{
|
||
|
[propget] HRESULT IsDispatcherIdle([out, retval] boolean *value);
|
||
|
}
|
||
|
|
||
|
[
|
||
|
contract(Windows.Foundation.UniversalApiContract, 1.0),
|
||
|
marshaling_behavior(agile)
|
||
|
]
|
||
|
runtimeclass CoreDispatcher
|
||
|
{
|
||
|
[default] interface Windows.UI.Core.ICoreDispatcher;
|
||
|
interface Windows.UI.Core.ICoreAcceleratorKeys;
|
||
|
[contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.UI.Core.ICoreDispatcherWithTaskPriority;
|
||
|
[contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.UI.Core.ICoreDispatcher2;
|
||
|
}
|
||
|
|
||
|
[
|
||
|
contract(Windows.Foundation.UniversalApiContract, 1.0),
|
||
|
marshaling_behavior(standard)
|
||
|
]
|
||
|
runtimeclass IdleDispatchedHandlerArgs
|
||
|
{
|
||
|
[default] interface Windows.UI.Core.IIdleDispatchedHandlerArgs;
|
||
|
}
|
||
|
}
|