Fabian Maurer : include: Add UIRibbon interface definitions.
Alexandre Julliard
julliard at winehq.org
Tue Aug 1 16:43:15 CDT 2017
Module: wine
Branch: master
Commit: 338e261c7163fecf505d20f735098d72e17c3417
URL: http://source.winehq.org/git/wine.git/?a=commit;h=338e261c7163fecf505d20f735098d72e17c3417
Author: Fabian Maurer <dark.shadow4 at web.de>
Date: Sun Jul 30 19:40:32 2017 +0200
include: Add UIRibbon interface definitions.
Signed-off-by: Fabian Maurer <dark.shadow4 at web.de>
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
include/Makefile.in | 1 +
include/uiribbon.idl | 182 +++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 183 insertions(+)
diff --git a/include/Makefile.in b/include/Makefile.in
index 1dd6aaf..063c4ec 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -161,6 +161,7 @@ IDL_SRCS = \
txdtc.idl \
uiautomationclient.idl \
uiautomationcore.idl \
+ uiribbon.idl \
unknwn.idl \
urlhist.idl \
urlmon.idl \
diff --git a/include/uiribbon.idl b/include/uiribbon.idl
new file mode 100644
index 0000000..6759400
--- /dev/null
+++ b/include/uiribbon.idl
@@ -0,0 +1,182 @@
+/*
+ * COM Classes for uiribbon
+ *
+ * Copyright 2017 Fabian Maurer
+ *
+ * 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
+ */
+
+import "propsys.idl";
+
+#ifndef __WIDL__
+#define threading(model)
+#endif
+
+typedef enum UI_INVALIDATIONS {
+ UI_INVALIDATIONS_STATE = 0x00000001,
+ UI_INVALIDATIONS_VALUE = 0x00000002,
+ UI_INVALIDATIONS_PROPERTY = 0x00000004,
+ UI_INVALIDATIONS_ALLPROPERTIES = 0x00000008,
+} UI_INVALIDATIONS;
+
+typedef enum UI_EXECUTIONVERB {
+ UI_EXECUTIONVERB_EXECUTE,
+ UI_EXECUTIONVERB_PREVIEW,
+ UI_EXECUTIONVERB_CANCELPREVIEW,
+} UI_EXECUTIONVERB;
+
+typedef enum UI_VIEWTYPE {
+ UI_VIEWTYPE_RIBBON = 1
+} UI_VIEWTYPE;
+
+typedef enum UI_VIEWVERB {
+ UI_VIEWVERB_CREATE,
+ UI_VIEWVERB_DESTROY,
+ UI_VIEWVERB_SIZE,
+ UI_VIEWVERB_ERROR,
+} UI_VIEWVERB;
+
+typedef enum UI_COMMANDTYPE {
+ UI_COMMANDTYPE_UNKNOWN,
+ UI_COMMANDTYPE_GROUP,
+ UI_COMMANDTYPE_ACTION,
+ UI_COMMANDTYPE_ANCHOR,
+ UI_COMMANDTYPE_CONTEXT,
+ UI_COMMANDTYPE_COLLECTION,
+ UI_COMMANDTYPE_COMMANDCOLLECTION,
+ UI_COMMANDTYPE_DECIMAL,
+ UI_COMMANDTYPE_BOOLEAN,
+ UI_COMMANDTYPE_FONT,
+ UI_COMMANDTYPE_RECENTITEMS,
+ UI_COMMANDTYPE_COLORANCHOR,
+ UI_COMMANDTYPE_COLORCOLLECTION,
+} UI_COMMANDTYPE;
+
+
+[
+ object,
+ uuid(c205bb48-5b1c-4219-a106-15bd0a5f24e2),
+ local,
+ pointer_default(unique)
+]
+interface IUISimplePropertySet : IUnknown
+{
+ HRESULT GetValue(
+ [in] REFPROPERTYKEY key,
+ [out] PROPVARIANT *value
+ );
+}
+
+[
+ object,
+ uuid(75ae0a2d-dc03-4c9f-8883-069660d0beb6),
+ local,
+ pointer_default(unique)
+]
+interface IUICommandHandler : IUnknown
+{
+ HRESULT Execute(
+ [in] UINT32 commandId,
+ [in] UI_EXECUTIONVERB verb,
+ [in] const PROPERTYKEY *key,
+ [in] const PROPVARIANT *currentValue,
+ [in] IUISimplePropertySet *commandExecutionProperties
+ );
+ HRESULT UpdateProperty(
+ [in] UINT32 commandId,
+ [in] REFPROPERTYKEY key,
+ [in] const PROPVARIANT *currentValue,
+ [out] PROPVARIANT *newValue
+ );
+}
+
+[
+ object,
+ uuid(d428903c-729a-491d-910d-682a08ff2522),
+ local,
+ pointer_default(unique)
+]
+interface IUIApplication : IUnknown
+{
+ HRESULT OnViewChanged(
+ [in] UINT32 viewId,
+ [in] UI_VIEWTYPE typeID,
+ [in] IUnknown *view,
+ [in] UI_VIEWVERB verb,
+ [in] INT32 uReasonCode
+ );
+ HRESULT OnCreateUICommand(
+ [in] UINT32 commandId,
+ [in] UI_COMMANDTYPE typeID,
+ [out] IUICommandHandler **commandHandler
+ );
+ HRESULT OnDestroyUICommand(
+ [in] UINT32 commandId,
+ [in] UI_COMMANDTYPE typeID,
+ [in] IUICommandHandler *commandHandler
+ );
+}
+
+[
+ object,
+ uuid(f4f0385d-6872-43a8-ad09-4c339cb3f5c5),
+ local,
+ pointer_default(unique)
+]
+interface IUIFramework : IUnknown
+{
+ HRESULT Initialize(
+ [in] HWND frameWnd,
+ [in] IUIApplication *application
+ );
+ HRESULT Destroy(
+ );
+ HRESULT LoadUI(
+ [in] HINSTANCE instance,
+ [in] LPCWSTR resourceName
+ );
+ HRESULT GetView(
+ [in] UINT32 viewId,
+ [in] REFIID riid,
+ [out] void **ppv
+ );
+ HRESULT GetUICommandProperty(
+ [in] UINT32 commandId,
+ [in] REFPROPERTYKEY key,
+ [out] PROPVARIANT *value
+ );
+ HRESULT SetUICommandProperty(
+ [in] UINT32 commandId,
+ [in] REFPROPERTYKEY key,
+ [in] PROPVARIANT value
+ );
+ HRESULT InvalidateUICommand(
+ [in] UINT32 commandId,
+ [in] UI_INVALIDATIONS flags,
+ [in] const PROPERTYKEY *key
+ );
+ HRESULT FlushPendingInvalidations(
+ );
+ HRESULT SetModes(
+ INT32 iModes
+ );
+}
+
+[
+ helpstring("UIRibbonFramework Object"),
+ threading(apartment),
+ uuid(926749fa-2615-4987-8845-c33e65f2b957)
+]
+coclass UIRibbonFramework { interface IUIFramework; }
More information about the wine-cvs
mailing list