1
0
mirror of https://github.com/wine-mirror/wine synced 2024-06-29 06:14:34 +00:00
wine/include/windows.applicationmodel.core.idl

456 lines
20 KiB
Plaintext

/*
* Copyright 2023 Rémi Bernon 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 "windows.foundation.idl";
import "windows.storage.idl";
import "windows.system.idl";
import "windows.applicationmodel.idl";
import "windows.applicationmodel.activation.idl";
import "windows.ui.core.idl";
#endif
namespace Windows.ApplicationModel.Core {
runtimeclass CoreApplicationView;
}
namespace Windows.ApplicationModel.Activation {
interface IActivatedEventArgs;
runtimeclass BackgroundActivatedEventArgs;
declare {
interface Windows.Foundation.EventHandler<Windows.ApplicationModel.Activation.BackgroundActivatedEventArgs *>;
interface Windows.Foundation.TypedEventHandler<Windows.ApplicationModel.Core.CoreApplicationView *, Windows.ApplicationModel.Activation.IActivatedEventArgs *>;
}
}
namespace Windows.ApplicationModel {
runtimeclass AppDisplayInfo;
runtimeclass EnteredBackgroundEventArgs;
runtimeclass LeavingBackgroundEventArgs;
runtimeclass SuspendingEventArgs;
declare {
interface Windows.Foundation.EventHandler<Windows.ApplicationModel.EnteredBackgroundEventArgs *>;
interface Windows.Foundation.EventHandler<Windows.ApplicationModel.LeavingBackgroundEventArgs *>;
interface Windows.Foundation.EventHandler<Windows.ApplicationModel.SuspendingEventArgs *>;
}
}
namespace Windows.Foundation {
interface IGetActivationFactory;
}
namespace Windows.UI.Core {
runtimeclass CoreDispatcher;
runtimeclass CoreWindow;
}
namespace Windows.ApplicationModel.Core {
typedef enum AppRestartFailureReason AppRestartFailureReason;
interface IAppListEntry;
interface ICoreApplication;
interface ICoreApplication2;
interface ICoreApplication3;
interface ICoreApplicationExit;
interface ICoreApplicationUnhandledError;
interface ICoreApplicationUseCount;
interface ICoreApplicationView;
interface ICoreApplicationView2;
interface ICoreApplicationView3;
interface ICoreApplicationView5;
interface ICoreApplicationView6;
interface ICoreApplicationViewTitleBar;
interface ICoreImmersiveApplication;
interface ICoreImmersiveApplication2;
interface ICoreImmersiveApplication3;
interface IFrameworkView;
interface IFrameworkViewSource;
interface IHostedViewClosingEventArgs;
interface IUnhandledError;
interface IUnhandledErrorDetectedEventArgs;
runtimeclass AppListEntry;
runtimeclass CoreApplication;
runtimeclass CoreApplicationView;
runtimeclass CoreApplicationViewTitleBar;
runtimeclass HostedViewClosingEventArgs;
runtimeclass UnhandledError;
runtimeclass UnhandledErrorDetectedEventArgs;
declare {
interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.ApplicationModel.Core.AppRestartFailureReason>;
interface Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Core.CoreApplicationView *>;
interface Windows.Foundation.EventHandler<Windows.ApplicationModel.Core.UnhandledErrorDetectedEventArgs *>;
interface Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Core.AppRestartFailureReason>;
interface Windows.Foundation.TypedEventHandler<Windows.ApplicationModel.Core.CoreApplicationView *, Windows.ApplicationModel.Core.HostedViewClosingEventArgs *>;
interface Windows.Foundation.TypedEventHandler<Windows.ApplicationModel.Core.CoreApplicationViewTitleBar *, IInspectable *>;
}
[
contract(Windows.Foundation.UniversalApiContract, 5.0)
]
enum AppRestartFailureReason
{
RestartPending = 0,
NotInForeground = 1,
InvalidUser = 2,
Other = 3
};
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.AppListEntry),
uuid(ef00f07f-2108-490a-877a-8a9f17c25fad)
]
interface IAppListEntry : IInspectable
{
[propget] HRESULT DisplayInfo([out, retval] Windows.ApplicationModel.AppDisplayInfo **value);
HRESULT LaunchAsync([out, retval] Windows.Foundation.IAsyncOperation<boolean> **operation);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplication),
uuid(0aacf7a4-5e1d-49df-8034-fb6a68bc5ed1)
]
interface ICoreApplication : IInspectable
{
[propget] HRESULT Id([out, retval] HSTRING *value);
[eventadd] HRESULT Suspending([in] Windows.Foundation.EventHandler<Windows.ApplicationModel.SuspendingEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT Suspending([in] EventRegistrationToken token);
[eventadd] HRESULT Resuming([in] Windows.Foundation.EventHandler<IInspectable *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT Resuming([in] EventRegistrationToken token);
[propget] HRESULT Properties([out, retval] Windows.Foundation.Collections.IPropertySet **value);
HRESULT GetCurrentView([out, retval] Windows.ApplicationModel.Core.CoreApplicationView **value);
HRESULT Run([in] Windows.ApplicationModel.Core.IFrameworkViewSource *view_source);
HRESULT RunWithActivationFactories([in] Windows.Foundation.IGetActivationFactory *factory);
}
[
contract(Windows.Foundation.UniversalApiContract, 3.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplication),
uuid(998681fb-1ab6-4b7f-be4a-9a0645224c04)
]
interface ICoreApplication2 : IInspectable
{
[eventadd] HRESULT BackgroundActivated([in] Windows.Foundation.EventHandler<Windows.ApplicationModel.Activation.BackgroundActivatedEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT BackgroundActivated([in] EventRegistrationToken token);
[eventadd] HRESULT LeavingBackground([in] Windows.Foundation.EventHandler<Windows.ApplicationModel.LeavingBackgroundEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT LeavingBackground([in] EventRegistrationToken token);
[eventadd] HRESULT EnteredBackground([in] Windows.Foundation.EventHandler<Windows.ApplicationModel.EnteredBackgroundEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT EnteredBackground([in] EventRegistrationToken token);
HRESULT EnablePrelaunch([in] boolean value);
}
[
contract(Windows.Foundation.UniversalApiContract, 5.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplication),
uuid(feec0d39-598b-4507-8a67-772632580a57)
]
interface ICoreApplication3 : IInspectable
{
HRESULT RequestRestartAsync([in] HSTRING launch_arguments, [out, retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Core.AppRestartFailureReason> **operation);
HRESULT RequestRestartForUserAsync([in] Windows.System.User *user, [in] HSTRING launch_arguments, [out, retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Core.AppRestartFailureReason> **operation);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplication),
uuid(cf86461d-261e-4b72-9acd-44ed2ace6a29)
]
interface ICoreApplicationExit : IInspectable
{
HRESULT Exit();
[eventadd] HRESULT Exiting([in] Windows.Foundation.EventHandler<IInspectable *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT Exiting([in] EventRegistrationToken token);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
uuid(f0e24ab0-dd09-42e1-b0bc-e0e131f78d7e)
]
interface ICoreApplicationUnhandledError : IInspectable
{
[eventadd] HRESULT UnhandledErrorDetected([in] Windows.Foundation.EventHandler<Windows.ApplicationModel.Core.UnhandledErrorDetectedEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT UnhandledErrorDetected([in] EventRegistrationToken token);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplication),
uuid(518dc408-c077-475b-809e-0bc0c57e4b74)
]
interface ICoreApplicationUseCount : IInspectable
{
HRESULT IncrementApplicationUseCount();
HRESULT DecrementApplicationUseCount();
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplicationView),
uuid(638bb2db-451d-4661-b099-414f34ffb9f1)
]
interface ICoreApplicationView : IInspectable
{
[propget] HRESULT CoreWindow([out, retval] Windows.UI.Core.CoreWindow **value);
[eventadd] HRESULT Activated([in] Windows.Foundation.TypedEventHandler<Windows.ApplicationModel.Core.CoreApplicationView *, Windows.ApplicationModel.Activation.IActivatedEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT Activated([in] EventRegistrationToken token);
[propget] HRESULT IsMain([out, retval] boolean *value);
[propget] HRESULT IsHosted([out, retval] boolean *value);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplicationView),
uuid(68eb7adf-917f-48eb-9aeb-7de53e086ab1)
]
interface ICoreApplicationView2 : IInspectable
{
[propget] HRESULT Dispatcher([out, retval] Windows.UI.Core.CoreDispatcher **value);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplicationView),
uuid(07ebe1b3-a4cf-4550-ab70-b07e85330bc8)
]
interface ICoreApplicationView3 : IInspectable
{
[propget] HRESULT IsComponent([out, retval] boolean *value);
[propget] HRESULT TitleBar([out, retval] Windows.ApplicationModel.Core.CoreApplicationViewTitleBar **value);
[eventadd] HRESULT HostedViewClosing([in] Windows.Foundation.TypedEventHandler<Windows.ApplicationModel.Core.CoreApplicationView *, Windows.ApplicationModel.Core.HostedViewClosingEventArgs *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT HostedViewClosing([in] EventRegistrationToken token);
}
[
contract(Windows.Foundation.UniversalApiContract, 4.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplicationView),
uuid(2bc095a8-8ef0-446d-9e60-3a3e0428c671)
]
interface ICoreApplicationView5 : IInspectable
{
[propget] HRESULT Properties([out, retval] Windows.Foundation.Collections.IPropertySet **value);
}
[
contract(Windows.Foundation.UniversalApiContract, 5.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplicationView),
uuid(c119d49a-0679-49ba-803f-b79c5cf34cca)
]
interface ICoreApplicationView6 : IInspectable
{
[propget] HRESULT DispatcherQueue([out, retval] Windows.System.DispatcherQueue **value);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplicationViewTitleBar),
uuid(006d35e3-e1f1-431b-9508-29b96926ac53)
]
interface ICoreApplicationViewTitleBar : IInspectable
{
[propput] HRESULT ExtendViewIntoTitleBar([in] boolean value);
[propget] HRESULT ExtendViewIntoTitleBar([out, retval] boolean *value);
[propget] HRESULT SystemOverlayLeftInset([out, retval] DOUBLE *value);
[propget] HRESULT SystemOverlayRightInset([out, retval] DOUBLE *value);
[propget] HRESULT Height([out, retval] DOUBLE *value);
[eventadd] HRESULT LayoutMetricsChanged([in] Windows.Foundation.TypedEventHandler<Windows.ApplicationModel.Core.CoreApplicationViewTitleBar *, IInspectable *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT LayoutMetricsChanged([in] EventRegistrationToken token);
[propget] HRESULT IsVisible([out, retval] boolean *value);
[eventadd] HRESULT IsVisibleChanged([in] Windows.Foundation.TypedEventHandler<Windows.ApplicationModel.Core.CoreApplicationViewTitleBar *, IInspectable *> *handler, [out, retval] EventRegistrationToken *token);
[eventremove] HRESULT IsVisibleChanged([in] EventRegistrationToken token);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplication),
uuid(1ada0e3e-e4a2-4123-b451-dc96bf800419)
]
interface ICoreImmersiveApplication : IInspectable
{
[propget] HRESULT Views([out, retval] Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Core.CoreApplicationView *> **value);
[overload("CreateNewView"), default_overload]
HRESULT CreateNewView([in] HSTRING runtime_type, [in] HSTRING entry_point, [out, retval] Windows.ApplicationModel.Core.CoreApplicationView **view);
[propget] HRESULT MainView([out, retval] Windows.ApplicationModel.Core.CoreApplicationView **value);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplication),
uuid(828e1e36-e9e3-4cfc-9b66-48b78ea9bb2c)
]
interface ICoreImmersiveApplication2 : IInspectable
{
[overload("CreateNewView")]
HRESULT CreateNewViewFromMainView([out, retval] Windows.ApplicationModel.Core.CoreApplicationView **view);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.CoreApplication),
uuid(34a05b2f-ee0d-41e5-8314-cf10c91bf0af)
]
interface ICoreImmersiveApplication3 : IInspectable
{
[overload("CreateNewView")]
HRESULT CreateNewViewWithViewSource([in] Windows.ApplicationModel.Core.IFrameworkViewSource *view_source, [out, retval] Windows.ApplicationModel.Core.CoreApplicationView **view);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
uuid(faab5cd0-8924-45ac-ad0f-a08fae5d0324)
]
interface IFrameworkView : IInspectable
{
HRESULT Initialize([in] Windows.ApplicationModel.Core.CoreApplicationView *application_view);
HRESULT SetWindow([in] Windows.UI.Core.CoreWindow *window);
HRESULT Load([in] HSTRING entry_point);
HRESULT Run();
HRESULT Uninitialize();
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
uuid(cd770614-65c4-426c-9494-34fc43554862)
]
interface IFrameworkViewSource : IInspectable
{
HRESULT CreateView([out, retval] Windows.ApplicationModel.Core.IFrameworkView **view);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.HostedViewClosingEventArgs),
uuid(d238943c-b24e-4790-acb5-3e4243c4ff87)
]
interface IHostedViewClosingEventArgs : IInspectable
{
HRESULT GetDeferral([out, retval] Windows.Foundation.Deferral **result);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.UnhandledError),
uuid(9459b726-53b5-4686-9eaf-fa8162dc3980)
]
interface IUnhandledError : IInspectable
{
[propget] HRESULT Handled([out, retval] boolean *value);
HRESULT Propagate();
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
exclusiveto(Windows.ApplicationModel.Core.UnhandledErrorDetectedEventArgs),
uuid(679ab78b-b336-4822-ac40-0d750f0b7a2b)
]
interface IUnhandledErrorDetectedEventArgs : IInspectable
{
[propget] HRESULT UnhandledError([out, retval] Windows.ApplicationModel.Core.UnhandledError **value);
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(agile),
threading(both)
]
runtimeclass AppListEntry
{
[default] interface Windows.ApplicationModel.Core.IAppListEntry;
[contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.ApplicationModel.Core.IAppListEntry2;
[contract(Windows.Foundation.UniversalApiContract, 6.0)] interface Windows.ApplicationModel.Core.IAppListEntry3;
[contract(Windows.Foundation.UniversalApiContract, 11.0)] interface Windows.ApplicationModel.Core.IAppListEntry4;
}
#ifndef _WINDOWS_APPLICATIONMODEL
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(agile),
static(Windows.ApplicationModel.Core.ICoreApplication, Windows.Foundation.UniversalApiContract, 1.0),
static(Windows.ApplicationModel.Core.ICoreApplication2, Windows.Foundation.UniversalApiContract, 3.0),
static(Windows.ApplicationModel.Core.ICoreApplication3, Windows.Foundation.UniversalApiContract, 5.0),
static(Windows.ApplicationModel.Core.ICoreApplicationExit, Windows.Foundation.UniversalApiContract, 1.0),
static(Windows.ApplicationModel.Core.ICoreApplicationUnhandledError, Windows.Foundation.UniversalApiContract, 1.0),
static(Windows.ApplicationModel.Core.ICoreApplicationUseCount, Windows.Foundation.UniversalApiContract, 1.0),
static(Windows.ApplicationModel.Core.ICoreImmersiveApplication, Windows.Foundation.UniversalApiContract, 1.0),
static(Windows.ApplicationModel.Core.ICoreImmersiveApplication2, Windows.Foundation.UniversalApiContract, 1.0),
static(Windows.ApplicationModel.Core.ICoreImmersiveApplication3, Windows.Foundation.UniversalApiContract, 1.0)
]
runtimeclass CoreApplication
{
}
#endif
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(standard)
]
runtimeclass CoreApplicationView
{
[default] interface Windows.ApplicationModel.Core.ICoreApplicationView;
[contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.ApplicationModel.Core.ICoreApplicationView2;
[contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.ApplicationModel.Core.ICoreApplicationView3;
[contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.ApplicationModel.Core.ICoreApplicationView5;
[contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.ApplicationModel.Core.ICoreApplicationView6;
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(standard)
]
runtimeclass CoreApplicationViewTitleBar
{
[default] interface Windows.ApplicationModel.Core.ICoreApplicationViewTitleBar;
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(agile)
]
runtimeclass HostedViewClosingEventArgs
{
[default] interface Windows.ApplicationModel.Core.IHostedViewClosingEventArgs;
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(agile)
]
runtimeclass UnhandledError
{
[default] interface Windows.ApplicationModel.Core.IUnhandledError;
}
[
contract(Windows.Foundation.UniversalApiContract, 1.0),
marshaling_behavior(agile)
]
runtimeclass UnhandledErrorDetectedEventArgs
{
[default] interface Windows.ApplicationModel.Core.IUnhandledErrorDetectedEventArgs;
}
}