Disable non-standard notebook styles if CommCtl doesn't support them.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@20938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Julian Smart
2003-06-05 13:29:52 +00:00
parent 152ce11a13
commit 73e90c7137
2 changed files with 17 additions and 0 deletions

View File

@@ -240,6 +240,8 @@ wxMSW:
enables XP theme engine code, and wxUSE_UXTHEME_AUTO tells enables XP theme engine code, and wxUSE_UXTHEME_AUTO tells
wxWindows to use the theme tab colour for control backgrounds. wxWindows to use the theme tab colour for control backgrounds.
Proper XP theme support is planned for 2.6 Proper XP theme support is planned for 2.6
- disable wxNB_RIGHT, wxNB_LEFT, wxNB_BOTTOM notebook styles
if the version of CommCtl doesn't support it (XP)
wxMotif: wxMotif:

View File

@@ -32,6 +32,7 @@
#include "wx/event.h" #include "wx/event.h"
#include "wx/control.h" #include "wx/control.h"
#include "wx/notebook.h" #include "wx/notebook.h"
#include "wx/app.h"
#include "wx/msw/private.h" #include "wx/msw/private.h"
@@ -158,6 +159,20 @@ bool wxNotebook::Create(wxWindow *parent,
long style, long style,
const wxString& name) const wxString& name)
{ {
// Does ComCtl32 support non-top tabs?
int verComCtl32 = wxApp::GetComCtl32Version();
if ( verComCtl32 < 470 || verComCtl32 >= 600 )
{
if (style & wxNB_BOTTOM)
style &= ~wxNB_BOTTOM;
if (style & wxNB_LEFT)
style &= ~wxNB_LEFT;
if (style & wxNB_RIGHT)
style &= ~wxNB_RIGHT;
}
// base init // base init
if ( !CreateControl(parent, id, pos, size, style, wxDefaultValidator, name) ) if ( !CreateControl(parent, id, pos, size, style, wxDefaultValidator, name) )
return FALSE; return FALSE;