| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um/ |
Upload File : |
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
/* File created by MIDL compiler version 8.01.0622 */
/* @@MIDL_FILE_HEADING( ) */
#pragma warning( disable: 4049 ) /* more than 64k source lines */
/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
/* verify that the <rpcsal.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCSAL_H_VERSION__
#define __REQUIRED_RPCSAL_H_VERSION__ 100
#endif
#include "rpc.h"
#include "rpcndr.h"
#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif /* __RPCNDR_H_VERSION__ */
#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/
#ifndef __directmanipulation_h__
#define __directmanipulation_h__
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif
/* Forward Declarations */
#ifndef __IDirectManipulationManager_FWD_DEFINED__
#define __IDirectManipulationManager_FWD_DEFINED__
typedef interface IDirectManipulationManager IDirectManipulationManager;
#endif /* __IDirectManipulationManager_FWD_DEFINED__ */
#ifndef __IDirectManipulationManager2_FWD_DEFINED__
#define __IDirectManipulationManager2_FWD_DEFINED__
typedef interface IDirectManipulationManager2 IDirectManipulationManager2;
#endif /* __IDirectManipulationManager2_FWD_DEFINED__ */
#ifndef __IDirectManipulationManager3_FWD_DEFINED__
#define __IDirectManipulationManager3_FWD_DEFINED__
typedef interface IDirectManipulationManager3 IDirectManipulationManager3;
#endif /* __IDirectManipulationManager3_FWD_DEFINED__ */
#ifndef __IDirectManipulationViewport_FWD_DEFINED__
#define __IDirectManipulationViewport_FWD_DEFINED__
typedef interface IDirectManipulationViewport IDirectManipulationViewport;
#endif /* __IDirectManipulationViewport_FWD_DEFINED__ */
#ifndef __IDirectManipulationViewport2_FWD_DEFINED__
#define __IDirectManipulationViewport2_FWD_DEFINED__
typedef interface IDirectManipulationViewport2 IDirectManipulationViewport2;
#endif /* __IDirectManipulationViewport2_FWD_DEFINED__ */
#ifndef __IDirectManipulationViewportEventHandler_FWD_DEFINED__
#define __IDirectManipulationViewportEventHandler_FWD_DEFINED__
typedef interface IDirectManipulationViewportEventHandler IDirectManipulationViewportEventHandler;
#endif /* __IDirectManipulationViewportEventHandler_FWD_DEFINED__ */
#ifndef __IDirectManipulationContent_FWD_DEFINED__
#define __IDirectManipulationContent_FWD_DEFINED__
typedef interface IDirectManipulationContent IDirectManipulationContent;
#endif /* __IDirectManipulationContent_FWD_DEFINED__ */
#ifndef __IDirectManipulationPrimaryContent_FWD_DEFINED__
#define __IDirectManipulationPrimaryContent_FWD_DEFINED__
typedef interface IDirectManipulationPrimaryContent IDirectManipulationPrimaryContent;
#endif /* __IDirectManipulationPrimaryContent_FWD_DEFINED__ */
#ifndef __IDirectManipulationDragDropEventHandler_FWD_DEFINED__
#define __IDirectManipulationDragDropEventHandler_FWD_DEFINED__
typedef interface IDirectManipulationDragDropEventHandler IDirectManipulationDragDropEventHandler;
#endif /* __IDirectManipulationDragDropEventHandler_FWD_DEFINED__ */
#ifndef __IDirectManipulationDragDropBehavior_FWD_DEFINED__
#define __IDirectManipulationDragDropBehavior_FWD_DEFINED__
typedef interface IDirectManipulationDragDropBehavior IDirectManipulationDragDropBehavior;
#endif /* __IDirectManipulationDragDropBehavior_FWD_DEFINED__ */
#ifndef __IDirectManipulationInteractionEventHandler_FWD_DEFINED__
#define __IDirectManipulationInteractionEventHandler_FWD_DEFINED__
typedef interface IDirectManipulationInteractionEventHandler IDirectManipulationInteractionEventHandler;
#endif /* __IDirectManipulationInteractionEventHandler_FWD_DEFINED__ */
#ifndef __IDirectManipulationFrameInfoProvider_FWD_DEFINED__
#define __IDirectManipulationFrameInfoProvider_FWD_DEFINED__
typedef interface IDirectManipulationFrameInfoProvider IDirectManipulationFrameInfoProvider;
#endif /* __IDirectManipulationFrameInfoProvider_FWD_DEFINED__ */
#ifndef __IDirectManipulationCompositor_FWD_DEFINED__
#define __IDirectManipulationCompositor_FWD_DEFINED__
typedef interface IDirectManipulationCompositor IDirectManipulationCompositor;
#endif /* __IDirectManipulationCompositor_FWD_DEFINED__ */
#ifndef __IDirectManipulationCompositor2_FWD_DEFINED__
#define __IDirectManipulationCompositor2_FWD_DEFINED__
typedef interface IDirectManipulationCompositor2 IDirectManipulationCompositor2;
#endif /* __IDirectManipulationCompositor2_FWD_DEFINED__ */
#ifndef __IDirectManipulationUpdateHandler_FWD_DEFINED__
#define __IDirectManipulationUpdateHandler_FWD_DEFINED__
typedef interface IDirectManipulationUpdateHandler IDirectManipulationUpdateHandler;
#endif /* __IDirectManipulationUpdateHandler_FWD_DEFINED__ */
#ifndef __IDirectManipulationUpdateManager_FWD_DEFINED__
#define __IDirectManipulationUpdateManager_FWD_DEFINED__
typedef interface IDirectManipulationUpdateManager IDirectManipulationUpdateManager;
#endif /* __IDirectManipulationUpdateManager_FWD_DEFINED__ */
#ifndef __IDirectManipulationAutoScrollBehavior_FWD_DEFINED__
#define __IDirectManipulationAutoScrollBehavior_FWD_DEFINED__
typedef interface IDirectManipulationAutoScrollBehavior IDirectManipulationAutoScrollBehavior;
#endif /* __IDirectManipulationAutoScrollBehavior_FWD_DEFINED__ */
#ifndef __IDirectManipulationDeferContactService_FWD_DEFINED__
#define __IDirectManipulationDeferContactService_FWD_DEFINED__
typedef interface IDirectManipulationDeferContactService IDirectManipulationDeferContactService;
#endif /* __IDirectManipulationDeferContactService_FWD_DEFINED__ */
#ifndef __IDirectManipulationSnapPointsInertiaBehavior_FWD_DEFINED__
#define __IDirectManipulationSnapPointsInertiaBehavior_FWD_DEFINED__
typedef interface IDirectManipulationSnapPointsInertiaBehavior IDirectManipulationSnapPointsInertiaBehavior;
#endif /* __IDirectManipulationSnapPointsInertiaBehavior_FWD_DEFINED__ */
#ifndef __IDirectManipulationContent2_FWD_DEFINED__
#define __IDirectManipulationContent2_FWD_DEFINED__
typedef interface IDirectManipulationContent2 IDirectManipulationContent2;
#endif /* __IDirectManipulationContent2_FWD_DEFINED__ */
#ifndef __IDirectManipulationViewport3_FWD_DEFINED__
#define __IDirectManipulationViewport3_FWD_DEFINED__
typedef interface IDirectManipulationViewport3 IDirectManipulationViewport3;
#endif /* __IDirectManipulationViewport3_FWD_DEFINED__ */
#ifndef __IDirectManipulationPrimaryContent2_FWD_DEFINED__
#define __IDirectManipulationPrimaryContent2_FWD_DEFINED__
typedef interface IDirectManipulationPrimaryContent2 IDirectManipulationPrimaryContent2;
#endif /* __IDirectManipulationPrimaryContent2_FWD_DEFINED__ */
#ifndef __IDirectManipulationParametricMotionBehavior_FWD_DEFINED__
#define __IDirectManipulationParametricMotionBehavior_FWD_DEFINED__
typedef interface IDirectManipulationParametricMotionBehavior IDirectManipulationParametricMotionBehavior;
#endif /* __IDirectManipulationParametricMotionBehavior_FWD_DEFINED__ */
#ifndef __IDirectManipulationParametricMotionCurve_FWD_DEFINED__
#define __IDirectManipulationParametricMotionCurve_FWD_DEFINED__
typedef interface IDirectManipulationParametricMotionCurve IDirectManipulationParametricMotionCurve;
#endif /* __IDirectManipulationParametricMotionCurve_FWD_DEFINED__ */
#ifndef __IDirectManipulationParametricRestPointList_FWD_DEFINED__
#define __IDirectManipulationParametricRestPointList_FWD_DEFINED__
typedef interface IDirectManipulationParametricRestPointList IDirectManipulationParametricRestPointList;
#endif /* __IDirectManipulationParametricRestPointList_FWD_DEFINED__ */
#ifndef __IDirectManipulationParametricRestPointBehavior_FWD_DEFINED__
#define __IDirectManipulationParametricRestPointBehavior_FWD_DEFINED__
typedef interface IDirectManipulationParametricRestPointBehavior IDirectManipulationParametricRestPointBehavior;
#endif /* __IDirectManipulationParametricRestPointBehavior_FWD_DEFINED__ */
#ifndef __IDirectManipulationCompositorPartner_FWD_DEFINED__
#define __IDirectManipulationCompositorPartner_FWD_DEFINED__
typedef interface IDirectManipulationCompositorPartner IDirectManipulationCompositorPartner;
#endif /* __IDirectManipulationCompositorPartner_FWD_DEFINED__ */
#ifndef __IDirectManipulationManagerPartner_FWD_DEFINED__
#define __IDirectManipulationManagerPartner_FWD_DEFINED__
typedef interface IDirectManipulationManagerPartner IDirectManipulationManagerPartner;
#endif /* __IDirectManipulationManagerPartner_FWD_DEFINED__ */
#ifndef __IDirectManipulationViewportPartner_FWD_DEFINED__
#define __IDirectManipulationViewportPartner_FWD_DEFINED__
typedef interface IDirectManipulationViewportPartner IDirectManipulationViewportPartner;
#endif /* __IDirectManipulationViewportPartner_FWD_DEFINED__ */
#ifndef __DirectManipulationViewport_FWD_DEFINED__
#define __DirectManipulationViewport_FWD_DEFINED__
#ifdef __cplusplus
typedef class DirectManipulationViewport DirectManipulationViewport;
#else
typedef struct DirectManipulationViewport DirectManipulationViewport;
#endif /* __cplusplus */
#endif /* __DirectManipulationViewport_FWD_DEFINED__ */
#ifndef __DirectManipulationUpdateManager_FWD_DEFINED__
#define __DirectManipulationUpdateManager_FWD_DEFINED__
#ifdef __cplusplus
typedef class DirectManipulationUpdateManager DirectManipulationUpdateManager;
#else
typedef struct DirectManipulationUpdateManager DirectManipulationUpdateManager;
#endif /* __cplusplus */
#endif /* __DirectManipulationUpdateManager_FWD_DEFINED__ */
#ifndef __DirectManipulationPrimaryContent_FWD_DEFINED__
#define __DirectManipulationPrimaryContent_FWD_DEFINED__
#ifdef __cplusplus
typedef class DirectManipulationPrimaryContent DirectManipulationPrimaryContent;
#else
typedef struct DirectManipulationPrimaryContent DirectManipulationPrimaryContent;
#endif /* __cplusplus */
#endif /* __DirectManipulationPrimaryContent_FWD_DEFINED__ */
#ifndef __DirectManipulationManager_FWD_DEFINED__
#define __DirectManipulationManager_FWD_DEFINED__
#ifdef __cplusplus
typedef class DirectManipulationManager DirectManipulationManager;
#else
typedef struct DirectManipulationManager DirectManipulationManager;
#endif /* __cplusplus */
#endif /* __DirectManipulationManager_FWD_DEFINED__ */
#ifndef __DirectManipulationSharedManager_FWD_DEFINED__
#define __DirectManipulationSharedManager_FWD_DEFINED__
#ifdef __cplusplus
typedef class DirectManipulationSharedManager DirectManipulationSharedManager;
#else
typedef struct DirectManipulationSharedManager DirectManipulationSharedManager;
#endif /* __cplusplus */
#endif /* __DirectManipulationSharedManager_FWD_DEFINED__ */
#ifndef __DCompManipulationCompositor_FWD_DEFINED__
#define __DCompManipulationCompositor_FWD_DEFINED__
#ifdef __cplusplus
typedef class DCompManipulationCompositor DCompManipulationCompositor;
#else
typedef struct DCompManipulationCompositor DCompManipulationCompositor;
#endif /* __cplusplus */
#endif /* __DCompManipulationCompositor_FWD_DEFINED__ */
/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"
#ifdef __cplusplus
extern "C"{
#endif
/* interface __MIDL_itf_directmanipulation_0000_0000 */
/* [local] */
//--------------------------------------------------------------------------
//
// directmanipulation.h
//
// Direct Manipulation interface definitions and related types and enums
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//--------------------------------------------------------------------------
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#if (NTDDI_VERSION >= NTDDI_WIN8)
#if 0
typedef void *HWND;
#endif
typedef
enum DIRECTMANIPULATION_STATUS
{
DIRECTMANIPULATION_BUILDING = 0,
DIRECTMANIPULATION_ENABLED = 1,
DIRECTMANIPULATION_DISABLED = 2,
DIRECTMANIPULATION_RUNNING = 3,
DIRECTMANIPULATION_INERTIA = 4,
DIRECTMANIPULATION_READY = 5,
DIRECTMANIPULATION_SUSPENDED = 6
} DIRECTMANIPULATION_STATUS;
typedef
enum DIRECTMANIPULATION_HITTEST_TYPE
{
DIRECTMANIPULATION_HITTEST_TYPE_ASYNCHRONOUS = 0,
DIRECTMANIPULATION_HITTEST_TYPE_SYNCHRONOUS = 0x1,
DIRECTMANIPULATION_HITTEST_TYPE_AUTO_SYNCHRONOUS = 0x2
} DIRECTMANIPULATION_HITTEST_TYPE;
DEFINE_ENUM_FLAG_OPERATORS(DIRECTMANIPULATION_HITTEST_TYPE)
typedef
enum DIRECTMANIPULATION_CONFIGURATION
{
DIRECTMANIPULATION_CONFIGURATION_NONE = 0,
DIRECTMANIPULATION_CONFIGURATION_INTERACTION = 0x1,
DIRECTMANIPULATION_CONFIGURATION_TRANSLATION_X = 0x2,
DIRECTMANIPULATION_CONFIGURATION_TRANSLATION_Y = 0x4,
DIRECTMANIPULATION_CONFIGURATION_SCALING = 0x10,
DIRECTMANIPULATION_CONFIGURATION_TRANSLATION_INERTIA = 0x20,
DIRECTMANIPULATION_CONFIGURATION_SCALING_INERTIA = 0x80,
DIRECTMANIPULATION_CONFIGURATION_RAILS_X = 0x100,
DIRECTMANIPULATION_CONFIGURATION_RAILS_Y = 0x200
} DIRECTMANIPULATION_CONFIGURATION;
DEFINE_ENUM_FLAG_OPERATORS(DIRECTMANIPULATION_CONFIGURATION)
typedef
enum DIRECTMANIPULATION_GESTURE_CONFIGURATION
{
DIRECTMANIPULATION_GESTURE_NONE = 0,
DIRECTMANIPULATION_GESTURE_DEFAULT = 0,
DIRECTMANIPULATION_GESTURE_CROSS_SLIDE_VERTICAL = 0x8,
DIRECTMANIPULATION_GESTURE_CROSS_SLIDE_HORIZONTAL = 0x10,
DIRECTMANIPULATION_GESTURE_PINCH_ZOOM = 0x20
} DIRECTMANIPULATION_GESTURE_CONFIGURATION;
DEFINE_ENUM_FLAG_OPERATORS(DIRECTMANIPULATION_GESTURE_CONFIGURATION)
typedef
enum DIRECTMANIPULATION_MOTION_TYPES
{
DIRECTMANIPULATION_MOTION_NONE = 0,
DIRECTMANIPULATION_MOTION_TRANSLATEX = 0x1,
DIRECTMANIPULATION_MOTION_TRANSLATEY = 0x2,
DIRECTMANIPULATION_MOTION_ZOOM = 0x4,
DIRECTMANIPULATION_MOTION_CENTERX = 0x10,
DIRECTMANIPULATION_MOTION_CENTERY = 0x20,
DIRECTMANIPULATION_MOTION_ALL = ( ( ( ( DIRECTMANIPULATION_MOTION_TRANSLATEX | DIRECTMANIPULATION_MOTION_TRANSLATEY ) | DIRECTMANIPULATION_MOTION_ZOOM ) | DIRECTMANIPULATION_MOTION_CENTERX ) | DIRECTMANIPULATION_MOTION_CENTERY )
} DIRECTMANIPULATION_MOTION_TYPES;
DEFINE_ENUM_FLAG_OPERATORS(DIRECTMANIPULATION_MOTION_TYPES)
typedef
enum DIRECTMANIPULATION_VIEWPORT_OPTIONS
{
DIRECTMANIPULATION_VIEWPORT_OPTIONS_DEFAULT = 0,
DIRECTMANIPULATION_VIEWPORT_OPTIONS_AUTODISABLE = 0x1,
DIRECTMANIPULATION_VIEWPORT_OPTIONS_MANUALUPDATE = 0x2,
DIRECTMANIPULATION_VIEWPORT_OPTIONS_INPUT = 0x4,
DIRECTMANIPULATION_VIEWPORT_OPTIONS_EXPLICITHITTEST = 0x8,
DIRECTMANIPULATION_VIEWPORT_OPTIONS_DISABLEPIXELSNAPPING = 0x10
} DIRECTMANIPULATION_VIEWPORT_OPTIONS;
DEFINE_ENUM_FLAG_OPERATORS(DIRECTMANIPULATION_VIEWPORT_OPTIONS)
typedef
enum DIRECTMANIPULATION_SNAPPOINT_TYPE
{
DIRECTMANIPULATION_SNAPPOINT_MANDATORY = 0,
DIRECTMANIPULATION_SNAPPOINT_OPTIONAL = 1,
DIRECTMANIPULATION_SNAPPOINT_MANDATORY_SINGLE = 2,
DIRECTMANIPULATION_SNAPPOINT_OPTIONAL_SINGLE = 3
} DIRECTMANIPULATION_SNAPPOINT_TYPE;
typedef
enum DIRECTMANIPULATION_SNAPPOINT_COORDINATE
{
DIRECTMANIPULATION_COORDINATE_BOUNDARY = 0,
DIRECTMANIPULATION_COORDINATE_ORIGIN = 0x1,
DIRECTMANIPULATION_COORDINATE_MIRRORED = 0x10
} DIRECTMANIPULATION_SNAPPOINT_COORDINATE;
DEFINE_ENUM_FLAG_OPERATORS(DIRECTMANIPULATION_SNAPPOINT_COORDINATE)
typedef
enum DIRECTMANIPULATION_HORIZONTALALIGNMENT
{
DIRECTMANIPULATION_HORIZONTALALIGNMENT_NONE = 0,
DIRECTMANIPULATION_HORIZONTALALIGNMENT_LEFT = 0x1,
DIRECTMANIPULATION_HORIZONTALALIGNMENT_CENTER = 0x2,
DIRECTMANIPULATION_HORIZONTALALIGNMENT_RIGHT = 0x4,
DIRECTMANIPULATION_HORIZONTALALIGNMENT_UNLOCKCENTER = 0x8
} DIRECTMANIPULATION_HORIZONTALALIGNMENT;
DEFINE_ENUM_FLAG_OPERATORS(DIRECTMANIPULATION_HORIZONTALALIGNMENT)
typedef
enum DIRECTMANIPULATION_VERTICALALIGNMENT
{
DIRECTMANIPULATION_VERTICALALIGNMENT_NONE = 0,
DIRECTMANIPULATION_VERTICALALIGNMENT_TOP = 0x1,
DIRECTMANIPULATION_VERTICALALIGNMENT_CENTER = 0x2,
DIRECTMANIPULATION_VERTICALALIGNMENT_BOTTOM = 0x4,
DIRECTMANIPULATION_VERTICALALIGNMENT_UNLOCKCENTER = 0x8
} DIRECTMANIPULATION_VERTICALALIGNMENT;
DEFINE_ENUM_FLAG_OPERATORS(DIRECTMANIPULATION_VERTICALALIGNMENT)
typedef
enum DIRECTMANIPULATION_INPUT_MODE
{
DIRECTMANIPULATION_INPUT_MODE_AUTOMATIC = 0,
DIRECTMANIPULATION_INPUT_MODE_MANUAL = 1
} DIRECTMANIPULATION_INPUT_MODE;
#define DIRECTMANIPULATION_KEYBOARDFOCUS ( 0xfffffffe )
#define DIRECTMANIPULATION_MOUSEFOCUS ( 0xfffffffd )
#define DIRECTMANIPULATION_MINIMUM_ZOOM ( ( float )0.1 )
DEFINE_GUID(CLSID_VerticalIndicatorContent, 0xa10b5f17, 0xafe0, 0x4aa2, 0x91, 0xe9, 0x3e, 0x70, 0x1, 0xd2, 0xe6, 0xb4);
DEFINE_GUID(CLSID_HorizontalIndicatorContent, 0xe7d18cf5, 0x3ec7, 0x44d5, 0xa7, 0x6b, 0x37, 0x70, 0xf3, 0xcf, 0x90, 0x3d);
DEFINE_GUID(CLSID_VirtualViewportContent, 0x3206a19a, 0x86f0, 0x4cb4, 0xa7, 0xf3, 0x16, 0xe3, 0xb7, 0xe2, 0xd8, 0x52);
DEFINE_GUID(CLSID_DragDropConfigurationBehavior, 0x09b01b3e, 0xba6c, 0x454d, 0x82, 0xe8, 0x95, 0xe3, 0x52, 0x32, 0x9f, 0x23);
DEFINE_GUID(CLSID_AutoScrollBehavior, 0x26126a51, 0x3c70, 0x4c9a, 0xae, 0xc2, 0x94, 0x88, 0x49, 0xee, 0xb0, 0x93);
DEFINE_GUID(CLSID_DeferContactService , 0xd7b67cf4, 0x84bb, 0x434e, 0x86, 0xae, 0x65, 0x92, 0xbb, 0xc9, 0xab, 0xd9);
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0000_v0_0_s_ifspec;
#ifndef __IDirectManipulationManager_INTERFACE_DEFINED__
#define __IDirectManipulationManager_INTERFACE_DEFINED__
/* interface IDirectManipulationManager */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationManager;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("FBF5D3B4-70C7-4163-9322-5A6F660D6FBC")
IDirectManipulationManager : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE Activate(
/* [annotation][in] */
_In_ HWND window) = 0;
virtual HRESULT STDMETHODCALLTYPE Deactivate(
/* [annotation][in] */
_In_ HWND window) = 0;
virtual HRESULT STDMETHODCALLTYPE RegisterHitTestTarget(
/* [annotation][in] */
_In_ HWND window,
/* [annotation][in] */
_In_opt_ HWND hitTestWindow,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_HITTEST_TYPE type) = 0;
virtual HRESULT STDMETHODCALLTYPE ProcessInput(
/* [annotation][in] */
_In_ const MSG *message,
/* [annotation][retval][out] */
_Out_ BOOL *handled) = 0;
virtual HRESULT STDMETHODCALLTYPE GetUpdateManager(
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object) = 0;
virtual HRESULT STDMETHODCALLTYPE CreateViewport(
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo,
/* [annotation][in] */
_In_ HWND window,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object) = 0;
virtual HRESULT STDMETHODCALLTYPE CreateContent(
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo,
/* [annotation][in] */
_In_ REFCLSID clsid,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationManagerVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationManager * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationManager * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationManager * This);
HRESULT ( STDMETHODCALLTYPE *Activate )(
IDirectManipulationManager * This,
/* [annotation][in] */
_In_ HWND window);
HRESULT ( STDMETHODCALLTYPE *Deactivate )(
IDirectManipulationManager * This,
/* [annotation][in] */
_In_ HWND window);
HRESULT ( STDMETHODCALLTYPE *RegisterHitTestTarget )(
IDirectManipulationManager * This,
/* [annotation][in] */
_In_ HWND window,
/* [annotation][in] */
_In_opt_ HWND hitTestWindow,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_HITTEST_TYPE type);
HRESULT ( STDMETHODCALLTYPE *ProcessInput )(
IDirectManipulationManager * This,
/* [annotation][in] */
_In_ const MSG *message,
/* [annotation][retval][out] */
_Out_ BOOL *handled);
HRESULT ( STDMETHODCALLTYPE *GetUpdateManager )(
IDirectManipulationManager * This,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *CreateViewport )(
IDirectManipulationManager * This,
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo,
/* [annotation][in] */
_In_ HWND window,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *CreateContent )(
IDirectManipulationManager * This,
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo,
/* [annotation][in] */
_In_ REFCLSID clsid,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
END_INTERFACE
} IDirectManipulationManagerVtbl;
interface IDirectManipulationManager
{
CONST_VTBL struct IDirectManipulationManagerVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationManager_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationManager_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationManager_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationManager_Activate(This,window) \
( (This)->lpVtbl -> Activate(This,window) )
#define IDirectManipulationManager_Deactivate(This,window) \
( (This)->lpVtbl -> Deactivate(This,window) )
#define IDirectManipulationManager_RegisterHitTestTarget(This,window,hitTestWindow,type) \
( (This)->lpVtbl -> RegisterHitTestTarget(This,window,hitTestWindow,type) )
#define IDirectManipulationManager_ProcessInput(This,message,handled) \
( (This)->lpVtbl -> ProcessInput(This,message,handled) )
#define IDirectManipulationManager_GetUpdateManager(This,riid,object) \
( (This)->lpVtbl -> GetUpdateManager(This,riid,object) )
#define IDirectManipulationManager_CreateViewport(This,frameInfo,window,riid,object) \
( (This)->lpVtbl -> CreateViewport(This,frameInfo,window,riid,object) )
#define IDirectManipulationManager_CreateContent(This,frameInfo,clsid,riid,object) \
( (This)->lpVtbl -> CreateContent(This,frameInfo,clsid,riid,object) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationManager_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationManager2_INTERFACE_DEFINED__
#define __IDirectManipulationManager2_INTERFACE_DEFINED__
/* interface IDirectManipulationManager2 */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationManager2;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("FA1005E9-3D16-484C-BFC9-62B61E56EC4E")
IDirectManipulationManager2 : public IDirectManipulationManager
{
public:
virtual HRESULT STDMETHODCALLTYPE CreateBehavior(
/* [annotation][in] */
_In_ REFCLSID clsid,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationManager2Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationManager2 * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationManager2 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationManager2 * This);
HRESULT ( STDMETHODCALLTYPE *Activate )(
IDirectManipulationManager2 * This,
/* [annotation][in] */
_In_ HWND window);
HRESULT ( STDMETHODCALLTYPE *Deactivate )(
IDirectManipulationManager2 * This,
/* [annotation][in] */
_In_ HWND window);
HRESULT ( STDMETHODCALLTYPE *RegisterHitTestTarget )(
IDirectManipulationManager2 * This,
/* [annotation][in] */
_In_ HWND window,
/* [annotation][in] */
_In_opt_ HWND hitTestWindow,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_HITTEST_TYPE type);
HRESULT ( STDMETHODCALLTYPE *ProcessInput )(
IDirectManipulationManager2 * This,
/* [annotation][in] */
_In_ const MSG *message,
/* [annotation][retval][out] */
_Out_ BOOL *handled);
HRESULT ( STDMETHODCALLTYPE *GetUpdateManager )(
IDirectManipulationManager2 * This,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *CreateViewport )(
IDirectManipulationManager2 * This,
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo,
/* [annotation][in] */
_In_ HWND window,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *CreateContent )(
IDirectManipulationManager2 * This,
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo,
/* [annotation][in] */
_In_ REFCLSID clsid,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *CreateBehavior )(
IDirectManipulationManager2 * This,
/* [annotation][in] */
_In_ REFCLSID clsid,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
END_INTERFACE
} IDirectManipulationManager2Vtbl;
interface IDirectManipulationManager2
{
CONST_VTBL struct IDirectManipulationManager2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationManager2_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationManager2_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationManager2_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationManager2_Activate(This,window) \
( (This)->lpVtbl -> Activate(This,window) )
#define IDirectManipulationManager2_Deactivate(This,window) \
( (This)->lpVtbl -> Deactivate(This,window) )
#define IDirectManipulationManager2_RegisterHitTestTarget(This,window,hitTestWindow,type) \
( (This)->lpVtbl -> RegisterHitTestTarget(This,window,hitTestWindow,type) )
#define IDirectManipulationManager2_ProcessInput(This,message,handled) \
( (This)->lpVtbl -> ProcessInput(This,message,handled) )
#define IDirectManipulationManager2_GetUpdateManager(This,riid,object) \
( (This)->lpVtbl -> GetUpdateManager(This,riid,object) )
#define IDirectManipulationManager2_CreateViewport(This,frameInfo,window,riid,object) \
( (This)->lpVtbl -> CreateViewport(This,frameInfo,window,riid,object) )
#define IDirectManipulationManager2_CreateContent(This,frameInfo,clsid,riid,object) \
( (This)->lpVtbl -> CreateContent(This,frameInfo,clsid,riid,object) )
#define IDirectManipulationManager2_CreateBehavior(This,clsid,riid,object) \
( (This)->lpVtbl -> CreateBehavior(This,clsid,riid,object) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationManager2_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationManager3_INTERFACE_DEFINED__
#define __IDirectManipulationManager3_INTERFACE_DEFINED__
/* interface IDirectManipulationManager3 */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationManager3;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("2CB6B33D-FFE8-488C-B750-FBDFE88DCA8C")
IDirectManipulationManager3 : public IDirectManipulationManager2
{
public:
virtual HRESULT STDMETHODCALLTYPE GetService(
/* [annotation][in] */
_In_ REFCLSID clsid,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationManager3Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationManager3 * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationManager3 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationManager3 * This);
HRESULT ( STDMETHODCALLTYPE *Activate )(
IDirectManipulationManager3 * This,
/* [annotation][in] */
_In_ HWND window);
HRESULT ( STDMETHODCALLTYPE *Deactivate )(
IDirectManipulationManager3 * This,
/* [annotation][in] */
_In_ HWND window);
HRESULT ( STDMETHODCALLTYPE *RegisterHitTestTarget )(
IDirectManipulationManager3 * This,
/* [annotation][in] */
_In_ HWND window,
/* [annotation][in] */
_In_opt_ HWND hitTestWindow,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_HITTEST_TYPE type);
HRESULT ( STDMETHODCALLTYPE *ProcessInput )(
IDirectManipulationManager3 * This,
/* [annotation][in] */
_In_ const MSG *message,
/* [annotation][retval][out] */
_Out_ BOOL *handled);
HRESULT ( STDMETHODCALLTYPE *GetUpdateManager )(
IDirectManipulationManager3 * This,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *CreateViewport )(
IDirectManipulationManager3 * This,
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo,
/* [annotation][in] */
_In_ HWND window,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *CreateContent )(
IDirectManipulationManager3 * This,
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo,
/* [annotation][in] */
_In_ REFCLSID clsid,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *CreateBehavior )(
IDirectManipulationManager3 * This,
/* [annotation][in] */
_In_ REFCLSID clsid,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *GetService )(
IDirectManipulationManager3 * This,
/* [annotation][in] */
_In_ REFCLSID clsid,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
END_INTERFACE
} IDirectManipulationManager3Vtbl;
interface IDirectManipulationManager3
{
CONST_VTBL struct IDirectManipulationManager3Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationManager3_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationManager3_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationManager3_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationManager3_Activate(This,window) \
( (This)->lpVtbl -> Activate(This,window) )
#define IDirectManipulationManager3_Deactivate(This,window) \
( (This)->lpVtbl -> Deactivate(This,window) )
#define IDirectManipulationManager3_RegisterHitTestTarget(This,window,hitTestWindow,type) \
( (This)->lpVtbl -> RegisterHitTestTarget(This,window,hitTestWindow,type) )
#define IDirectManipulationManager3_ProcessInput(This,message,handled) \
( (This)->lpVtbl -> ProcessInput(This,message,handled) )
#define IDirectManipulationManager3_GetUpdateManager(This,riid,object) \
( (This)->lpVtbl -> GetUpdateManager(This,riid,object) )
#define IDirectManipulationManager3_CreateViewport(This,frameInfo,window,riid,object) \
( (This)->lpVtbl -> CreateViewport(This,frameInfo,window,riid,object) )
#define IDirectManipulationManager3_CreateContent(This,frameInfo,clsid,riid,object) \
( (This)->lpVtbl -> CreateContent(This,frameInfo,clsid,riid,object) )
#define IDirectManipulationManager3_CreateBehavior(This,clsid,riid,object) \
( (This)->lpVtbl -> CreateBehavior(This,clsid,riid,object) )
#define IDirectManipulationManager3_GetService(This,clsid,riid,object) \
( (This)->lpVtbl -> GetService(This,clsid,riid,object) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationManager3_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationViewport_INTERFACE_DEFINED__
#define __IDirectManipulationViewport_INTERFACE_DEFINED__
/* interface IDirectManipulationViewport */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationViewport;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("28b85a3d-60a0-48bd-9ba1-5ce8d9ea3a6d")
IDirectManipulationViewport : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE Enable( void) = 0;
virtual HRESULT STDMETHODCALLTYPE Disable( void) = 0;
virtual HRESULT STDMETHODCALLTYPE SetContact(
/* [annotation][in] */
_In_ UINT32 pointerId) = 0;
virtual HRESULT STDMETHODCALLTYPE ReleaseContact(
/* [annotation][in] */
_In_ UINT32 pointerId) = 0;
virtual HRESULT STDMETHODCALLTYPE ReleaseAllContacts( void) = 0;
virtual HRESULT STDMETHODCALLTYPE GetStatus(
/* [annotation][retval][out] */
_Out_ DIRECTMANIPULATION_STATUS *status) = 0;
virtual HRESULT STDMETHODCALLTYPE GetTag(
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_opt_ void **object,
/* [annotation][out] */
_Out_opt_ UINT32 *id) = 0;
virtual HRESULT STDMETHODCALLTYPE SetTag(
/* [annotation][unique][in] */
_In_opt_ IUnknown *object,
/* [annotation][in] */
_In_ UINT32 id) = 0;
virtual HRESULT STDMETHODCALLTYPE GetViewportRect(
/* [annotation][retval][out] */
_Out_ RECT *viewport) = 0;
virtual HRESULT STDMETHODCALLTYPE SetViewportRect(
/* [annotation][in] */
_In_ const RECT *viewport) = 0;
virtual HRESULT STDMETHODCALLTYPE ZoomToRect(
/* [annotation][in] */
_In_ const float left,
/* [annotation][in] */
_In_ const float top,
/* [annotation][in] */
_In_ const float right,
/* [annotation][in] */
_In_ const float bottom,
/* [annotation][in] */
_In_ BOOL animate) = 0;
virtual HRESULT STDMETHODCALLTYPE SetViewportTransform(
/* [annotation][in] */
_In_reads_(pointCount) const float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount) = 0;
virtual HRESULT STDMETHODCALLTYPE SyncDisplayTransform(
/* [annotation][in] */
_In_reads_(pointCount) const float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount) = 0;
virtual HRESULT STDMETHODCALLTYPE GetPrimaryContent(
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object) = 0;
virtual HRESULT STDMETHODCALLTYPE AddContent(
/* [annotation][unique][in] */
_In_ IDirectManipulationContent *content) = 0;
virtual HRESULT STDMETHODCALLTYPE RemoveContent(
/* [annotation][unique][in] */
_In_ IDirectManipulationContent *content) = 0;
virtual HRESULT STDMETHODCALLTYPE SetViewportOptions(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_VIEWPORT_OPTIONS options) = 0;
virtual HRESULT STDMETHODCALLTYPE AddConfiguration(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_CONFIGURATION configuration) = 0;
virtual HRESULT STDMETHODCALLTYPE RemoveConfiguration(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_CONFIGURATION configuration) = 0;
virtual HRESULT STDMETHODCALLTYPE ActivateConfiguration(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_CONFIGURATION configuration) = 0;
virtual HRESULT STDMETHODCALLTYPE SetManualGesture(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_GESTURE_CONFIGURATION configuration) = 0;
virtual HRESULT STDMETHODCALLTYPE SetChaining(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES enabledTypes) = 0;
virtual HRESULT STDMETHODCALLTYPE AddEventHandler(
/* [annotation][in] */
_In_opt_ HWND window,
/* [annotation][in] */
_In_ IDirectManipulationViewportEventHandler *eventHandler,
/* [annotation][retval][out] */
_Out_ DWORD *cookie) = 0;
virtual HRESULT STDMETHODCALLTYPE RemoveEventHandler(
/* [annotation][in] */
_In_ DWORD cookie) = 0;
virtual HRESULT STDMETHODCALLTYPE SetInputMode(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_INPUT_MODE mode) = 0;
virtual HRESULT STDMETHODCALLTYPE SetUpdateMode(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_INPUT_MODE mode) = 0;
virtual HRESULT STDMETHODCALLTYPE Stop( void) = 0;
virtual HRESULT STDMETHODCALLTYPE Abandon( void) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationViewportVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationViewport * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationViewport * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationViewport * This);
HRESULT ( STDMETHODCALLTYPE *Enable )(
IDirectManipulationViewport * This);
HRESULT ( STDMETHODCALLTYPE *Disable )(
IDirectManipulationViewport * This);
HRESULT ( STDMETHODCALLTYPE *SetContact )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ UINT32 pointerId);
HRESULT ( STDMETHODCALLTYPE *ReleaseContact )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ UINT32 pointerId);
HRESULT ( STDMETHODCALLTYPE *ReleaseAllContacts )(
IDirectManipulationViewport * This);
HRESULT ( STDMETHODCALLTYPE *GetStatus )(
IDirectManipulationViewport * This,
/* [annotation][retval][out] */
_Out_ DIRECTMANIPULATION_STATUS *status);
HRESULT ( STDMETHODCALLTYPE *GetTag )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_opt_ void **object,
/* [annotation][out] */
_Out_opt_ UINT32 *id);
HRESULT ( STDMETHODCALLTYPE *SetTag )(
IDirectManipulationViewport * This,
/* [annotation][unique][in] */
_In_opt_ IUnknown *object,
/* [annotation][in] */
_In_ UINT32 id);
HRESULT ( STDMETHODCALLTYPE *GetViewportRect )(
IDirectManipulationViewport * This,
/* [annotation][retval][out] */
_Out_ RECT *viewport);
HRESULT ( STDMETHODCALLTYPE *SetViewportRect )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ const RECT *viewport);
HRESULT ( STDMETHODCALLTYPE *ZoomToRect )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ const float left,
/* [annotation][in] */
_In_ const float top,
/* [annotation][in] */
_In_ const float right,
/* [annotation][in] */
_In_ const float bottom,
/* [annotation][in] */
_In_ BOOL animate);
HRESULT ( STDMETHODCALLTYPE *SetViewportTransform )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_reads_(pointCount) const float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount);
HRESULT ( STDMETHODCALLTYPE *SyncDisplayTransform )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_reads_(pointCount) const float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount);
HRESULT ( STDMETHODCALLTYPE *GetPrimaryContent )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *AddContent )(
IDirectManipulationViewport * This,
/* [annotation][unique][in] */
_In_ IDirectManipulationContent *content);
HRESULT ( STDMETHODCALLTYPE *RemoveContent )(
IDirectManipulationViewport * This,
/* [annotation][unique][in] */
_In_ IDirectManipulationContent *content);
HRESULT ( STDMETHODCALLTYPE *SetViewportOptions )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_VIEWPORT_OPTIONS options);
HRESULT ( STDMETHODCALLTYPE *AddConfiguration )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_CONFIGURATION configuration);
HRESULT ( STDMETHODCALLTYPE *RemoveConfiguration )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_CONFIGURATION configuration);
HRESULT ( STDMETHODCALLTYPE *ActivateConfiguration )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_CONFIGURATION configuration);
HRESULT ( STDMETHODCALLTYPE *SetManualGesture )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_GESTURE_CONFIGURATION configuration);
HRESULT ( STDMETHODCALLTYPE *SetChaining )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES enabledTypes);
HRESULT ( STDMETHODCALLTYPE *AddEventHandler )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_opt_ HWND window,
/* [annotation][in] */
_In_ IDirectManipulationViewportEventHandler *eventHandler,
/* [annotation][retval][out] */
_Out_ DWORD *cookie);
HRESULT ( STDMETHODCALLTYPE *RemoveEventHandler )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ DWORD cookie);
HRESULT ( STDMETHODCALLTYPE *SetInputMode )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_INPUT_MODE mode);
HRESULT ( STDMETHODCALLTYPE *SetUpdateMode )(
IDirectManipulationViewport * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_INPUT_MODE mode);
HRESULT ( STDMETHODCALLTYPE *Stop )(
IDirectManipulationViewport * This);
HRESULT ( STDMETHODCALLTYPE *Abandon )(
IDirectManipulationViewport * This);
END_INTERFACE
} IDirectManipulationViewportVtbl;
interface IDirectManipulationViewport
{
CONST_VTBL struct IDirectManipulationViewportVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationViewport_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationViewport_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationViewport_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationViewport_Enable(This) \
( (This)->lpVtbl -> Enable(This) )
#define IDirectManipulationViewport_Disable(This) \
( (This)->lpVtbl -> Disable(This) )
#define IDirectManipulationViewport_SetContact(This,pointerId) \
( (This)->lpVtbl -> SetContact(This,pointerId) )
#define IDirectManipulationViewport_ReleaseContact(This,pointerId) \
( (This)->lpVtbl -> ReleaseContact(This,pointerId) )
#define IDirectManipulationViewport_ReleaseAllContacts(This) \
( (This)->lpVtbl -> ReleaseAllContacts(This) )
#define IDirectManipulationViewport_GetStatus(This,status) \
( (This)->lpVtbl -> GetStatus(This,status) )
#define IDirectManipulationViewport_GetTag(This,riid,object,id) \
( (This)->lpVtbl -> GetTag(This,riid,object,id) )
#define IDirectManipulationViewport_SetTag(This,object,id) \
( (This)->lpVtbl -> SetTag(This,object,id) )
#define IDirectManipulationViewport_GetViewportRect(This,viewport) \
( (This)->lpVtbl -> GetViewportRect(This,viewport) )
#define IDirectManipulationViewport_SetViewportRect(This,viewport) \
( (This)->lpVtbl -> SetViewportRect(This,viewport) )
#define IDirectManipulationViewport_ZoomToRect(This,left,top,right,bottom,animate) \
( (This)->lpVtbl -> ZoomToRect(This,left,top,right,bottom,animate) )
#define IDirectManipulationViewport_SetViewportTransform(This,matrix,pointCount) \
( (This)->lpVtbl -> SetViewportTransform(This,matrix,pointCount) )
#define IDirectManipulationViewport_SyncDisplayTransform(This,matrix,pointCount) \
( (This)->lpVtbl -> SyncDisplayTransform(This,matrix,pointCount) )
#define IDirectManipulationViewport_GetPrimaryContent(This,riid,object) \
( (This)->lpVtbl -> GetPrimaryContent(This,riid,object) )
#define IDirectManipulationViewport_AddContent(This,content) \
( (This)->lpVtbl -> AddContent(This,content) )
#define IDirectManipulationViewport_RemoveContent(This,content) \
( (This)->lpVtbl -> RemoveContent(This,content) )
#define IDirectManipulationViewport_SetViewportOptions(This,options) \
( (This)->lpVtbl -> SetViewportOptions(This,options) )
#define IDirectManipulationViewport_AddConfiguration(This,configuration) \
( (This)->lpVtbl -> AddConfiguration(This,configuration) )
#define IDirectManipulationViewport_RemoveConfiguration(This,configuration) \
( (This)->lpVtbl -> RemoveConfiguration(This,configuration) )
#define IDirectManipulationViewport_ActivateConfiguration(This,configuration) \
( (This)->lpVtbl -> ActivateConfiguration(This,configuration) )
#define IDirectManipulationViewport_SetManualGesture(This,configuration) \
( (This)->lpVtbl -> SetManualGesture(This,configuration) )
#define IDirectManipulationViewport_SetChaining(This,enabledTypes) \
( (This)->lpVtbl -> SetChaining(This,enabledTypes) )
#define IDirectManipulationViewport_AddEventHandler(This,window,eventHandler,cookie) \
( (This)->lpVtbl -> AddEventHandler(This,window,eventHandler,cookie) )
#define IDirectManipulationViewport_RemoveEventHandler(This,cookie) \
( (This)->lpVtbl -> RemoveEventHandler(This,cookie) )
#define IDirectManipulationViewport_SetInputMode(This,mode) \
( (This)->lpVtbl -> SetInputMode(This,mode) )
#define IDirectManipulationViewport_SetUpdateMode(This,mode) \
( (This)->lpVtbl -> SetUpdateMode(This,mode) )
#define IDirectManipulationViewport_Stop(This) \
( (This)->lpVtbl -> Stop(This) )
#define IDirectManipulationViewport_Abandon(This) \
( (This)->lpVtbl -> Abandon(This) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationViewport_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationViewport2_INTERFACE_DEFINED__
#define __IDirectManipulationViewport2_INTERFACE_DEFINED__
/* interface IDirectManipulationViewport2 */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationViewport2;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("923CCAAC-61E1-4385-B726-017AF189882A")
IDirectManipulationViewport2 : public IDirectManipulationViewport
{
public:
virtual HRESULT STDMETHODCALLTYPE AddBehavior(
/* [annotation][unique][in] */
_In_ IUnknown *behavior,
/* [annotation][retval][out] */
_Out_ DWORD *cookie) = 0;
virtual HRESULT STDMETHODCALLTYPE RemoveBehavior(
/* [annotation][in] */
_In_ DWORD cookie) = 0;
virtual HRESULT STDMETHODCALLTYPE RemoveAllBehaviors( void) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationViewport2Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationViewport2 * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationViewport2 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationViewport2 * This);
HRESULT ( STDMETHODCALLTYPE *Enable )(
IDirectManipulationViewport2 * This);
HRESULT ( STDMETHODCALLTYPE *Disable )(
IDirectManipulationViewport2 * This);
HRESULT ( STDMETHODCALLTYPE *SetContact )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ UINT32 pointerId);
HRESULT ( STDMETHODCALLTYPE *ReleaseContact )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ UINT32 pointerId);
HRESULT ( STDMETHODCALLTYPE *ReleaseAllContacts )(
IDirectManipulationViewport2 * This);
HRESULT ( STDMETHODCALLTYPE *GetStatus )(
IDirectManipulationViewport2 * This,
/* [annotation][retval][out] */
_Out_ DIRECTMANIPULATION_STATUS *status);
HRESULT ( STDMETHODCALLTYPE *GetTag )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_opt_ void **object,
/* [annotation][out] */
_Out_opt_ UINT32 *id);
HRESULT ( STDMETHODCALLTYPE *SetTag )(
IDirectManipulationViewport2 * This,
/* [annotation][unique][in] */
_In_opt_ IUnknown *object,
/* [annotation][in] */
_In_ UINT32 id);
HRESULT ( STDMETHODCALLTYPE *GetViewportRect )(
IDirectManipulationViewport2 * This,
/* [annotation][retval][out] */
_Out_ RECT *viewport);
HRESULT ( STDMETHODCALLTYPE *SetViewportRect )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ const RECT *viewport);
HRESULT ( STDMETHODCALLTYPE *ZoomToRect )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ const float left,
/* [annotation][in] */
_In_ const float top,
/* [annotation][in] */
_In_ const float right,
/* [annotation][in] */
_In_ const float bottom,
/* [annotation][in] */
_In_ BOOL animate);
HRESULT ( STDMETHODCALLTYPE *SetViewportTransform )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_reads_(pointCount) const float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount);
HRESULT ( STDMETHODCALLTYPE *SyncDisplayTransform )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_reads_(pointCount) const float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount);
HRESULT ( STDMETHODCALLTYPE *GetPrimaryContent )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *AddContent )(
IDirectManipulationViewport2 * This,
/* [annotation][unique][in] */
_In_ IDirectManipulationContent *content);
HRESULT ( STDMETHODCALLTYPE *RemoveContent )(
IDirectManipulationViewport2 * This,
/* [annotation][unique][in] */
_In_ IDirectManipulationContent *content);
HRESULT ( STDMETHODCALLTYPE *SetViewportOptions )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_VIEWPORT_OPTIONS options);
HRESULT ( STDMETHODCALLTYPE *AddConfiguration )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_CONFIGURATION configuration);
HRESULT ( STDMETHODCALLTYPE *RemoveConfiguration )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_CONFIGURATION configuration);
HRESULT ( STDMETHODCALLTYPE *ActivateConfiguration )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_CONFIGURATION configuration);
HRESULT ( STDMETHODCALLTYPE *SetManualGesture )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_GESTURE_CONFIGURATION configuration);
HRESULT ( STDMETHODCALLTYPE *SetChaining )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES enabledTypes);
HRESULT ( STDMETHODCALLTYPE *AddEventHandler )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_opt_ HWND window,
/* [annotation][in] */
_In_ IDirectManipulationViewportEventHandler *eventHandler,
/* [annotation][retval][out] */
_Out_ DWORD *cookie);
HRESULT ( STDMETHODCALLTYPE *RemoveEventHandler )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DWORD cookie);
HRESULT ( STDMETHODCALLTYPE *SetInputMode )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_INPUT_MODE mode);
HRESULT ( STDMETHODCALLTYPE *SetUpdateMode )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_INPUT_MODE mode);
HRESULT ( STDMETHODCALLTYPE *Stop )(
IDirectManipulationViewport2 * This);
HRESULT ( STDMETHODCALLTYPE *Abandon )(
IDirectManipulationViewport2 * This);
HRESULT ( STDMETHODCALLTYPE *AddBehavior )(
IDirectManipulationViewport2 * This,
/* [annotation][unique][in] */
_In_ IUnknown *behavior,
/* [annotation][retval][out] */
_Out_ DWORD *cookie);
HRESULT ( STDMETHODCALLTYPE *RemoveBehavior )(
IDirectManipulationViewport2 * This,
/* [annotation][in] */
_In_ DWORD cookie);
HRESULT ( STDMETHODCALLTYPE *RemoveAllBehaviors )(
IDirectManipulationViewport2 * This);
END_INTERFACE
} IDirectManipulationViewport2Vtbl;
interface IDirectManipulationViewport2
{
CONST_VTBL struct IDirectManipulationViewport2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationViewport2_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationViewport2_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationViewport2_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationViewport2_Enable(This) \
( (This)->lpVtbl -> Enable(This) )
#define IDirectManipulationViewport2_Disable(This) \
( (This)->lpVtbl -> Disable(This) )
#define IDirectManipulationViewport2_SetContact(This,pointerId) \
( (This)->lpVtbl -> SetContact(This,pointerId) )
#define IDirectManipulationViewport2_ReleaseContact(This,pointerId) \
( (This)->lpVtbl -> ReleaseContact(This,pointerId) )
#define IDirectManipulationViewport2_ReleaseAllContacts(This) \
( (This)->lpVtbl -> ReleaseAllContacts(This) )
#define IDirectManipulationViewport2_GetStatus(This,status) \
( (This)->lpVtbl -> GetStatus(This,status) )
#define IDirectManipulationViewport2_GetTag(This,riid,object,id) \
( (This)->lpVtbl -> GetTag(This,riid,object,id) )
#define IDirectManipulationViewport2_SetTag(This,object,id) \
( (This)->lpVtbl -> SetTag(This,object,id) )
#define IDirectManipulationViewport2_GetViewportRect(This,viewport) \
( (This)->lpVtbl -> GetViewportRect(This,viewport) )
#define IDirectManipulationViewport2_SetViewportRect(This,viewport) \
( (This)->lpVtbl -> SetViewportRect(This,viewport) )
#define IDirectManipulationViewport2_ZoomToRect(This,left,top,right,bottom,animate) \
( (This)->lpVtbl -> ZoomToRect(This,left,top,right,bottom,animate) )
#define IDirectManipulationViewport2_SetViewportTransform(This,matrix,pointCount) \
( (This)->lpVtbl -> SetViewportTransform(This,matrix,pointCount) )
#define IDirectManipulationViewport2_SyncDisplayTransform(This,matrix,pointCount) \
( (This)->lpVtbl -> SyncDisplayTransform(This,matrix,pointCount) )
#define IDirectManipulationViewport2_GetPrimaryContent(This,riid,object) \
( (This)->lpVtbl -> GetPrimaryContent(This,riid,object) )
#define IDirectManipulationViewport2_AddContent(This,content) \
( (This)->lpVtbl -> AddContent(This,content) )
#define IDirectManipulationViewport2_RemoveContent(This,content) \
( (This)->lpVtbl -> RemoveContent(This,content) )
#define IDirectManipulationViewport2_SetViewportOptions(This,options) \
( (This)->lpVtbl -> SetViewportOptions(This,options) )
#define IDirectManipulationViewport2_AddConfiguration(This,configuration) \
( (This)->lpVtbl -> AddConfiguration(This,configuration) )
#define IDirectManipulationViewport2_RemoveConfiguration(This,configuration) \
( (This)->lpVtbl -> RemoveConfiguration(This,configuration) )
#define IDirectManipulationViewport2_ActivateConfiguration(This,configuration) \
( (This)->lpVtbl -> ActivateConfiguration(This,configuration) )
#define IDirectManipulationViewport2_SetManualGesture(This,configuration) \
( (This)->lpVtbl -> SetManualGesture(This,configuration) )
#define IDirectManipulationViewport2_SetChaining(This,enabledTypes) \
( (This)->lpVtbl -> SetChaining(This,enabledTypes) )
#define IDirectManipulationViewport2_AddEventHandler(This,window,eventHandler,cookie) \
( (This)->lpVtbl -> AddEventHandler(This,window,eventHandler,cookie) )
#define IDirectManipulationViewport2_RemoveEventHandler(This,cookie) \
( (This)->lpVtbl -> RemoveEventHandler(This,cookie) )
#define IDirectManipulationViewport2_SetInputMode(This,mode) \
( (This)->lpVtbl -> SetInputMode(This,mode) )
#define IDirectManipulationViewport2_SetUpdateMode(This,mode) \
( (This)->lpVtbl -> SetUpdateMode(This,mode) )
#define IDirectManipulationViewport2_Stop(This) \
( (This)->lpVtbl -> Stop(This) )
#define IDirectManipulationViewport2_Abandon(This) \
( (This)->lpVtbl -> Abandon(This) )
#define IDirectManipulationViewport2_AddBehavior(This,behavior,cookie) \
( (This)->lpVtbl -> AddBehavior(This,behavior,cookie) )
#define IDirectManipulationViewport2_RemoveBehavior(This,cookie) \
( (This)->lpVtbl -> RemoveBehavior(This,cookie) )
#define IDirectManipulationViewport2_RemoveAllBehaviors(This) \
( (This)->lpVtbl -> RemoveAllBehaviors(This) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationViewport2_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationViewportEventHandler_INTERFACE_DEFINED__
#define __IDirectManipulationViewportEventHandler_INTERFACE_DEFINED__
/* interface IDirectManipulationViewportEventHandler */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationViewportEventHandler;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("952121DA-D69F-45F9-B0F9-F23944321A6D")
IDirectManipulationViewportEventHandler : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE OnViewportStatusChanged(
/* [annotation][in] */
_In_ IDirectManipulationViewport *viewport,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_STATUS current,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_STATUS previous) = 0;
virtual HRESULT STDMETHODCALLTYPE OnViewportUpdated(
/* [annotation][in] */
_In_ IDirectManipulationViewport *viewport) = 0;
virtual HRESULT STDMETHODCALLTYPE OnContentUpdated(
/* [annotation][in] */
_In_ IDirectManipulationViewport *viewport,
/* [annotation][in] */
_In_ IDirectManipulationContent *content) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationViewportEventHandlerVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationViewportEventHandler * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationViewportEventHandler * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationViewportEventHandler * This);
HRESULT ( STDMETHODCALLTYPE *OnViewportStatusChanged )(
IDirectManipulationViewportEventHandler * This,
/* [annotation][in] */
_In_ IDirectManipulationViewport *viewport,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_STATUS current,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_STATUS previous);
HRESULT ( STDMETHODCALLTYPE *OnViewportUpdated )(
IDirectManipulationViewportEventHandler * This,
/* [annotation][in] */
_In_ IDirectManipulationViewport *viewport);
HRESULT ( STDMETHODCALLTYPE *OnContentUpdated )(
IDirectManipulationViewportEventHandler * This,
/* [annotation][in] */
_In_ IDirectManipulationViewport *viewport,
/* [annotation][in] */
_In_ IDirectManipulationContent *content);
END_INTERFACE
} IDirectManipulationViewportEventHandlerVtbl;
interface IDirectManipulationViewportEventHandler
{
CONST_VTBL struct IDirectManipulationViewportEventHandlerVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationViewportEventHandler_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationViewportEventHandler_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationViewportEventHandler_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationViewportEventHandler_OnViewportStatusChanged(This,viewport,current,previous) \
( (This)->lpVtbl -> OnViewportStatusChanged(This,viewport,current,previous) )
#define IDirectManipulationViewportEventHandler_OnViewportUpdated(This,viewport) \
( (This)->lpVtbl -> OnViewportUpdated(This,viewport) )
#define IDirectManipulationViewportEventHandler_OnContentUpdated(This,viewport,content) \
( (This)->lpVtbl -> OnContentUpdated(This,viewport,content) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationViewportEventHandler_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationContent_INTERFACE_DEFINED__
#define __IDirectManipulationContent_INTERFACE_DEFINED__
/* interface IDirectManipulationContent */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationContent;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("B89962CB-3D89-442B-BB58-5098FA0F9F16")
IDirectManipulationContent : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE GetContentRect(
/* [annotation][out] */
_Out_ RECT *contentSize) = 0;
virtual HRESULT STDMETHODCALLTYPE SetContentRect(
/* [annotation][in] */
_In_ const RECT *contentSize) = 0;
virtual HRESULT STDMETHODCALLTYPE GetViewport(
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object) = 0;
virtual HRESULT STDMETHODCALLTYPE GetTag(
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_opt_ void **object,
/* [annotation][out] */
_Out_opt_ UINT32 *id) = 0;
virtual HRESULT STDMETHODCALLTYPE SetTag(
/* [annotation][unique][in] */
_In_opt_ IUnknown *object,
/* [annotation][in] */
_In_ UINT32 id) = 0;
virtual HRESULT STDMETHODCALLTYPE GetOutputTransform(
/* [annotation][out] */
_Out_writes_(pointCount) float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount) = 0;
virtual HRESULT STDMETHODCALLTYPE GetContentTransform(
/* [annotation][out] */
_Out_writes_(pointCount) float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount) = 0;
virtual HRESULT STDMETHODCALLTYPE SyncContentTransform(
/* [annotation][in] */
_In_reads_(pointCount) const float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationContentVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationContent * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationContent * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationContent * This);
HRESULT ( STDMETHODCALLTYPE *GetContentRect )(
IDirectManipulationContent * This,
/* [annotation][out] */
_Out_ RECT *contentSize);
HRESULT ( STDMETHODCALLTYPE *SetContentRect )(
IDirectManipulationContent * This,
/* [annotation][in] */
_In_ const RECT *contentSize);
HRESULT ( STDMETHODCALLTYPE *GetViewport )(
IDirectManipulationContent * This,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][retval][iid_is][out] */
_COM_Outptr_ void **object);
HRESULT ( STDMETHODCALLTYPE *GetTag )(
IDirectManipulationContent * This,
/* [annotation][in] */
_In_ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_opt_ void **object,
/* [annotation][out] */
_Out_opt_ UINT32 *id);
HRESULT ( STDMETHODCALLTYPE *SetTag )(
IDirectManipulationContent * This,
/* [annotation][unique][in] */
_In_opt_ IUnknown *object,
/* [annotation][in] */
_In_ UINT32 id);
HRESULT ( STDMETHODCALLTYPE *GetOutputTransform )(
IDirectManipulationContent * This,
/* [annotation][out] */
_Out_writes_(pointCount) float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount);
HRESULT ( STDMETHODCALLTYPE *GetContentTransform )(
IDirectManipulationContent * This,
/* [annotation][out] */
_Out_writes_(pointCount) float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount);
HRESULT ( STDMETHODCALLTYPE *SyncContentTransform )(
IDirectManipulationContent * This,
/* [annotation][in] */
_In_reads_(pointCount) const float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount);
END_INTERFACE
} IDirectManipulationContentVtbl;
interface IDirectManipulationContent
{
CONST_VTBL struct IDirectManipulationContentVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationContent_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationContent_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationContent_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationContent_GetContentRect(This,contentSize) \
( (This)->lpVtbl -> GetContentRect(This,contentSize) )
#define IDirectManipulationContent_SetContentRect(This,contentSize) \
( (This)->lpVtbl -> SetContentRect(This,contentSize) )
#define IDirectManipulationContent_GetViewport(This,riid,object) \
( (This)->lpVtbl -> GetViewport(This,riid,object) )
#define IDirectManipulationContent_GetTag(This,riid,object,id) \
( (This)->lpVtbl -> GetTag(This,riid,object,id) )
#define IDirectManipulationContent_SetTag(This,object,id) \
( (This)->lpVtbl -> SetTag(This,object,id) )
#define IDirectManipulationContent_GetOutputTransform(This,matrix,pointCount) \
( (This)->lpVtbl -> GetOutputTransform(This,matrix,pointCount) )
#define IDirectManipulationContent_GetContentTransform(This,matrix,pointCount) \
( (This)->lpVtbl -> GetContentTransform(This,matrix,pointCount) )
#define IDirectManipulationContent_SyncContentTransform(This,matrix,pointCount) \
( (This)->lpVtbl -> SyncContentTransform(This,matrix,pointCount) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationContent_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationPrimaryContent_INTERFACE_DEFINED__
#define __IDirectManipulationPrimaryContent_INTERFACE_DEFINED__
/* interface IDirectManipulationPrimaryContent */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationPrimaryContent;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("C12851E4-1698-4625-B9B1-7CA3EC18630B")
IDirectManipulationPrimaryContent : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE SetSnapInterval(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motion,
/* [annotation][in] */
_In_ float interval,
/* [annotation][in] */
_In_ float offset) = 0;
virtual HRESULT STDMETHODCALLTYPE SetSnapPoints(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motion,
/* [annotation][in] */
_In_reads_opt_(pointCount) const float *points,
/* [annotation][in] */
_In_ DWORD pointCount) = 0;
virtual HRESULT STDMETHODCALLTYPE SetSnapType(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motion,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_SNAPPOINT_TYPE type) = 0;
virtual HRESULT STDMETHODCALLTYPE SetSnapCoordinate(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motion,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_SNAPPOINT_COORDINATE coordinate,
/* [annotation][in] */
_In_ float origin) = 0;
virtual HRESULT STDMETHODCALLTYPE SetZoomBoundaries(
/* [annotation][in] */
_In_ float zoomMinimum,
/* [annotation][in] */
_In_ float zoomMaximum) = 0;
virtual HRESULT STDMETHODCALLTYPE SetHorizontalAlignment(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_HORIZONTALALIGNMENT alignment) = 0;
virtual HRESULT STDMETHODCALLTYPE SetVerticalAlignment(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_VERTICALALIGNMENT alignment) = 0;
virtual HRESULT STDMETHODCALLTYPE GetInertiaEndTransform(
/* [annotation][out] */
_Out_writes_(pointCount) float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount) = 0;
virtual HRESULT STDMETHODCALLTYPE GetCenterPoint(
/* [annotation][out] */
_Out_ float *centerX,
/* [annotation][out] */
_Out_ float *centerY) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationPrimaryContentVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationPrimaryContent * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationPrimaryContent * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationPrimaryContent * This);
HRESULT ( STDMETHODCALLTYPE *SetSnapInterval )(
IDirectManipulationPrimaryContent * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motion,
/* [annotation][in] */
_In_ float interval,
/* [annotation][in] */
_In_ float offset);
HRESULT ( STDMETHODCALLTYPE *SetSnapPoints )(
IDirectManipulationPrimaryContent * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motion,
/* [annotation][in] */
_In_reads_opt_(pointCount) const float *points,
/* [annotation][in] */
_In_ DWORD pointCount);
HRESULT ( STDMETHODCALLTYPE *SetSnapType )(
IDirectManipulationPrimaryContent * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motion,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_SNAPPOINT_TYPE type);
HRESULT ( STDMETHODCALLTYPE *SetSnapCoordinate )(
IDirectManipulationPrimaryContent * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motion,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_SNAPPOINT_COORDINATE coordinate,
/* [annotation][in] */
_In_ float origin);
HRESULT ( STDMETHODCALLTYPE *SetZoomBoundaries )(
IDirectManipulationPrimaryContent * This,
/* [annotation][in] */
_In_ float zoomMinimum,
/* [annotation][in] */
_In_ float zoomMaximum);
HRESULT ( STDMETHODCALLTYPE *SetHorizontalAlignment )(
IDirectManipulationPrimaryContent * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_HORIZONTALALIGNMENT alignment);
HRESULT ( STDMETHODCALLTYPE *SetVerticalAlignment )(
IDirectManipulationPrimaryContent * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_VERTICALALIGNMENT alignment);
HRESULT ( STDMETHODCALLTYPE *GetInertiaEndTransform )(
IDirectManipulationPrimaryContent * This,
/* [annotation][out] */
_Out_writes_(pointCount) float *matrix,
/* [annotation][in] */
_In_ DWORD pointCount);
HRESULT ( STDMETHODCALLTYPE *GetCenterPoint )(
IDirectManipulationPrimaryContent * This,
/* [annotation][out] */
_Out_ float *centerX,
/* [annotation][out] */
_Out_ float *centerY);
END_INTERFACE
} IDirectManipulationPrimaryContentVtbl;
interface IDirectManipulationPrimaryContent
{
CONST_VTBL struct IDirectManipulationPrimaryContentVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationPrimaryContent_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationPrimaryContent_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationPrimaryContent_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationPrimaryContent_SetSnapInterval(This,motion,interval,offset) \
( (This)->lpVtbl -> SetSnapInterval(This,motion,interval,offset) )
#define IDirectManipulationPrimaryContent_SetSnapPoints(This,motion,points,pointCount) \
( (This)->lpVtbl -> SetSnapPoints(This,motion,points,pointCount) )
#define IDirectManipulationPrimaryContent_SetSnapType(This,motion,type) \
( (This)->lpVtbl -> SetSnapType(This,motion,type) )
#define IDirectManipulationPrimaryContent_SetSnapCoordinate(This,motion,coordinate,origin) \
( (This)->lpVtbl -> SetSnapCoordinate(This,motion,coordinate,origin) )
#define IDirectManipulationPrimaryContent_SetZoomBoundaries(This,zoomMinimum,zoomMaximum) \
( (This)->lpVtbl -> SetZoomBoundaries(This,zoomMinimum,zoomMaximum) )
#define IDirectManipulationPrimaryContent_SetHorizontalAlignment(This,alignment) \
( (This)->lpVtbl -> SetHorizontalAlignment(This,alignment) )
#define IDirectManipulationPrimaryContent_SetVerticalAlignment(This,alignment) \
( (This)->lpVtbl -> SetVerticalAlignment(This,alignment) )
#define IDirectManipulationPrimaryContent_GetInertiaEndTransform(This,matrix,pointCount) \
( (This)->lpVtbl -> GetInertiaEndTransform(This,matrix,pointCount) )
#define IDirectManipulationPrimaryContent_GetCenterPoint(This,centerX,centerY) \
( (This)->lpVtbl -> GetCenterPoint(This,centerX,centerY) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationPrimaryContent_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_directmanipulation_0000_0008 */
/* [local] */
typedef
enum DIRECTMANIPULATION_DRAG_DROP_STATUS
{
DIRECTMANIPULATION_DRAG_DROP_READY = 0,
DIRECTMANIPULATION_DRAG_DROP_PRESELECT = 1,
DIRECTMANIPULATION_DRAG_DROP_SELECTING = 2,
DIRECTMANIPULATION_DRAG_DROP_DRAGGING = 3,
DIRECTMANIPULATION_DRAG_DROP_CANCELLED = 4,
DIRECTMANIPULATION_DRAG_DROP_COMMITTED = 5
} DIRECTMANIPULATION_DRAG_DROP_STATUS;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0008_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0008_v0_0_s_ifspec;
#ifndef __IDirectManipulationDragDropEventHandler_INTERFACE_DEFINED__
#define __IDirectManipulationDragDropEventHandler_INTERFACE_DEFINED__
/* interface IDirectManipulationDragDropEventHandler */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationDragDropEventHandler;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("1FA11B10-701B-41AE-B5F2-49E36BD595AA")
IDirectManipulationDragDropEventHandler : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE OnDragDropStatusChange(
/* [annotation][in] */
_In_ IDirectManipulationViewport2 *viewport,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_DRAG_DROP_STATUS current,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_DRAG_DROP_STATUS previous) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationDragDropEventHandlerVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationDragDropEventHandler * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationDragDropEventHandler * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationDragDropEventHandler * This);
HRESULT ( STDMETHODCALLTYPE *OnDragDropStatusChange )(
IDirectManipulationDragDropEventHandler * This,
/* [annotation][in] */
_In_ IDirectManipulationViewport2 *viewport,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_DRAG_DROP_STATUS current,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_DRAG_DROP_STATUS previous);
END_INTERFACE
} IDirectManipulationDragDropEventHandlerVtbl;
interface IDirectManipulationDragDropEventHandler
{
CONST_VTBL struct IDirectManipulationDragDropEventHandlerVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationDragDropEventHandler_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationDragDropEventHandler_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationDragDropEventHandler_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationDragDropEventHandler_OnDragDropStatusChange(This,viewport,current,previous) \
( (This)->lpVtbl -> OnDragDropStatusChange(This,viewport,current,previous) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationDragDropEventHandler_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_directmanipulation_0000_0009 */
/* [local] */
typedef
enum DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION
{
DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION_VERTICAL = 0x1,
DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION_HORIZONTAL = 0x2,
DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION_SELECT_ONLY = 0x10,
DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION_SELECT_DRAG = 0x20,
DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION_HOLD_DRAG = 0x40
} DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION;
DEFINE_ENUM_FLAG_OPERATORS(DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION)
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0009_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0009_v0_0_s_ifspec;
#ifndef __IDirectManipulationDragDropBehavior_INTERFACE_DEFINED__
#define __IDirectManipulationDragDropBehavior_INTERFACE_DEFINED__
/* interface IDirectManipulationDragDropBehavior */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationDragDropBehavior;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("814B5AF5-C2C8-4270-A9B7-A198CE8D02FA")
IDirectManipulationDragDropBehavior : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE SetConfiguration(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION configuration) = 0;
virtual HRESULT STDMETHODCALLTYPE GetStatus(
/* [annotation][retval][out] */
_Out_ DIRECTMANIPULATION_DRAG_DROP_STATUS *status) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationDragDropBehaviorVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationDragDropBehavior * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationDragDropBehavior * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationDragDropBehavior * This);
HRESULT ( STDMETHODCALLTYPE *SetConfiguration )(
IDirectManipulationDragDropBehavior * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_DRAG_DROP_CONFIGURATION configuration);
HRESULT ( STDMETHODCALLTYPE *GetStatus )(
IDirectManipulationDragDropBehavior * This,
/* [annotation][retval][out] */
_Out_ DIRECTMANIPULATION_DRAG_DROP_STATUS *status);
END_INTERFACE
} IDirectManipulationDragDropBehaviorVtbl;
interface IDirectManipulationDragDropBehavior
{
CONST_VTBL struct IDirectManipulationDragDropBehaviorVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationDragDropBehavior_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationDragDropBehavior_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationDragDropBehavior_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationDragDropBehavior_SetConfiguration(This,configuration) \
( (This)->lpVtbl -> SetConfiguration(This,configuration) )
#define IDirectManipulationDragDropBehavior_GetStatus(This,status) \
( (This)->lpVtbl -> GetStatus(This,status) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationDragDropBehavior_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_directmanipulation_0000_0010 */
/* [local] */
typedef
enum DIRECTMANIPULATION_INTERACTION_TYPE
{
DIRECTMANIPULATION_INTERACTION_BEGIN = 0,
DIRECTMANIPULATION_INTERACTION_TYPE_MANIPULATION = 1,
DIRECTMANIPULATION_INTERACTION_TYPE_GESTURE_TAP = 2,
DIRECTMANIPULATION_INTERACTION_TYPE_GESTURE_HOLD = 3,
DIRECTMANIPULATION_INTERACTION_TYPE_GESTURE_CROSS_SLIDE = 4,
DIRECTMANIPULATION_INTERACTION_TYPE_GESTURE_PINCH_ZOOM = 5,
DIRECTMANIPULATION_INTERACTION_END = 100
} DIRECTMANIPULATION_INTERACTION_TYPE;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0010_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0010_v0_0_s_ifspec;
#ifndef __IDirectManipulationInteractionEventHandler_INTERFACE_DEFINED__
#define __IDirectManipulationInteractionEventHandler_INTERFACE_DEFINED__
/* interface IDirectManipulationInteractionEventHandler */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationInteractionEventHandler;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("E43F45B8-42B4-403E-B1F2-273B8F510830")
IDirectManipulationInteractionEventHandler : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE OnInteraction(
/* [annotation][in] */
_In_ IDirectManipulationViewport2 *viewport,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_INTERACTION_TYPE interaction) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationInteractionEventHandlerVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationInteractionEventHandler * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationInteractionEventHandler * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationInteractionEventHandler * This);
HRESULT ( STDMETHODCALLTYPE *OnInteraction )(
IDirectManipulationInteractionEventHandler * This,
/* [annotation][in] */
_In_ IDirectManipulationViewport2 *viewport,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_INTERACTION_TYPE interaction);
END_INTERFACE
} IDirectManipulationInteractionEventHandlerVtbl;
interface IDirectManipulationInteractionEventHandler
{
CONST_VTBL struct IDirectManipulationInteractionEventHandlerVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationInteractionEventHandler_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationInteractionEventHandler_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationInteractionEventHandler_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationInteractionEventHandler_OnInteraction(This,viewport,interaction) \
( (This)->lpVtbl -> OnInteraction(This,viewport,interaction) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationInteractionEventHandler_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationFrameInfoProvider_INTERFACE_DEFINED__
#define __IDirectManipulationFrameInfoProvider_INTERFACE_DEFINED__
/* interface IDirectManipulationFrameInfoProvider */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationFrameInfoProvider;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("fb759dba-6f4c-4c01-874e-19c8a05907f9")
IDirectManipulationFrameInfoProvider : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE GetNextFrameInfo(
/* [annotation][out] */
_Out_ ULONGLONG *time,
/* [annotation][out] */
_Out_ ULONGLONG *processTime,
/* [annotation][out] */
_Out_ ULONGLONG *compositionTime) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationFrameInfoProviderVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationFrameInfoProvider * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationFrameInfoProvider * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationFrameInfoProvider * This);
HRESULT ( STDMETHODCALLTYPE *GetNextFrameInfo )(
IDirectManipulationFrameInfoProvider * This,
/* [annotation][out] */
_Out_ ULONGLONG *time,
/* [annotation][out] */
_Out_ ULONGLONG *processTime,
/* [annotation][out] */
_Out_ ULONGLONG *compositionTime);
END_INTERFACE
} IDirectManipulationFrameInfoProviderVtbl;
interface IDirectManipulationFrameInfoProvider
{
CONST_VTBL struct IDirectManipulationFrameInfoProviderVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationFrameInfoProvider_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationFrameInfoProvider_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationFrameInfoProvider_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationFrameInfoProvider_GetNextFrameInfo(This,time,processTime,compositionTime) \
( (This)->lpVtbl -> GetNextFrameInfo(This,time,processTime,compositionTime) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationFrameInfoProvider_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationCompositor_INTERFACE_DEFINED__
#define __IDirectManipulationCompositor_INTERFACE_DEFINED__
/* interface IDirectManipulationCompositor */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationCompositor;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("537A0825-0387-4EFA-B62F-71EB1F085A7E")
IDirectManipulationCompositor : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE AddContent(
/* [annotation][in] */
_In_ IDirectManipulationContent *content,
/* [annotation][in] */
_In_opt_ IUnknown *device,
/* [annotation][in] */
_In_opt_ IUnknown *parentVisual,
/* [annotation][in] */
_In_opt_ IUnknown *childVisual) = 0;
virtual HRESULT STDMETHODCALLTYPE RemoveContent(
/* [annotation][in] */
_In_ IDirectManipulationContent *content) = 0;
virtual HRESULT STDMETHODCALLTYPE SetUpdateManager(
/* [annotation][in] */
_In_ IDirectManipulationUpdateManager *updateManager) = 0;
virtual HRESULT STDMETHODCALLTYPE Flush( void) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationCompositorVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationCompositor * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationCompositor * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationCompositor * This);
HRESULT ( STDMETHODCALLTYPE *AddContent )(
IDirectManipulationCompositor * This,
/* [annotation][in] */
_In_ IDirectManipulationContent *content,
/* [annotation][in] */
_In_opt_ IUnknown *device,
/* [annotation][in] */
_In_opt_ IUnknown *parentVisual,
/* [annotation][in] */
_In_opt_ IUnknown *childVisual);
HRESULT ( STDMETHODCALLTYPE *RemoveContent )(
IDirectManipulationCompositor * This,
/* [annotation][in] */
_In_ IDirectManipulationContent *content);
HRESULT ( STDMETHODCALLTYPE *SetUpdateManager )(
IDirectManipulationCompositor * This,
/* [annotation][in] */
_In_ IDirectManipulationUpdateManager *updateManager);
HRESULT ( STDMETHODCALLTYPE *Flush )(
IDirectManipulationCompositor * This);
END_INTERFACE
} IDirectManipulationCompositorVtbl;
interface IDirectManipulationCompositor
{
CONST_VTBL struct IDirectManipulationCompositorVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationCompositor_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationCompositor_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationCompositor_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationCompositor_AddContent(This,content,device,parentVisual,childVisual) \
( (This)->lpVtbl -> AddContent(This,content,device,parentVisual,childVisual) )
#define IDirectManipulationCompositor_RemoveContent(This,content) \
( (This)->lpVtbl -> RemoveContent(This,content) )
#define IDirectManipulationCompositor_SetUpdateManager(This,updateManager) \
( (This)->lpVtbl -> SetUpdateManager(This,updateManager) )
#define IDirectManipulationCompositor_Flush(This) \
( (This)->lpVtbl -> Flush(This) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationCompositor_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationCompositor2_INTERFACE_DEFINED__
#define __IDirectManipulationCompositor2_INTERFACE_DEFINED__
/* interface IDirectManipulationCompositor2 */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationCompositor2;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("D38C7822-F1CB-43CB-B4B9-AC0C767A412E")
IDirectManipulationCompositor2 : public IDirectManipulationCompositor
{
public:
virtual HRESULT STDMETHODCALLTYPE AddContentWithCrossProcessChaining(
/* [annotation][in] */
_In_ IDirectManipulationPrimaryContent *content,
/* [annotation][in] */
_In_opt_ IUnknown *device,
/* [annotation][in] */
_In_opt_ IUnknown *parentVisual,
/* [annotation][in] */
_In_opt_ IUnknown *childVisual) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationCompositor2Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationCompositor2 * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationCompositor2 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationCompositor2 * This);
HRESULT ( STDMETHODCALLTYPE *AddContent )(
IDirectManipulationCompositor2 * This,
/* [annotation][in] */
_In_ IDirectManipulationContent *content,
/* [annotation][in] */
_In_opt_ IUnknown *device,
/* [annotation][in] */
_In_opt_ IUnknown *parentVisual,
/* [annotation][in] */
_In_opt_ IUnknown *childVisual);
HRESULT ( STDMETHODCALLTYPE *RemoveContent )(
IDirectManipulationCompositor2 * This,
/* [annotation][in] */
_In_ IDirectManipulationContent *content);
HRESULT ( STDMETHODCALLTYPE *SetUpdateManager )(
IDirectManipulationCompositor2 * This,
/* [annotation][in] */
_In_ IDirectManipulationUpdateManager *updateManager);
HRESULT ( STDMETHODCALLTYPE *Flush )(
IDirectManipulationCompositor2 * This);
HRESULT ( STDMETHODCALLTYPE *AddContentWithCrossProcessChaining )(
IDirectManipulationCompositor2 * This,
/* [annotation][in] */
_In_ IDirectManipulationPrimaryContent *content,
/* [annotation][in] */
_In_opt_ IUnknown *device,
/* [annotation][in] */
_In_opt_ IUnknown *parentVisual,
/* [annotation][in] */
_In_opt_ IUnknown *childVisual);
END_INTERFACE
} IDirectManipulationCompositor2Vtbl;
interface IDirectManipulationCompositor2
{
CONST_VTBL struct IDirectManipulationCompositor2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationCompositor2_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationCompositor2_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationCompositor2_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationCompositor2_AddContent(This,content,device,parentVisual,childVisual) \
( (This)->lpVtbl -> AddContent(This,content,device,parentVisual,childVisual) )
#define IDirectManipulationCompositor2_RemoveContent(This,content) \
( (This)->lpVtbl -> RemoveContent(This,content) )
#define IDirectManipulationCompositor2_SetUpdateManager(This,updateManager) \
( (This)->lpVtbl -> SetUpdateManager(This,updateManager) )
#define IDirectManipulationCompositor2_Flush(This) \
( (This)->lpVtbl -> Flush(This) )
#define IDirectManipulationCompositor2_AddContentWithCrossProcessChaining(This,content,device,parentVisual,childVisual) \
( (This)->lpVtbl -> AddContentWithCrossProcessChaining(This,content,device,parentVisual,childVisual) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationCompositor2_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationUpdateHandler_INTERFACE_DEFINED__
#define __IDirectManipulationUpdateHandler_INTERFACE_DEFINED__
/* interface IDirectManipulationUpdateHandler */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationUpdateHandler;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("790B6337-64F8-4FF5-A269-B32BC2AF27A7")
IDirectManipulationUpdateHandler : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE Update( void) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationUpdateHandlerVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationUpdateHandler * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationUpdateHandler * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationUpdateHandler * This);
HRESULT ( STDMETHODCALLTYPE *Update )(
IDirectManipulationUpdateHandler * This);
END_INTERFACE
} IDirectManipulationUpdateHandlerVtbl;
interface IDirectManipulationUpdateHandler
{
CONST_VTBL struct IDirectManipulationUpdateHandlerVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationUpdateHandler_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationUpdateHandler_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationUpdateHandler_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationUpdateHandler_Update(This) \
( (This)->lpVtbl -> Update(This) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationUpdateHandler_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationUpdateManager_INTERFACE_DEFINED__
#define __IDirectManipulationUpdateManager_INTERFACE_DEFINED__
/* interface IDirectManipulationUpdateManager */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationUpdateManager;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("B0AE62FD-BE34-46E7-9CAA-D361FACBB9CC")
IDirectManipulationUpdateManager : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE RegisterWaitHandleCallback(
/* [annotation][in] */
_In_ HANDLE handle,
/* [annotation][in] */
_In_ IDirectManipulationUpdateHandler *eventHandler,
/* [annotation][out] */
_Out_ DWORD *cookie) = 0;
virtual HRESULT STDMETHODCALLTYPE UnregisterWaitHandleCallback(
/* [annotation][in] */
_In_ DWORD cookie) = 0;
virtual HRESULT STDMETHODCALLTYPE Update(
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationUpdateManagerVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationUpdateManager * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationUpdateManager * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationUpdateManager * This);
HRESULT ( STDMETHODCALLTYPE *RegisterWaitHandleCallback )(
IDirectManipulationUpdateManager * This,
/* [annotation][in] */
_In_ HANDLE handle,
/* [annotation][in] */
_In_ IDirectManipulationUpdateHandler *eventHandler,
/* [annotation][out] */
_Out_ DWORD *cookie);
HRESULT ( STDMETHODCALLTYPE *UnregisterWaitHandleCallback )(
IDirectManipulationUpdateManager * This,
/* [annotation][in] */
_In_ DWORD cookie);
HRESULT ( STDMETHODCALLTYPE *Update )(
IDirectManipulationUpdateManager * This,
/* [annotation][in] */
_In_opt_ IDirectManipulationFrameInfoProvider *frameInfo);
END_INTERFACE
} IDirectManipulationUpdateManagerVtbl;
interface IDirectManipulationUpdateManager
{
CONST_VTBL struct IDirectManipulationUpdateManagerVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationUpdateManager_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationUpdateManager_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationUpdateManager_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationUpdateManager_RegisterWaitHandleCallback(This,handle,eventHandler,cookie) \
( (This)->lpVtbl -> RegisterWaitHandleCallback(This,handle,eventHandler,cookie) )
#define IDirectManipulationUpdateManager_UnregisterWaitHandleCallback(This,cookie) \
( (This)->lpVtbl -> UnregisterWaitHandleCallback(This,cookie) )
#define IDirectManipulationUpdateManager_Update(This,frameInfo) \
( (This)->lpVtbl -> Update(This,frameInfo) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationUpdateManager_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_directmanipulation_0000_0016 */
/* [local] */
typedef
enum DIRECTMANIPULATION_AUTOSCROLL_CONFIGURATION
{
DIRECTMANIPULATION_AUTOSCROLL_CONFIGURATION_STOP = 0,
DIRECTMANIPULATION_AUTOSCROLL_CONFIGURATION_FORWARD = 1,
DIRECTMANIPULATION_AUTOSCROLL_CONFIGURATION_REVERSE = 2
} DIRECTMANIPULATION_AUTOSCROLL_CONFIGURATION;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0016_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0016_v0_0_s_ifspec;
#ifndef __IDirectManipulationAutoScrollBehavior_INTERFACE_DEFINED__
#define __IDirectManipulationAutoScrollBehavior_INTERFACE_DEFINED__
/* interface IDirectManipulationAutoScrollBehavior */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationAutoScrollBehavior;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("6D5954D4-2003-4356-9B31-D051C9FF0AF7")
IDirectManipulationAutoScrollBehavior : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE SetConfiguration(
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motionTypes,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_AUTOSCROLL_CONFIGURATION scrollMotion) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationAutoScrollBehaviorVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationAutoScrollBehavior * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationAutoScrollBehavior * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationAutoScrollBehavior * This);
HRESULT ( STDMETHODCALLTYPE *SetConfiguration )(
IDirectManipulationAutoScrollBehavior * This,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_MOTION_TYPES motionTypes,
/* [annotation][in] */
_In_ DIRECTMANIPULATION_AUTOSCROLL_CONFIGURATION scrollMotion);
END_INTERFACE
} IDirectManipulationAutoScrollBehaviorVtbl;
interface IDirectManipulationAutoScrollBehavior
{
CONST_VTBL struct IDirectManipulationAutoScrollBehaviorVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationAutoScrollBehavior_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationAutoScrollBehavior_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationAutoScrollBehavior_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationAutoScrollBehavior_SetConfiguration(This,motionTypes,scrollMotion) \
( (This)->lpVtbl -> SetConfiguration(This,motionTypes,scrollMotion) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationAutoScrollBehavior_INTERFACE_DEFINED__ */
#ifndef __IDirectManipulationDeferContactService_INTERFACE_DEFINED__
#define __IDirectManipulationDeferContactService_INTERFACE_DEFINED__
/* interface IDirectManipulationDeferContactService */
/* [unique][helpstring][uuid][object][local] */
EXTERN_C const IID IID_IDirectManipulationDeferContactService;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("652D5C71-FE60-4A98-BE70-E5F21291E7F1")
IDirectManipulationDeferContactService : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE DeferContact(
/* [annotation][in] */
_In_ UINT32 pointerId,
/* [annotation][in] */
_In_ UINT32 timeout) = 0;
virtual HRESULT STDMETHODCALLTYPE CancelContact(
/* [annotation][in] */
_In_ UINT32 pointerId) = 0;
virtual HRESULT STDMETHODCALLTYPE CancelDeferral(
/* [annotation][in] */
_In_ UINT32 pointerId) = 0;
};
#else /* C style interface */
typedef struct IDirectManipulationDeferContactServiceVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IDirectManipulationDeferContactService * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IDirectManipulationDeferContactService * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IDirectManipulationDeferContactService * This);
HRESULT ( STDMETHODCALLTYPE *DeferContact )(
IDirectManipulationDeferContactService * This,
/* [annotation][in] */
_In_ UINT32 pointerId,
/* [annotation][in] */
_In_ UINT32 timeout);
HRESULT ( STDMETHODCALLTYPE *CancelContact )(
IDirectManipulationDeferContactService * This,
/* [annotation][in] */
_In_ UINT32 pointerId);
HRESULT ( STDMETHODCALLTYPE *CancelDeferral )(
IDirectManipulationDeferContactService * This,
/* [annotation][in] */
_In_ UINT32 pointerId);
END_INTERFACE
} IDirectManipulationDeferContactServiceVtbl;
interface IDirectManipulationDeferContactService
{
CONST_VTBL struct IDirectManipulationDeferContactServiceVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IDirectManipulationDeferContactService_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IDirectManipulationDeferContactService_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IDirectManipulationDeferContactService_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IDirectManipulationDeferContactService_DeferContact(This,pointerId,timeout) \
( (This)->lpVtbl -> DeferContact(This,pointerId,timeout) )
#define IDirectManipulationDeferContactService_CancelContact(This,pointerId) \
( (This)->lpVtbl -> CancelContact(This,pointerId) )
#define IDirectManipulationDeferContactService_CancelDeferral(This,pointerId) \
( (This)->lpVtbl -> CancelDeferral(This,pointerId) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IDirectManipulationDeferContactService_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_directmanipulation_0000_0018 */
/* [local] */
#endif // #if (NTDDI_VERSION > NTDDI_WIN8)
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0029_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0029_v0_0_s_ifspec;
#ifndef __DirectManipulation_LIBRARY_DEFINED__
#define __DirectManipulation_LIBRARY_DEFINED__
/* library DirectManipulation */
/* [helpstring][version][uuid] */
EXTERN_C const IID LIBID_DirectManipulation;
EXTERN_C const CLSID CLSID_DirectManipulationViewport;
#ifdef __cplusplus
class DECLSPEC_UUID("34E211B6-3650-4F75-8334-FA359598E1C5")
DirectManipulationViewport;
#endif
EXTERN_C const CLSID CLSID_DirectManipulationUpdateManager;
#ifdef __cplusplus
class DECLSPEC_UUID("9FC1BFD5-1835-441A-B3B1-B6CC74B727D0")
DirectManipulationUpdateManager;
#endif
EXTERN_C const CLSID CLSID_DirectManipulationPrimaryContent;
#ifdef __cplusplus
class DECLSPEC_UUID("CAA02661-D59E-41C7-8393-3BA3BACB6B57")
DirectManipulationPrimaryContent;
#endif
EXTERN_C const CLSID CLSID_DirectManipulationManager;
#ifdef __cplusplus
class DECLSPEC_UUID("54E211B6-3650-4F75-8334-FA359598E1C5")
DirectManipulationManager;
#endif
EXTERN_C const CLSID CLSID_DirectManipulationSharedManager;
#ifdef __cplusplus
class DECLSPEC_UUID("99793286-77CC-4B57-96DB-3B354F6F9FB5")
DirectManipulationSharedManager;
#endif
EXTERN_C const CLSID CLSID_DCompManipulationCompositor;
#ifdef __cplusplus
class DECLSPEC_UUID("79DEA627-A08A-43AC-8EF5-6900B9299126")
DCompManipulationCompositor;
#endif
#endif /* __DirectManipulation_LIBRARY_DEFINED__ */
/* interface __MIDL_itf_directmanipulation_0000_0030 */
/* [local] */
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0030_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_directmanipulation_0000_0030_v0_0_s_ifspec;
/* Additional Prototypes for ALL interfaces */
/* end of Additional Prototypes */
#ifdef __cplusplus
}
#endif
#endif