int wxAuiDefaultTabArt::ShowDropDown(wxWindow* wnd,
const wxAuiNotebookPageArray& pages,
- int active_idx)
+ int /*active_idx*/)
{
wxMenu menuPopup;
if (caption.IsEmpty())
caption = wxT(" ");
- menuPopup.AppendCheckItem(1000+i, caption);
- }
-
- if (active_idx != -1)
- {
- menuPopup.Check(1000+active_idx, true);
+ wxMenuItem* item = new wxMenuItem(NULL, 1000+i, caption);
+ if (page.bitmap.IsOk())
+ item->SetBitmap(page.bitmap);
+ menuPopup.Append(item);
}
// find out where to put the popup menu of window items
return false;
wxAuiTabContainerButton* btn = NULL;
- if (ButtonHitTest(x, y, &btn))
+ if (ButtonHitTest(x, y, &btn) && !(btn->cur_state & wxAUI_BUTTON_STATE_DISABLED))
{
if (m_buttons.Index(*btn) != wxNOT_FOUND)
return false;
{
wxAuiTabContainerButton& button = m_buttons.Item(i);
if (button.rect.Contains(x,y) &&
- !(button.cur_state & (wxAUI_BUTTON_STATE_HIDDEN |
- wxAUI_BUTTON_STATE_DISABLED)))
+ !(button.cur_state & wxAUI_BUTTON_STATE_HIDDEN ))
{
if (hit)
*hit = &button;
{
// make sure we're still clicking the button
wxAuiTabContainerButton* button = NULL;
- if (!ButtonHitTest(evt.m_x, evt.m_y, &button))
+ if (!ButtonHitTest(evt.m_x, evt.m_y, &button) ||
+ button->cur_state & wxAUI_BUTTON_STATE_DISABLED)
return;
if (button != m_pressed_button)
// check if the mouse is hovering above a button
wxAuiTabContainerButton* button;
- if (ButtonHitTest(pos.x, pos.y, &button))
+ if (ButtonHitTest(pos.x, pos.y, &button) && !(button->cur_state & wxAUI_BUTTON_STATE_DISABLED))
{
if (m_hover_button && button != m_hover_button)
{
void wxAuiNotebook::OnChildFocusNotebook(wxChildFocusEvent& evt)
{
+ evt.Skip();
+
// if we're dragging a tab, don't change the current selection.
// This code prevents a bug that used to happen when the hint window
// was hidden. In the bug, the focus would return to the notebook