X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c42404a58eac2c9eb0557565a471a794c387a715..8e0e4b1b644fd58825f7c4c80775d9507020ffac:/src/msw/notebook.cpp diff --git a/src/msw/notebook.cpp b/src/msw/notebook.cpp index b8ac425b2e..ff201a3ec9 100644 --- a/src/msw/notebook.cpp +++ b/src/msw/notebook.cpp @@ -46,7 +46,7 @@ #endif #endif -#if defined(__WIN95__) && !(defined(__GNUWIN32_OLD__) || defined(__TWIN32__)) +#if defined(__WIN95__) && !((defined(__GNUWIN32_OLD__) || defined(__TWIN32__)) && !defined(__CYGWIN10__)) #include #endif @@ -81,6 +81,9 @@ // event table // ---------------------------------------------------------------------------- +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGED) +DEFINE_EVENT_TYPE(wxEVT_COMMAND_NOTEBOOK_PAGE_CHANGING) + BEGIN_EVENT_TABLE(wxNotebook, wxControl) EVT_NOTEBOOK_PAGE_CHANGED(-1, wxNotebook::OnSelChange) @@ -106,6 +109,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxNotebookEvent, wxNotifyEvent) void wxNotebook::Init() { m_pImageList = NULL; + m_bOwnsImageList = FALSE; m_nSelection = -1; } @@ -149,6 +153,8 @@ bool wxNotebook::Create(wxWindow *parent, long tabStyle = WS_CHILD | WS_VISIBLE | WS_TABSTOP | TCS_TABS; + if ( m_windowStyle & wxCLIP_SIBLINGS ) + tabStyle |= WS_CLIPSIBLINGS; if (m_windowStyle & wxCLIP_CHILDREN) tabStyle |= WS_CLIPCHILDREN; if ( m_windowStyle & wxTC_MULTILINE ) @@ -188,6 +194,7 @@ bool wxNotebook::Create(wxWindow *parent, // dtor wxNotebook::~wxNotebook() { + if (m_bOwnsImageList) delete m_pImageList; } // ---------------------------------------------------------------------------- @@ -276,10 +283,18 @@ bool wxNotebook::SetPageImage(int nPage, int nImage) void wxNotebook::SetImageList(wxImageList* imageList) { + if (m_bOwnsImageList) delete m_pImageList; m_pImageList = imageList; + m_bOwnsImageList = FALSE; TabCtrl_SetImageList(m_hwnd, (HIMAGELIST)imageList->GetHIMAGELIST()); } +void wxNotebook::AssignImageList(wxImageList* imageList) +{ + SetImageList(imageList); + m_bOwnsImageList = TRUE; +} + // ---------------------------------------------------------------------------- // wxNotebook size settings // ----------------------------------------------------------------------------