10 #include <commoncontrols.h> 11 #include <../browseui.h> 20 #define UNIMPLEMENTED DbgPrint("%s is UNIMPLEMENTED!\n", __FUNCTION__) 39 DWORD SearchHiddenValue = 0;
48 ERR(
"RegQueryKey for \"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\SearchHidden\" returned error(s).\n");
49 SearchHiddenValue = 1;
53 TRACE(
"SearchHidden is '%d'.\n", SearchHiddenValue);
58 ERR(
"RegQueryKey for \"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\SearchHidden\" Failed.\n");
63 ERR(
"RegOpenKey for \"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\" Failed.\n");
65 if (SearchHiddenValue != 0)
93 AtlAdvise(pShellBrowser, static_cast<IDispatch *>(
this), DIID_DWebBrowserEvents, &dwAdviseCookie);
116 ppShellBrowser = &pShellBrowser;
117 if (!*ppShellBrowser)
125 hr = (*ppShellBrowser)->QueryActiveShellView(&pShellView);
136 ppShellFolder = &pShellFolder;
145 if (
clsid != CLSID_FindFolder)
150 hr = pShellView->GetWindow(pHwnd);
210 const WCHAR shellGuidPrefix[] =
L"shell:::";
211 memcpy(szShellGuid, shellGuidPrefix,
sizeof(shellGuidPrefix));
222 hr = pShellBrowser->BrowseObject(findFolderPidl, 0);
253 if (iSelectedIndex !=
CB_ERR)
258 item.iItem = iSelectedIndex;
259 item.pszText = szItemText;
295 iWidth - iPadding * 2,
325 TRACE(
"CloseDW called\n");
351 if (pdbi->dwMask & DBIM_MINSIZE)
353 pdbi->ptMinSize.x = 200;
354 pdbi->ptMinSize.y = 30;
357 if (pdbi->dwMask & DBIM_MAXSIZE)
359 pdbi->ptMaxSize.y = -1;
362 if (pdbi->dwMask & DBIM_INTEGRAL)
364 pdbi->ptIntegral.y = 1;
367 if (pdbi->dwMask & DBIM_ACTUAL)
369 pdbi->ptActual.x = 200;
370 pdbi->ptActual.y = 30;
373 if (pdbi->dwMask & DBIM_TITLE)
379 if (pdbi->dwMask & DBIM_MODEFLAGS)
381 pdbi->dwModeFlags = DBIMF_NORMAL | DBIMF_VARIABLEHEIGHT;
384 if (pdbi->dwMask & DBIM_BKCOLOR)
386 pdbi->dwMask &= ~DBIM_BKCOLOR;
401 TRACE(
"SetSite called \n");
412 ERR(
"Could not get parent's window ! Status: %08lx\n",
hr);
482 *pClassID = CLSID_FileSearchBand;
550 hr =
AtlAdvise(pShellFolder, static_cast<IDispatch *>(
this), DIID_DSearchCommandEvents, &fAdviseCookie);
559 switch (dispIdMember)
571 pDispatch->Invoke(dispIdMember,
riid, lcid,
wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
576 hResult = pShellService->SetOwner(
NULL);
DBIM_BKCOLOR struct tagDESKBANDINFO DESKBANDINFO
virtual HRESULT STDMETHODCALLTYPE Invoke(DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
BOOL IsDialogMessage(LPMSG lpMsg)
#define IDC_SEARCH_FILENAME
virtual HRESULT STDMETHODCALLTYPE GetClassID(CLSID *pClassID)
#define memmove(s1, s2, n)
BOOL WINAPI TranslateMessage(_In_ const MSG *)
HDWP WINAPI BeginDeferWindowPos(_In_ int)
#define HRESULT_FROM_WIN32(x)
UINT IsDlgButtonChecked(int nIDButton) const
virtual HRESULT STDMETHODCALLTYPE Save(IStream *pStm, BOOL fClearDirty)
CComPtr< IAddressEditBox > m_AddressEditBox
HRESULT WINAPI AtlAdvise(IUnknown *pUnkCP, IUnknown *pUnk, const IID *iid, DWORD *pdw)
#define IDS_SEARCHINVALID
HRESULT CAddressEditBox_CreateInstance(REFIID riid, void **ppv)
#define HKEY_CURRENT_USER
HRESULT WINAPI IUnknown_OnFocusChangeIS(LPUNKNOWN lpUnknown, LPUNKNOWN pFocusObject, BOOL bFocus)
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
BOOL WINAPI SHGetPathFromIDListW(LPCITEMIDLIST pidl, LPWSTR pszPath)
LRESULT OnSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
BOOL SetWindowPos(HWND hWndInsertAfter, int x, int y, int cx, int cy, UINT nFlags)
#define DISPID_DOCUMENTCOMPLETE
virtual HRESULT STDMETHODCALLTYPE CloseDW(DWORD dwReserved)
DWORD WINAPI GetLastError(VOID)
#define IID_PPV_ARG(Itype, ppType)
HRESULT WINAPI IUnknown_GetWindow(IUnknown *lpUnknown, HWND *lphWnd)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
HRESULT WINAPI IUnknown_QueryService(IUnknown *, REFGUID, REFIID, LPVOID *)
#define DISPID_SEARCHABORT
STRSAFEAPI StringCchCatW(STRSAFE_LPWSTR pszDest, size_t cchDest, STRSAFE_LPCWSTR pszSrc)
BOOL GetAddressEditBoxPath(WCHAR *szPath)
BOOL IsChild(const HWND hWnd) const
LONG WINAPI RegCloseKey(HKEY hKey)
GLenum const GLfloat * params
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
#define IDC_SEARCH_BUTTON
virtual HRESULT STDMETHODCALLTYPE SetSite(IUnknown *pUnkSite)
DWORD WINAPI GetFileAttributesW(LPCWSTR lpFileName)
HRESULT WINAPI SHGetImageList(int iImageList, REFIID riid, void **ppv)
BOOL WINAPI EndDeferWindowPos(_In_ HDWP)
BOOL CheckDlgButton(int nIDButton, UINT nCheck)
BOOL GetWindowRect(LPRECT lpRect) const
#define DISPID_NAVIGATECOMPLETE2
#define DISPID_SEARCHCOMPLETE
HRESULT GetSearchResultsFolder(IShellBrowser **ppShellBrowser, HWND *pHwnd, IShellFolder **ppShellFolder)
#define CBEM_GETEDITCONTROL
HRESULT WINAPI IUnknown_GetClassID(IUnknown *lpUnknown, CLSID *clsid)
WCHAR szFileName[MAX_PATH]
virtual HRESULT STDMETHODCALLTYPE ShowDW(BOOL fShow)
#define FILE_ATTRIBUTE_DIRECTORY
virtual HRESULT STDMETHODCALLTYPE TranslateAcceleratorIO(LPMSG lpMsg)
virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames(REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
HRESULT WINAPI SHGetDesktopFolder(IShellFolder **psf)
#define CBEM_SETIMAGELIST
#define FAILED_UNEXPECTEDLY(hr)
INT WINAPI StringFromGUID2(REFGUID id, LPOLESTR str, INT cmax)
CComPtr< IUnknown > m_pSite
#define STDMETHODCALLTYPE
#define IDC_SEARCH_COMBOBOX
virtual HRESULT STDMETHODCALLTYPE GetSizeMax(ULARGE_INTEGER *pcbSize)
#define INVALID_FILE_ATTRIBUTES
#define CBEM_SETEXTENDEDSTYLE
virtual HRESULT STDMETHODCALLTYPE GetWindow(HWND *lphwnd)
BOOL ScreenToClient(LPPOINT lpPoint) const
#define CBES_EX_NOSIZELIMIT
LRESULT OnSearchButtonClicked(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
WINE_DEFAULT_DEBUG_CHANNEL(shellfind)
#define memcpy(s1, s2, n)
UINT GetDlgItemText(int nID, LPTSTR lpStr, int nMaxCount) const
virtual HRESULT STDMETHODCALLTYPE GetTypeInfo(UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
virtual HRESULT STDMETHODCALLTYPE GetBandInfo(DWORD dwBandID, DWORD dwViewMode, DESKBANDINFO *pdbi)
_In_ DWORD _Out_ _In_ WORD wFlags
_Check_return_ _CRTIMP int __cdecl wcscmp(_In_z_ const wchar_t *_Str1, _In_z_ const wchar_t *_Str2)
struct stdole::EXCEPINFO EXCEPINFO
static VARIANTARG static DISPID
BOOL ShowWindow(int nCmdShow)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
BOOL PostMessage(UINT message, WPARAM wParam=0, LPARAM lParam=0)
int WINAPI GetWindowTextW(HWND hWnd, LPWSTR lpString, int nMaxCount)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
virtual HRESULT STDMETHODCALLTYPE Load(IStream *pStm)
HRESULT WINAPI SHParseDisplayName(LPCWSTR pszName, IBindCtx *pbc, LPITEMIDLIST *ppidl, SFGAOF sfgaoIn, SFGAOF *psfgaoOut)
LRESULT OnSetFocus(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
virtual HRESULT STDMETHODCALLTYPE UIActivateIO(BOOL fActivate, LPMSG lpMsg)
_Check_return_ _CRTIMP _CONST_RETURN wchar_t *__cdecl wcspbrk(_In_z_ const wchar_t *_Str, _In_z_ const wchar_t *_Control)
void SetSearchInProgress(BOOL bInProgress)
HRESULT TrySubscribeToSearchEvents()
HWND SetParent(HWND hWndNewParent)
STRSAFEAPI StringCchLengthW(STRSAFE_LPCWSTR psz, size_t cchMax, size_t *pcchLength)
BOOL WINAPI PostMessageW(_In_opt_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
struct stdole::DISPPARAMS DISPPARAMS
#define IDC_SEARCH_STOP_BUTTON
LRESULT SendMessage(UINT message, WPARAM wParam=0, LPARAM lParam=0)
#define MAKEINTRESOURCEW(i)
#define IDC_SEARCH_HIDDEN
#define CBES_EX_CASESENSITIVE
#define SID_SShellBrowser
HDWP DeferWindowPos(HDWP hWinPosInfo, HWND hWndInsertAfter, int x, int y, int cx, int cy, UINT uFlags)
virtual HRESULT STDMETHODCALLTYPE ContextSensitiveHelp(BOOL fEnterMode)
STRSAFEAPI StringCbCopyW(STRSAFE_LPWSTR pszDest, size_t cbDest, STRSAFE_LPCWSTR pszSrc)
virtual HRESULT STDMETHODCALLTYPE ResizeBorderDW(const RECT *prcBorder, IUnknown *punkToolbarSite, BOOL fReserved)
LPVOID WINAPI CoTaskMemAlloc(SIZE_T size)
virtual HRESULT STDMETHODCALLTYPE IsDirty()
LRESULT OnInitDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL &bHandled)
virtual HRESULT STDMETHODCALLTYPE GetTypeInfoCount(UINT *pctinfo)
virtual HRESULT STDMETHODCALLTYPE HasFocusIO()
LRESULT OnStopButtonClicked(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL &bHandled)
virtual HRESULT STDMETHODCALLTYPE GetSite(REFIID riid, void **ppvSite)
#define SWP_NOOWNERZORDER