Esempio n. 1
0
void CState::SetServer(const CServer* server)
{
	if (m_pServer)
	{
		SetRemoteDir(0);
		delete m_pServer;
	}

	if (server)
		m_pServer = new CServer(*server);
	else
	{
		if (m_pServer)
			m_pMainFrame->SetTitle(_T("FileZilla"));
		m_pServer = 0;
	}
}
Esempio n. 2
0
void CState::SetServer(const CServer* server)
{
	if (m_pServer)
	{
		if (server && *server == *m_pServer &&
			server->GetName() == m_pServer->GetName() &&
			server->MaximumMultipleConnections() == m_pServer->MaximumMultipleConnections())
		{
			// Nothing changes
			return;
		}

		SetRemoteDir(0);
		delete m_pServer;
		delete m_pCertificate;
		m_pCertificate = 0;
		delete m_pSftpEncryptionInfo;
		m_pSftpEncryptionInfo = 0;
	}
	if (server)
	{
		if (m_last_server != *server)
			m_last_path.Clear();
		m_last_server = *server;

		m_pServer = new CServer(*server);

		const wxString& name = server->GetName();
		if (!name.IsEmpty())
			m_title = name + _T(" - ") + server->FormatServer();
		else
			m_title = server->FormatServer();
	}
	else
	{
		m_pServer = 0;
		m_title = _("Not connected");
	}

	m_successful_connect = false;

	NotifyHandlers(STATECHANGE_SERVER);
}