From a483e9928b4787d93f3bbe417f0a2fcbbaf7c564 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Bernon?= Date: Tue, 24 Jan 2023 22:19:45 +0100 Subject: [PATCH] include: Add Windows.Foundation.Collections.IVectorChangedEventArgs definition. --- include/Makefile.in | 1 + include/ivectorchangedeventargs.idl | 49 +++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 include/ivectorchangedeventargs.idl diff --git a/include/Makefile.in b/include/Makefile.in index 54cbf4d955c..40d9bf44fdd 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -378,6 +378,7 @@ SOURCES = \ iprtrmib.h \ iptypes.h \ isguids.h \ + ivectorchangedeventargs.idl \ knownfolders.h \ ks.h \ ksguid.h \ diff --git a/include/ivectorchangedeventargs.idl b/include/ivectorchangedeventargs.idl new file mode 100644 index 00000000000..45720b595f2 --- /dev/null +++ b/include/ivectorchangedeventargs.idl @@ -0,0 +1,49 @@ +/* + * Copyright 2022 RĂ©mi Bernon for CodeWeavers + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#ifdef __WIDL__ +#pragma winrt ns_prefix +#endif + +import "inspectable.idl"; +import "windowscontracts.idl"; + +namespace Windows.Foundation.Collections { + [contract(Windows.Foundation.FoundationContract, 1.0)] + enum CollectionChange + { + Reset = 0, + ItemInserted = 1, + ItemRemoved = 2, + ItemChanged = 3, + }; + typedef enum CollectionChange CollectionChange; + + [ + contract(Windows.Foundation.FoundationContract, 1.0), + uuid(575933df-34fe-4480-af15-07691f3d5d9b), + pointer_default(unique), + version(0x06020000 /* NTDDI_WIN8 */), + object, + ] + interface IVectorChangedEventArgs : IInspectable + { + [propget] HRESULT CollectionChange([out, retval] CollectionChange *value); + [propget] HRESULT Index([out, retval] unsigned *value); + }; +}