void psNetConnection::CheckLinkDead (csTicks currenttime) { if (currenttime - server->lastRecvPacketTime > LINKDEAD_TIMEOUT) { if (server->heartbeat < LINKDEAD_ATTEMPTS) { server->heartbeat++; psHeartBeatMsg heart((uint32_t)0); SendMessage(heart.msg); // This should cause an ack to update the timestamp } else { // Simulate message to self to inform user of quitting. psSystemMessage quit(0,MSG_INFO,"Server is not responding, try again in 5 minutes. Exiting PlaneShift..."); HandleCompletedMessage(quit.msg, server, &server->addr,NULL); csSleep(1000); // If no packets received ever, then use -1 to indicate cannot connect psDisconnectMessage msgb(0,server->pcknumin?0:-1, server->pcknumin? "Server is not responding, try again in 5 minutes. " "Check http://laanx.fragnetics.com/ for status.": "The server is not running or is not reachable. " "Please check http://laanx.fragnetics.com/ or forums for more info."); HandleCompletedMessage(msgb.msg, server, &server->addr,NULL); } } else { server->heartbeat = 0; } }
void ASSDrawFrame::_Clear() { wxMessageDialog msgb(this, _T("Clear the canvas and create a new drawing?"), _T("Confirmation"), wxOK | wxCANCEL | wxICON_QUESTION ); if (msgb.ShowModal() == wxID_OK) { m_canvas->RefreshUndocmds(); m_canvas->AddUndo(_T("Clear canvas")); m_canvas->ResetEngine(true); wxSize siz = m_canvas->GetClientSize(); m_canvas->ChangeZoomLevelTo(DEFAULT_SCALE, wxPoint(siz.x / 2, siz.y / 2)); m_canvas->MoveCanvasOriginTo(siz.x / 2, siz.y / 2); UpdateUndoRedoMenu(); m_canvas->RefreshDisplay(); } }