// prepare Startmenu, but hide it for now
_startMenuRoot = GET_WINDOW(StartMenuRoot, StartMenuRoot::Create(_hwndStartButton, STARTMENUROOT_ICON_SIZE));
- _startMenuRoot->_hwndParent = _hwndStartButton;
+ _startMenuRoot->_hwndStartButton = _hwndStartButton;
return 0;
}
StartMenuRoot::StartMenuRoot(HWND hwnd, const StartMenuRootCreateInfo& info)
- : super(hwnd, info._icon_size)
+ : super(hwnd, info._icon_size),
+ _hwndStartButton(0)
{
#ifndef __MINGW32__ // SHRestricted() missing in MinGW (as of 29.10.2003)
if (!g_Globals._SHRestricted || !SHRestricted(REST_NOCOMMONGROUPS))
// recalculate start menu root position
RECT rect;
- CalculateStartPos(_hwndParent, rect, _icon_size);
+ CalculateStartPos(_hwndStartButton, rect, _icon_size);
SetWindowPos(hwnd, 0, rect.left, rect.top, rect.right-rect.left, rect.bottom-rect.top, 0);
typedef StartMenuHandler super;
StartMenuRoot(HWND hwnd, const StartMenuRootCreateInfo& info);
- HWND _hwndParent;
+
static HWND Create(HWND hwndDesktopBar, int icon_size);
void TrackStartmenu();
+ HWND _hwndStartButton;
+
protected:
LRESULT Init(LPCREATESTRUCT pcs);
LRESULT WndProc(UINT nmsg, WPARAM wparam, LPARAM lparam);