84 hResult = menuWinEventHandler->IsWindowOwner(
hWnd);
88 return menuWinEventHandler->OnWinEvent(
hWnd, uMsg,
wParam,
lParam, theResult);
98 hResult = dockingWindow->ShowDW(fShow);
120 public IDockingWindowSite,
121 public IInputObjectSite,
237 DBIM_INTEGRAL | DBIM_MAXSIZE | DBIM_MINSIZE;
328 if (
IsEqualIID(*pguidCmdGroup, CGID_DeskBand))
358 if (
IsEqualIID(guidService, SID_SMenuBandParent))
398 *ppsfFavorites =
NULL;
406 WARN(
"Failed to get the USER favorites folder. Trying to run with just the COMMON one.\n");
412 TRACE(
"COMMON favorites obtained.\n");
413 *ppidl = pidlCommonFavorites;
421 WARN(
"Failed to get the COMMON favorites folder. Will use only the USER contents.\n");
422 *ppidl = pidlCommonFavorites;
427 TRACE(
"Both COMMON and USER favorites folders obtained, merging them...\n");
440 *ppsfFavorites = psfUserFavorites.
Detach();
441 *ppidl = pidlUserFavorites;
442 ILFree(pidlCommonFavorites);
446 hr = pasf->AddNameSpace(
NULL, psfUserFavorites, pidlUserFavorites, 0xFF00);
450 hr = pasf->AddNameSpace(
NULL, psfCommonFavorites, pidlCommonFavorites, 0);
459 ILFree(pidlCommonFavorites);
460 ILFree(pidlUserFavorites);
473 HMENU favoritesHMenu;
477 static const TCHAR szFavoritesKey[] =
478 _T(
"Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\MenuOrder\\Favorites");
489 hResult = parentMenu->GetMenu(&parentHMenu, &ownerWindow,
NULL);
493 if (favoritesHMenu ==
NULL)
512 hResult = newMenu->SetShellFolder(favoritesFolder, favoritesPIDL, orderRegKey, SMSET_BOTTOM | SMINIT_CACHED | SMINV_ID);
522 hResult =
fFavoritesMenu->SetMenu(favoritesHMenu, ownerWindow, SMSET_TOP | SMSET_DONTOWN);
561 case SMC_GETSFOBJECT:
569 case SMC_SFSELECTITEM:
582 case SMC_DEFAULTICON:
586 case SMC_CHEVRONEXPAND:
588 case SMC_DISPLAYCHEVRONTIP:
590 case SMC_SETSFOBJECT:
592 case SMC_SHCHANGENOTIFY:
594 case SMC_CHEVRONGETTIP:
596 case SMC_SFDDRESTRICTED:
634 RECT availableBorderSpace;
639 hResult = dockingWindowSite->GetBorderDW(
static_cast<IDockingWindow *
>(
this), &availableBorderSpace);
643 if (maxHeight && availableBorderSpace.
bottom - availableBorderSpace.
top > maxHeight)
645 availableBorderSpace.
bottom = availableBorderSpace.
top + maxHeight;
672 hResult = menubar->Initialize(
callback, -1, ANCESTORDEFAULT, SMINIT_HORIZONTAL | SMINIT_TOPLEVEL);
698 hResult = menubar->SetMenu(hMenuBar, ownerWindow, SMSET_DONTOWN);
707 *pMenuBar = menubar.
Detach();
729 rebarBandInfo.
cbSize =
sizeof(rebarBandInfo);
732 for (
INT x = 0;
x < bandCount;
x++)
735 dockSite =
reinterpret_cast<CDockSite *
>(rebarBandInfo.lParam);
736 if (dockSite !=
NULL)
774 commandList[0].
cmdID = 0x1c;
775 commandList[1].
cmdID = 0x1d;
776 commandList[2].
cmdID = 0x1e;
777 commandList[3].
cmdID = 0x23;
964 RECT neededBorderSpace;
965 RECT availableBorderSpace = *prcBorder;
972 neededBorderSpace.
left = 0;
973 neededBorderSpace.
top = availableBorderSpace.
bottom - availableBorderSpace.
top;
975 neededBorderSpace.
top += 3;
976 neededBorderSpace.
right = 0;
977 neededBorderSpace.
bottom = 0;
985 hResult = dockingWindowSite->RequestBorderSpaceDW(
static_cast<IDockingWindow *
>(
this), &neededBorderSpace);
989 hResult = dockingWindowSite->SetBorderSpaceDW(
static_cast<IDockingWindow *
>(
this), &neededBorderSpace);
998 if (pClassID ==
NULL)
1000 *pClassID = CLSID_InternetToolbar;
1104 if (
IsEqualIID(*pguidCmdGroup, CGID_PrivCITCommands))
1108 switch (prgCmds->
cmdID)
1157 if (
IsEqualIID(*pguidCmdGroup, CGID_PrivCITCommands))
1205 switch(dispIdMember)
1214 if (pDispParams->cArgs != 2)
1219 V_I4(&pDispParams->rgvarg[1]));
1263 reinterpret_cast<WPARAM>(param10),
reinterpret_cast<LPARAM>(param14));
1277 if (theState ==
NULL)
1334 if (pUnkSite ==
NULL)
1347 if (ownerWindow ==
NULL)
1357 if (dockContainer ==
NULL)
1367 0, 0, 700, 60, dockContainer,
NULL, _AtlBaseModule.GetModuleInstance(),
NULL);
1380 if (ppvSite ==
NULL)
1383 return fSite->QueryInterface(
riid, ppvSite);
1505 hResult = webBrowser->GoBack();
1517 hResult = webBrowser->GoForward();
1567 wchar_t templateString[200];
1578 switch (notifyInfo->
iItem)
1583 hResult = browserService->GetTravelLog(&travelLog);
1584 hResult = travelLog->InsertMenuEntries(browserService, newMenu, 0, 1, 9,
TLMENUF_BACK);
1585 commandInfo.
cmdID = 0x1d;
1588 travelLog->CountEntries(browserService) > 1)
1592 if (
LoadStringW(_AtlBaseModule.GetResourceInstance(),
1593 IDS_HISTORYTEXT, templateString,
sizeof(templateString) /
sizeof(
wchar_t)) == 0)
1594 StringCbCopyW(templateString,
sizeof(templateString),
L"&History\tCtrl+H");
1599 params.rcExclude = bounds;
1606 Exec(&CGID_Explorer, 0x1d, 2, &parmIn,
NULL);
1608 else if (selectedItem != 0)
1609 hResult = travelLog->Travel(browserService, -selectedItem);
1615 hResult = browserService->GetTravelLog(&travelLog);
1616 hResult = travelLog->InsertMenuEntries(browserService, newMenu, 0, 1, 9,
TLMENUF_FORE);
1617 commandInfo.
cmdID = 0x1d;
1620 travelLog->CountEntries(browserService) > 1)
1624 if (
LoadStringW(_AtlBaseModule.GetResourceInstance(),
1625 IDS_HISTORYTEXT, templateString,
sizeof(templateString) /
sizeof(
wchar_t)) == 0)
1626 StringCbCopyW(templateString,
sizeof(templateString),
L"&History\tCtrl+H");
1631 params.rcExclude = bounds;
1638 Exec(&CGID_Explorer, 0x1d, 2, &parmIn,
NULL);
1640 else if (selectedItem != 0)
1641 hResult = travelLog->Travel(browserService, selectedItem);
1650 V_INTREF(&inValue) =
reinterpret_cast<INT *
>(&bounds);
1672 HMENU contextMenuBar;
1674 POINT clickLocation;
1682 hitTestInfo.
pt = clickLocation;
1685 if (hitTestInfo.
iBand == -1)
1687 rebarBandInfo.
cbSize =
sizeof(rebarBandInfo);
1690 bandID = rebarBandInfo.
wID;
1728 clickLocation.
x, clickLocation.
y, 0, m_hWnd,
NULL);
1782 wchar_t tempString[300];
1796 hResult = browserService->GetTravelLog(&travelLog);
1797 hResult = travelLog->GetToolTipText(browserService,
1799 0, tempString, 299);
1808 wcsncpy (pTTTW->szText, tempString,
sizeof(pTTTW->szText) /
sizeof(
wchar_t));
1823 bHandled = hResult ==
S_OK;
1829 NMHDR *notifyHeader;
1837 bHandled = hResult ==
S_OK;
1917 hr = menuWinEventHandler->OnWinEvent(hwndMenu, uMsg,
wParam,
lParam, &lres);
HRESULT WINAPI SHGetDesktopFolder(IShellFolder **psf)
#define STDMETHODCALLTYPE
HRESULT CAddressBand_CreateInstance(REFIID riid, void **ppv)
HRESULT CBrandBand_CreateInstance(REFIID riid, void **ppv)
HRESULT CBandProxy_CreateInstance(REFIID riid, void **ppv)
HRESULT CToolsBand_CreateInstance(REFIID riid, void **ppv)
CInternetToolbar * fToolbar
virtual HRESULT STDMETHODCALLTYPE GetWindow(HWND *lphwnd)
CComPtr< IUnknown > fContainedBand
virtual HRESULT STDMETHODCALLTYPE OnFocusChangeIS(IUnknown *punkObj, BOOL fSetFocus)
HRESULT GetRBBandInfo(REBARBANDINFOW &bandInfo)
virtual HRESULT STDMETHODCALLTYPE SetBorderSpaceDW(IUnknown *punkObj, LPCBORDERWIDTHS pbw)
virtual HRESULT STDMETHODCALLTYPE QueryService(REFGUID guidService, REFIID riid, void **ppvObject)
virtual HRESULT STDMETHODCALLTYPE GetBorderDW(IUnknown *punkObj, LPRECT prcBorder)
HRESULT Initialize(IUnknown *containedBand, CInternetToolbar *browser, HWND hwnd, int bandID, int flags)
DESKBANDINFO fDeskBandInfo
virtual HRESULT STDMETHODCALLTYPE QueryStatus(const GUID *pguidCmdGroup, ULONG cCmds, OLECMD prgCmds[], OLECMDTEXT *pCmdText)
virtual HRESULT STDMETHODCALLTYPE Exec(const GUID *pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
virtual HRESULT STDMETHODCALLTYPE ContextSensitiveHelp(BOOL fEnterMode)
virtual HRESULT STDMETHODCALLTYPE RequestBorderSpaceDW(IUnknown *punkObj, LPCBORDERWIDTHS pbw)
HRESULT WINAPI AtlAdvise(IUnknown *pUnkCP, IUnknown *pUnk, const IID *iid, DWORD *pdw)
HRESULT WINAPI AtlUnadvise(IUnknown *pUnkCP, const IID *iid, DWORD dw)
#define IDM_TOOLBARS_LOCKTOOLBARS
#define IDM_GOTO_UPONELEVEL
#define IDM_TOOLBARS_TEXTLABELS
#define IDM_TOOLBARS_STANDARDBUTTONS
#define IDM_EXPLORERBAR_HISTORY
#define IDM_CABINET_CONTEXTMENU
#define IDM_TOOLBARS_GOBUTTON
#define IDM_FAVORITES_EMPTY
#define IDM_TOOLBARS_CUSTOMIZE
#define IDM_TOOLBARS_ADDRESSBAR
#define IDM_TOOLBARS_LINKSBAR
#define BWM_GETSETTINGSPTR
#define FAILED_UNEXPECTEDLY(hr)
HRESULT WINAPI SHGetSpecialFolderLocation(HWND hwndOwner, INT nFolder, LPITEMIDLIST *ppidl)
HRESULT WINAPI IUnknown_TranslateAcceleratorIO(IUnknown *lpUnknown, LPMSG lpMsg)
HRESULT WINAPI IUnknown_QueryStatus(IUnknown *lpUnknown, REFGUID pguidCmdGroup, ULONG cCmds, OLECMD *prgCmds, OLECMDTEXT *pCmdText)
DWORD WINAPI SHCheckMenuItem(HMENU hMenu, UINT uID, BOOL bCheck)
HRESULT WINAPI IUnknown_HasFocusIO(IUnknown *lpUnknown)
UINT WINAPI SHEnableMenuItem(HMENU hMenu, UINT wItemID, BOOL bEnable)
HRESULT WINAPI IUnknown_QueryService(IUnknown *, REFGUID, REFIID, LPVOID *)
HRESULT WINAPI IUnknown_Exec(IUnknown *lpUnknown, REFGUID pguidCmdGroup, DWORD nCmdID, DWORD nCmdexecopt, VARIANT *pvaIn, VARIANT *pvaOut)
HRESULT WINAPI SHInvokeDefaultCommand(HWND hWnd, IShellFolder *lpFolder, LPCITEMIDLIST lpApidl)
HWND WINAPI SHCreateWorkerWindowW(WNDPROC wndProc, HWND hWndParent, DWORD dwExStyle, DWORD dwStyle, HMENU hMenu, LONG_PTR wnd_extra)
HRESULT WINAPI IUnknown_GetWindow(IUnknown *lpUnknown, HWND *lphWnd)
HRESULT WINAPI IUnknown_SetSite(IUnknown *obj, IUnknown *site)
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
GLint GLint GLint GLint GLint x
GLenum const GLfloat * params
HRESULT QueryInterface([in] REFIID riid, [out, iid_is(riid)] void **ppvObject)
static const struct bandInfoStruct bandInfo[9]
#define COM_INTERFACE_ENTRY_IID(iid, x)
static IPrintDialogCallback callback
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
static VARIANTARG static DISPID
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
const GUID IID_IOleWindow
void WINAPI ILFree(LPITEMIDLIST pidl)
struct tagREBARBANDINFOW REBARBANDINFOW
#define CCS_NOPARENTALIGN
#define RBBS_GRIPPERALWAYS
#define RBBS_VARIABLEHEIGHT
#define IsEqualIID(riid1, riid2)
_CRTIMP wchar_t *__cdecl wcsncpy(wchar_t *_Dest, const wchar_t *_Source, size_t _Count)
static __inline const char * wine_dbgstr_guid(const GUID *id)
#define SID_SShellBrowser
#define CSIDL_COMMON_FAVORITES
#define FCIDM_MENU_FAVORITES
#define FCIDM_SHVIEW_AUTOARRANGE
ITEMIDLIST UNALIGNED * LPITEMIDLIST
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
STRSAFEAPI StringCbCopyW(STRSAFE_LPWSTR pszDest, size_t cbDest, STRSAFE_LPCWSTR pszSrc)
#define ITID_LINKSBANDSHOWN
#define ITID_TOOLBARBANDSHOWN
#define ITBBID_ADDRESSBAND
#define ITID_AUTOHIDEENABLED
#define ITID_MENUBANDSHOWN
#define ITID_CUSTOMIZEENABLED
#define ITID_ADDRESSBANDSHOWN
#define ITID_TOOLBARLOCKED
#define DISPID_NAVIGATECOMPLETE2
#define DISPID_BEFORENAVIGATE
#define DISPID_COMMANDSTATECHANGE
#define DISPID_DOWNLOADCOMPLETE
#define DISPID_DOWNLOADBEGIN
#define DISPID_DOCUMENTCOMPLETE
_In_ PSID _Out_writes_to_opt_ cchName LPSTR _Inout_ LPDWORD cchName
_In_ DWORD _Out_ _In_ WORD wFlags
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
#define SubclassWindow(hwnd, lpfn)
#define HKEY_CURRENT_USER
HWND WINAPI SetCapture(_In_ HWND hWnd)
HMENU WINAPI CreatePopupMenu(void)
BOOL WINAPI ReleaseCapture(void)
DWORD WINAPI GetMessagePos(void)
BOOL WINAPI PostMessageW(_In_opt_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
#define WS_EX_RIGHTSCROLLBAR
BOOL WINAPI GetWindowRect(_In_ HWND, _Out_ LPRECT)
int WINAPI LoadStringW(_In_opt_ HINSTANCE hInstance, _In_ UINT uID, _Out_writes_to_(cchBufferMax, return+1) LPWSTR lpBuffer, _In_ int cchBufferMax)
BOOL WINAPI SetWindowPos(_In_ HWND, _In_opt_ HWND, _In_ int, _In_ int, _In_ int, _In_ int, _In_ UINT)
BOOL WINAPI DeleteMenu(_In_ HMENU, _In_ UINT, _In_ UINT)
HCURSOR WINAPI SetCursor(_In_opt_ HCURSOR)
BOOL WINAPI TrackPopupMenuEx(_In_ HMENU, _In_ UINT, _In_ int, _In_ int, _In_ HWND, _In_opt_ LPTPMPARAMS)
int WINAPI MapWindowPoints(_In_opt_ HWND hWndFrom, _In_opt_ HWND hWndTo, _Inout_updates_(cPoints) LPPOINT lpPoints, _In_ UINT cPoints)
HMENU WINAPI GetSubMenu(_In_ HMENU, _In_ int)
HWND WINAPI GetParent(_In_ HWND)
BOOL WINAPI DestroyMenu(_In_ HMENU)
#define SWP_NOOWNERZORDER
int WINAPI GetDlgCtrlID(_In_ HWND)
BOOL WINAPI TrackPopupMenu(_In_ HMENU, _In_ UINT, _In_ int, _In_ int, _Reserved_ int, _In_ HWND, _Reserved_ LPCRECT)
BOOL WINAPI DestroyWindow(_In_ HWND)
LRESULT WINAPI SendMessageW(_In_ HWND, _In_ UINT, _In_ WPARAM, _In_ LPARAM)
BOOL WINAPI AppendMenuW(_In_ HMENU, _In_ UINT, _In_ UINT_PTR, _In_opt_ LPCWSTR)
BOOL WINAPI ScreenToClient(_In_ HWND, _Inout_ LPPOINT)
#define IID_PPV_ARG(Itype, ppType)