#include "wx/msw/gnuwin32/extra.h"
#endif
-#if defined(__WIN95__) && !((defined(__GNUWIN32_OLD__) || defined(__TWIN32__)) && !defined(__CYGWIN10__))
+#if defined(__WIN95__) && !(defined(__GNUWIN32_OLD__) && !defined(__CYGWIN10__))
#include <commctrl.h>
#endif
{
Init();
+ if ( (style & wxBORDER_MASK) == wxBORDER_DEFAULT )
+ style |= wxBORDER_SUNKEN;
+
if ( !CreateControl(parent, id, pos, size, style, validator, name) )
return false;
- DWORD wstyle = WS_VISIBLE | WS_CHILD | WS_TABSTOP |
- TVS_SHOWSELALWAYS;
-
- if ( m_windowStyle & wxCLIP_SIBLINGS )
- wstyle |= WS_CLIPSIBLINGS;
+ DWORD exStyle = 0;
+ DWORD wstyle = MSWGetStyle(m_windowStyle, & exStyle);
+ wstyle |= WS_TABSTOP | TVS_SHOWSELALWAYS;
if ((m_windowStyle & wxTR_NO_LINES) == 0)
wstyle |= TVS_HASLINES;
bool textOnly) const
{
RECT rc;
+
+ // Virtual root items have no bounding rectangle
+ if ( IS_VIRTUAL_ROOT(item) )
+ {
+ return false;
+ }
+
if ( TreeView_GetItemRect(GetHwnd(), HITEM(item),
&rc, textOnly) )
{
// similar to the ones from a "real" WM_KEYDOWN so that
// CreateKeyEvent() works correctly
WXLPARAM lParam =
- (::GetKeyState(VK_MENU) & 0x100 ? KF_ALTDOWN : 0) << 16;
+// (::GetKeyState(VK_MENU) & 0x100 ? KF_ALTDOWN : 0) << 16;
+ // Returns different negative values on WinME and WinNT,
+ // so simply test for negative value.
+ (::GetKeyState(VK_MENU) < 0 ? KF_ALTDOWN : 0) << 16;
WXWPARAM wParam = info->wVKey;