void BrushPalettePanel::OnSwitchingPage(wxChoicebookEvent& event) { event.Skip(); if(!choicebook) { return; } BrushPanel* old_panel = dynamic_cast<BrushPanel*>(choicebook->GetCurrentPage()); if(old_panel) { old_panel->OnSwitchOut(); for(ToolBarList::iterator iter = tool_bars.begin(); iter != tool_bars.end(); ++iter) { Brush* tmp = (*iter)->GetSelectedBrush(); if(tmp) { remembered_brushes[old_panel] = tmp; } } } wxWindow* page = choicebook->GetPage(event.GetSelection()); BrushPanel* panel = dynamic_cast<BrushPanel*>(page); if(panel) { panel->OnSwitchIn(); for(ToolBarList::iterator iter = tool_bars.begin(); iter != tool_bars.end(); ++iter) { (*iter)->SelectBrush(remembered_brushes[panel]); } } }
void BrushPalettePanel::LoadCurrentContents() { wxWindow* page = choicebook->GetCurrentPage(); BrushPanel* panel = dynamic_cast<BrushPanel*>(page); if(panel) { panel->OnSwitchIn(); } PalettePanel::LoadCurrentContents(); }