Ticket #10848: wxAuiNotebook.patch

File wxAuiNotebook.patch, 1.2 KB (added by jens, 10 years ago)
  • src/aui/auibook.cpp

     
    44434443
    44444444    int currentSelection = GetSelection();
    44454445
    4446     if (forward)
     4446    wxAuiTabCtrl* tabCtrl = 0;
     4447    int idx = -1;
     4448
     4449    if(!FindTab(GetPage(currentSelection), &tabCtrl, &idx))
     4450        return;
     4451
     4452    if(!tabCtrl || idx < 0)
     4453        return;
     4454
     4455    wxWindow* page = 0;
     4456    size_t maxPages = tabCtrl->GetPageCount();
     4457
     4458    forward?idx++:idx--;
     4459
     4460    if(idx < 0)
     4461        idx = maxPages - 1;
     4462
     4463    if ((size_t)idx < maxPages)
     4464        page = tabCtrl->GetPage(idx).window;
     4465
     4466    if (!page && maxPages > 0)
     4467        page = tabCtrl->GetPage(0).window;
     4468
     4469    if(page)
    44474470    {
    4448         if (currentSelection == (int) (GetPageCount() - 1))
    4449             return;
    4450         else if (currentSelection == -1)
    4451             currentSelection = 0;
    4452         else
    4453             currentSelection ++;
     4471        currentSelection = GetPageIndex(page);
     4472        SetSelection(currentSelection);
    44544473    }
    4455     else
    4456     {
    4457         if (currentSelection <= 0)
    4458             return;
    4459         else
    4460             currentSelection --;
    4461     }
    4462 
    4463     SetSelection(currentSelection);
    44644474}
    44654475
    44664476// Shows the window menu