Rebase against 16e73be10d940c9c04101a47687a6f8a385c2b0f.

This commit is contained in:
Zebediah Figura
2021-09-17 17:45:25 -05:00
parent 3a06c15dd2
commit fdcc8bec48
9 changed files with 105 additions and 105 deletions

View File

@ -1,4 +1,4 @@
From 74edb4f4f73468f132872cc96841894220e2b7a0 Mon Sep 17 00:00:00 2001
From 9601c7ebe3adaef521073e4b5ab7728d9da3c8f7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Sun, 16 Aug 2015 17:34:22 +0200
Subject: [PATCH] shell32: Implement NewMenu with new folder item.
@ -14,17 +14,17 @@ Correct header issue when compiling i386 (var_arg)
dlls/shell32/Makefile.in | 1 +
dlls/shell32/shell32_classes.idl | 5 +
dlls/shell32/shell32_main.h | 1 +
dlls/shell32/shellnew.c | 498 +++++++++++++++++++++++++++++++
dlls/shell32/shellnew.c | 497 +++++++++++++++++++++++++++++++
dlls/shell32/shellole.c | 1 +
dlls/shell32/tests/shlview.c | 9 +-
6 files changed, 514 insertions(+), 1 deletion(-)
6 files changed, 513 insertions(+), 1 deletion(-)
create mode 100644 dlls/shell32/shellnew.c
diff --git a/dlls/shell32/Makefile.in b/dlls/shell32/Makefile.in
index fe49bf09f98..41b2ec2d607 100644
index 04dd196cfe8..072d98b5fba 100644
--- a/dlls/shell32/Makefile.in
+++ b/dlls/shell32/Makefile.in
@@ -31,6 +31,7 @@ C_SRCS = \
@@ -33,6 +33,7 @@ C_SRCS = \
shelldispatch.c \
shellitem.c \
shelllink.c \
@ -33,10 +33,10 @@ index fe49bf09f98..41b2ec2d607 100644
shellord.c \
shellpath.c \
diff --git a/dlls/shell32/shell32_classes.idl b/dlls/shell32/shell32_classes.idl
index f2c5ed4a766..c9ecb9aa2a2 100644
index 22ef49ae5c7..699ad1a2f03 100644
--- a/dlls/shell32/shell32_classes.idl
+++ b/dlls/shell32/shell32_classes.idl
@@ -80,6 +80,11 @@ coclass KnownFolderManager { interface IKnownFolderManager; }
@@ -86,6 +86,11 @@ coclass KnownFolderManager { interface IKnownFolderManager; }
uuid(4657278a-411b-11d2-839a-00c04fd918d0)
] coclass DragDropHelper { interface IDropTargetHelper; }
@ -49,10 +49,10 @@ index f2c5ed4a766..c9ecb9aa2a2 100644
threading(apartment),
uuid(00bb2763-6a77-11d0-a535-00c04fd7d062)
diff --git a/dlls/shell32/shell32_main.h b/dlls/shell32/shell32_main.h
index da50e19de46..23cf30acfa9 100644
index b98629298aa..d684d8759a7 100644
--- a/dlls/shell32/shell32_main.h
+++ b/dlls/shell32/shell32_main.h
@@ -103,6 +103,7 @@ HRESULT WINAPI RecycleBin_Constructor(IUnknown * pUnkOuter, REFIID riif, LPVOID
@@ -102,6 +102,7 @@ HRESULT WINAPI RecycleBin_Constructor(IUnknown * pUnkOuter, REFIID riif, LPVOID
HRESULT WINAPI QueryAssociations_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppOutput) DECLSPEC_HIDDEN;
HRESULT WINAPI ExplorerBrowser_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv) DECLSPEC_HIDDEN;
HRESULT WINAPI KnownFolderManager_Constructor(IUnknown *pUnkOuter, REFIID riid, LPVOID *ppv) DECLSPEC_HIDDEN;
@ -62,10 +62,10 @@ index da50e19de46..23cf30acfa9 100644
HRESULT WINAPI CPanel_ExtractIconA(LPITEMIDLIST pidl, LPCSTR pszFile, UINT nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIconSize) DECLSPEC_HIDDEN;
diff --git a/dlls/shell32/shellnew.c b/dlls/shell32/shellnew.c
new file mode 100644
index 00000000000..89be091e031
index 00000000000..04d718f0f0d
--- /dev/null
+++ b/dlls/shell32/shellnew.c
@@ -0,0 +1,498 @@
@@ -0,0 +1,497 @@
+/*
+ * Copyright 2015 Michael Müller
+ *
@ -83,7 +83,6 @@ index 00000000000..89be091e031
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+#include "config.h"
+
+#define COBJMACROS
+#define NONAMELESSUNION
@ -419,7 +418,7 @@ index 00000000000..89be091e031
+
+ item.fMask = MIIM_ID | MIIM_BITMAP | MIIM_STRING;
+ item.dwTypeData = buffer;
+ item.cch = strlenW(buffer);
+ item.cch = wcslen(buffer);
+ item.wID = cmd_first;
+ item.hbmpItem = HBMMENU_CALLBACK;
+ if (InsertMenuItemW(menu, pos, TRUE, &item))
@ -458,7 +457,7 @@ index 00000000000..89be091e031
+ item.fType = MFT_STRING;
+ item.wID = -1;
+ item.dwTypeData = newW; /* FIXME: load from resource file */
+ item.cch = strlenW(newW);
+ item.cch = wcslen(newW);
+ item.fState = MFS_ENABLED;
+ item.hSubMenu = submenu;
+
@ -565,10 +564,10 @@ index 00000000000..89be091e031
+ return hr;
+}
diff --git a/dlls/shell32/shellole.c b/dlls/shell32/shellole.c
index 3c88642512e..d062cc8476b 100644
index d1f1afc3780..e521b7e8f70 100644
--- a/dlls/shell32/shellole.c
+++ b/dlls/shell32/shellole.c
@@ -75,6 +75,7 @@ static const struct {
@@ -73,6 +73,7 @@ static const struct {
{&CLSID_MyComputer, ISF_MyComputer_Constructor},
{&CLSID_MyDocuments, MyDocuments_Constructor},
{&CLSID_NetworkPlaces, ISF_NetworkPlaces_Constructor},
@ -604,5 +603,5 @@ index f5d96c8d441..dbb24d93564 100644
ok(hr == S_OK, "Failed to get IContextMenu3, hr %#x.\n", hr);
IUnknown_Release(unk2);
--
2.20.1
2.33.0