//=====================================================================================
bool Frame::TogglePanel( const wxString& panelTitle )
{
	wxAuiPaneInfo* foundPaneInfo = nullptr;
	if( IsPanelInUse( panelTitle, &foundPaneInfo ) )
	{
		Panel* panel = ( Panel* )foundPaneInfo->window;
		auiManager->DetachPane( panel );
		panel->Destroy();
		auiManager->Update();
	}
	else
	{
		Panel* panel = nullptr;

		if( panelTitle == "Canvas Panel" )
			panel = new CanvasPanel();
		else if( panelTitle == "Score Panel" )
			panel = new ScorePanel();
		else if( panelTitle == "Winner Panel" )
			panel = new WinnerPanel();
		else if( panelTitle == "Chat Panel" )
			panel = new ChatPanel();

		if( panel )
		{
			panel->Create( this );
			panel->CreateControls();

			wxAuiPaneInfo paneInfo;
			panel->SetupPaneInfo( paneInfo );
			paneInfo.CloseButton( true );
			paneInfo.Caption( panelTitle ).Name( panelTitle );
			paneInfo.Dockable().Show();
			paneInfo.DestroyOnClose();

			auiManager->AddPane( panel, paneInfo );
			auiManager->Update();
		}
	}

	return true;
}