diff --git a/include/Makefile.in b/include/Makefile.in index afc043ca671..7904292560b 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -847,6 +847,7 @@ SOURCES = \ windows.security.credentials.idl \ windows.security.cryptography.idl \ windows.security.isolation.idl \ + windows.storage.fileproperties.idl \ windows.storage.idl \ windows.storage.streams.idl \ windows.system.idl \ diff --git a/include/windows.storage.fileproperties.idl b/include/windows.storage.fileproperties.idl new file mode 100644 index 00000000000..9426d02fefb --- /dev/null +++ b/include/windows.storage.fileproperties.idl @@ -0,0 +1,62 @@ +/* + * Copyright (C) 2023 Mohamad Al-Jaf + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#ifdef __WIDL__ +#pragma winrt ns_prefix +#endif + +import "inspectable.idl"; +import "asyncinfo.idl"; +import "eventtoken.idl"; +import "windowscontracts.idl"; +import "windows.foundation.idl"; +import "windows.devices.geolocation.idl"; +/* import "windows.storage.idl"; */ +import "windows.storage.streams.idl"; + +namespace Windows.Storage.FileProperties { + interface IBasicProperties; + + runtimeclass BasicProperties; + + declare { + interface Windows.Foundation.AsyncOperationCompletedHandler; + interface Windows.Foundation.IAsyncOperation; + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0), + exclusiveto(Windows.Storage.FileProperties.BasicProperties), + uuid(d05d55db-785e-4a66-be02-9beec58aea81) + ] + interface IBasicProperties : IInspectable + { + [propget] HRESULT Size([out, retval] UINT64 *value); + [propget] HRESULT DateModified([out, retval] Windows.Foundation.DateTime *value); + [propget] HRESULT ItemDate([out, retval] Windows.Foundation.DateTime *value); + } + + [ + contract(Windows.Foundation.UniversalApiContract, 1.0) + ] + runtimeclass BasicProperties + { + [default] interface Windows.Storage.FileProperties.IBasicProperties; + interface Windows.Storage.FileProperties.IStorageItemExtraProperties; + } +} diff --git a/include/windows.storage.idl b/include/windows.storage.idl index aa050040640..c0bfad2589c 100644 --- a/include/windows.storage.idl +++ b/include/windows.storage.idl @@ -25,7 +25,7 @@ import "asyncinfo.idl"; import "eventtoken.idl"; import "windowscontracts.idl"; import "windows.foundation.idl"; -/* import "windows.storage.fileproperties.idl"; */ +import "windows.storage.fileproperties.idl"; /* import "windows.storage.provider.idl"; */ /* import "windows.storage.search.idl"; */ import "windows.storage.streams.idl";