[2/2] send CDN_INCLUDEITEM notification for each object scanned by the dialog

Ricardo Filipe ricardojdfilipe at gmail.com
Thu Mar 12 08:43:32 CDT 2009


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.winehq.org/pipermail/wine-patches/attachments/20090312/74ec6695/attachment.htm>
-------------- next part --------------
From b9e53a710cebd07c49b9effb7e4eb8b0ec33804f Mon Sep 17 00:00:00 2001
From: Ricardo Filipe <ricardo_barbano at hotmail.com>
Date: Thu, 12 Mar 2009 13:37:59 +0000
Subject: comdlg32: send CDN_INCLUDEITEM notification for each object to be
 included in the dialog

---
 dlls/comdlg32/filedlg.c        |    5 ++---
 dlls/comdlg32/filedlgbrowser.c |    5 +++++
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/dlls/comdlg32/filedlg.c b/dlls/comdlg32/filedlg.c
index 881d5eb..7553672 100644
--- a/dlls/comdlg32/filedlg.c
+++ b/dlls/comdlg32/filedlg.c
@@ -37,7 +37,7 @@
  * FIXME: add to recent docs
  *
  * FIXME: flags not implemented: OFN_DONTADDTORECENT,
- * OFN_ENABLEINCLUDENOTIFY, OFN_ENABLESIZING,
+ * OFN_ENABLESIZING,
  * OFN_NODEREFERENCELINKS, OFN_NOREADONLYRETURN,
  * OFN_NOTESTFILECREATE, OFN_USEMONIKERS
  *
@@ -82,8 +82,7 @@
 WINE_DEFAULT_DEBUG_CHANNEL(commdlg);
 
 #define UNIMPLEMENTED_FLAGS \
-(OFN_DONTADDTORECENT |\
-OFN_ENABLEINCLUDENOTIFY | OFN_ENABLESIZING |\
+(OFN_DONTADDTORECENT | OFN_ENABLESIZING |\
 OFN_NODEREFERENCELINKS | OFN_NOREADONLYRETURN |\
 OFN_NOTESTFILECREATE /*| OFN_USEMONIKERS*/)
 
diff --git a/dlls/comdlg32/filedlgbrowser.c b/dlls/comdlg32/filedlgbrowser.c
index 704fb98..6c3c3c8 100644
--- a/dlls/comdlg32/filedlgbrowser.c
+++ b/dlls/comdlg32/filedlgbrowser.c
@@ -875,6 +875,11 @@ static HRESULT WINAPI IShellBrowserImpl_ICommDlgBrowser_IncludeObject(ICommDlgBr
     if(ulAttr & (SFGAO_FOLDER | SFGAO_LINK))
         return S_OK;
 
+    /* if the application takes care of including the item we are done */
+    if(fodInfos->ofnInfos->Flags & OFN_ENABLEINCLUDENOTIFY &&
+    SendIncludeItemNotificationMessage(This->hwndOwner, pidl))
+        return S_OK;
+
     /* Check if there is a mask to apply if not */
     if(!fodInfos->ShellInfos.lpstrCurrentFilter || !lstrlenW(fodInfos->ShellInfos.lpstrCurrentFilter))
         return S_OK;
-- 
1.5.6.3


More information about the wine-patches mailing list