mirror of https://github.com/BOINC/boinc.git
*** empty log message ***
svn path=/trunk/boinc/; revision=8961
This commit is contained in:
parent
d049169dba
commit
ac8986b80a
|
@ -13970,3 +13970,18 @@ David 26 Nov 2005
|
|||
|
||||
html/user/
|
||||
lookup_account.php
|
||||
|
||||
Rom 26 Nov 2005
|
||||
- Bug Fix: Don't treat various forms of the local computer name as a
|
||||
remote machine.
|
||||
- Bug Fix: When any form of the local computer name is used
|
||||
prepopulate the password field in the select computer dialog.
|
||||
- Bug Fix: On connection failed messages provide an easy way to
|
||||
retry the connection attempt.
|
||||
|
||||
clientgui/
|
||||
BOINCTaskBar.cpp
|
||||
DlgSelectComputer.cpp
|
||||
MainDocument.cpp, .h
|
||||
MainFrame.cpp, .h
|
||||
ViewWork.cpp
|
||||
|
|
|
@ -258,49 +258,50 @@ void CTaskBarIcon::OnMouseMove(wxTaskBarIconEvent& WXUNUSED(event)) {
|
|||
wxASSERT(pDoc);
|
||||
wxASSERT(wxDynamicCast(pDoc, CMainDocument));
|
||||
|
||||
|
||||
pDoc->GetConnectedComputerName(strMachineName);
|
||||
if (strMachineName.empty()) {
|
||||
strTitle = strTitle + wxT(" - (localhost)");
|
||||
} else {
|
||||
if (pDoc->IsConnected()) {
|
||||
pDoc->GetConnectedComputerName(strMachineName);
|
||||
strTitle = strTitle + wxT(" - (") + strMachineName + wxT(")");
|
||||
}
|
||||
|
||||
pDoc->GetActivityState(bActivitiesSuspended, bNetworkSuspended);
|
||||
if (bActivitiesSuspended) {
|
||||
strMessage += _("BOINC is currently suspended...\n");
|
||||
}
|
||||
|
||||
if (bNetworkSuspended) {
|
||||
strMessage += _("BOINC networking is currently suspended...\n");
|
||||
}
|
||||
|
||||
if (strMessage.Length() > 0) {
|
||||
strMessage += wxT("\n");
|
||||
}
|
||||
|
||||
iResultCount = pDoc->results.results.size();
|
||||
for (iIndex = 0; iIndex < iResultCount; iIndex++) {
|
||||
RESULT* result = wxGetApp().GetDocument()->result(iIndex);
|
||||
RESULT* state_result = NULL;
|
||||
std::string project_name;
|
||||
|
||||
bIsDownloaded = (result->state == RESULT_FILES_DOWNLOADED);
|
||||
bIsActive = result->active_task;
|
||||
bIsExecuting = (result->scheduler_state == CPU_SCHED_SCHEDULED);
|
||||
if (!(bIsActive) || !(bIsDownloaded) || !(bIsExecuting)) continue;
|
||||
|
||||
if (result) {
|
||||
state_result = pDoc->state.lookup_result(result->project_url, result->name);
|
||||
if (state_result) {
|
||||
state_result->project->get_name(project_name);
|
||||
strProjectName = wxString(project_name.c_str());
|
||||
}
|
||||
fProgress = result->fraction_done;
|
||||
pDoc->GetActivityState(bActivitiesSuspended, bNetworkSuspended);
|
||||
if (bActivitiesSuspended) {
|
||||
strMessage += _("BOINC is currently suspended...\n");
|
||||
}
|
||||
|
||||
strBuffer.Printf(wxT("%s: %.2f%%\n"), strProjectName.c_str(), fProgress * 100);
|
||||
strMessage += strBuffer;
|
||||
if (bNetworkSuspended) {
|
||||
strMessage += _("BOINC networking is currently suspended...\n");
|
||||
}
|
||||
|
||||
if (strMessage.Length() > 0) {
|
||||
strMessage += wxT("\n");
|
||||
}
|
||||
|
||||
iResultCount = pDoc->results.results.size();
|
||||
for (iIndex = 0; iIndex < iResultCount; iIndex++) {
|
||||
RESULT* result = wxGetApp().GetDocument()->result(iIndex);
|
||||
RESULT* state_result = NULL;
|
||||
std::string project_name;
|
||||
|
||||
bIsDownloaded = (result->state == RESULT_FILES_DOWNLOADED);
|
||||
bIsActive = result->active_task;
|
||||
bIsExecuting = (result->scheduler_state == CPU_SCHED_SCHEDULED);
|
||||
if (!(bIsActive) || !(bIsDownloaded) || !(bIsExecuting)) continue;
|
||||
|
||||
if (result) {
|
||||
state_result = pDoc->state.lookup_result(result->project_url, result->name);
|
||||
if (state_result) {
|
||||
state_result->project->get_name(project_name);
|
||||
strProjectName = wxString(project_name.c_str());
|
||||
}
|
||||
fProgress = result->fraction_done;
|
||||
}
|
||||
|
||||
strBuffer.Printf(wxT("%s: %.2f%%\n"), strProjectName.c_str(), fProgress * 100);
|
||||
strMessage += strBuffer;
|
||||
}
|
||||
} else if (pDoc->IsReconnecting()) {
|
||||
strMessage += _("BOINC Manager is currently reconnecting to a BOINC client...\n");
|
||||
} else {
|
||||
strMessage += _("BOINC Manager is not currently connected to a BOINC client...\n");
|
||||
}
|
||||
|
||||
SetBalloon(m_iconTaskBarIcon, strTitle, strMessage);
|
||||
|
|
|
@ -188,7 +188,7 @@ void CDlgSelectComputer::OnComputerNameUpdated( wxCommandEvent& event )
|
|||
wxASSERT(pDoc);
|
||||
wxASSERT(wxDynamicCast(pDoc, CMainDocument));
|
||||
|
||||
if (m_ComputerNameCtrl->GetValue().Lower() == wxT("localhost")) {
|
||||
if (pDoc->IsComputerNameLocal(m_ComputerNameCtrl->GetValue())) {
|
||||
pDoc->m_pNetworkConnection->GetLocalPassword(strPassword);
|
||||
m_ComputerPasswordCtrl->SetValue(strPassword);
|
||||
}
|
||||
|
|
|
@ -70,8 +70,8 @@ void CNetworkConnection::GetLocalPassword(wxString& strPassword){
|
|||
|
||||
void* CNetworkConnection::Poll() {
|
||||
int retval;
|
||||
std::string strComputer;
|
||||
std::string strComputerPassword;
|
||||
wxString strComputer = wxEmptyString;
|
||||
wxString strComputerPassword = wxEmptyString;
|
||||
|
||||
if (IsReconnecting()) {
|
||||
wxLogTrace(wxT("Function Status"), wxT("CNetworkConnection::Poll - Reconnection Detected"));
|
||||
|
@ -81,9 +81,7 @@ void* CNetworkConnection::Poll() {
|
|||
retval = m_pDocument->rpc.authorize(m_strNewComputerPassword.c_str());
|
||||
if (!retval) {
|
||||
wxLogTrace(wxT("Function Status"), wxT("CNetworkConnection::Poll - Connection Success"));
|
||||
std::string host = m_strNewComputerName.c_str();
|
||||
std::string pwd = m_strNewComputerPassword.c_str();
|
||||
SetStateSuccess(host, pwd);
|
||||
SetStateSuccess(m_strNewComputerName, m_strNewComputerPassword);
|
||||
} else if (ERR_AUTHENTICATOR == retval) {
|
||||
wxLogTrace(wxT("Function Status"), wxT("CNetworkConnection::Poll - RPC Authorization - ERR_AUTHENTICATOR"));
|
||||
SetStateErrorAuthentication();
|
||||
|
@ -110,15 +108,15 @@ void* CNetworkConnection::Poll() {
|
|||
strComputerPassword = m_strNewComputerPassword;
|
||||
} else {
|
||||
if (!m_strConnectedComputerName.empty()) {
|
||||
strComputer = m_strConnectedComputerName.c_str();
|
||||
strComputerPassword = m_strConnectedComputerPassword.c_str();
|
||||
strComputer = m_strConnectedComputerName;
|
||||
strComputerPassword = m_strConnectedComputerPassword;
|
||||
}
|
||||
}
|
||||
|
||||
// a host value of NULL is special cased as binding to the localhost and
|
||||
// if we are connecting to the localhost we need to retry the connection
|
||||
// for awhile so that the users can respond to firewall prompts.
|
||||
if (strComputer.empty() || (strComputer == _T("localhost"))) {
|
||||
if (IsComputerNameLocal(strComputer)) {
|
||||
retval = m_pDocument->rpc.init_asynch(NULL, 60., true);
|
||||
} else {
|
||||
retval = m_pDocument->rpc.init_asynch(strComputer.c_str(), 60., false);
|
||||
|
@ -154,6 +152,22 @@ int CNetworkConnection::GetConnectingComputerName(wxString& strMachine) {
|
|||
}
|
||||
|
||||
|
||||
bool CNetworkConnection::IsComputerNameLocal(wxString& strMachine) {
|
||||
if (strMachine.empty()) {
|
||||
return true;
|
||||
} else if (wxT("localhost") == strMachine.Lower()) {
|
||||
return true;
|
||||
} else if (wxT("localhost.localdomain") == strMachine.Lower()) {
|
||||
return true;
|
||||
} else if (::wxGetHostName().Lower() == strMachine.Lower()) {
|
||||
return true;
|
||||
} else if (::wxGetFullHostName().Lower() == strMachine.Lower()) {
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
int CNetworkConnection::SetNewComputerName(const wxChar* szComputer) {
|
||||
m_strNewComputerName = szComputer;
|
||||
return 0;
|
||||
|
@ -195,11 +209,7 @@ void CNetworkConnection::SetStateError() {
|
|||
|
||||
m_bConnectEvent = false;
|
||||
|
||||
pFrame->ShowAlert(
|
||||
_("BOINC Manager - Connection failed"),
|
||||
_("Connection failed."),
|
||||
wxICON_ERROR
|
||||
);
|
||||
pFrame->ShowConnectionFailedAlert();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -216,15 +226,15 @@ void CNetworkConnection::SetStateReconnecting() {
|
|||
}
|
||||
|
||||
|
||||
void CNetworkConnection::SetStateSuccess(std::string& strComputer, std::string& strComputerPassword) {
|
||||
void CNetworkConnection::SetStateSuccess(wxString& strComputer, wxString& strComputerPassword) {
|
||||
CMainFrame* pFrame = wxGetApp().GetFrame();
|
||||
if (pFrame && !m_bFrameShutdownDetected) {
|
||||
wxASSERT(wxDynamicCast(pFrame, CMainFrame));
|
||||
m_bConnected = true;
|
||||
m_bReconnecting = false;
|
||||
m_bReconnectOnError = true;
|
||||
m_strConnectedComputerName = strComputer.c_str();
|
||||
m_strConnectedComputerPassword = strComputerPassword.c_str();
|
||||
m_strConnectedComputerName = strComputer;
|
||||
m_strConnectedComputerPassword = strComputerPassword;
|
||||
m_strNewComputerName = wxEmptyString;
|
||||
m_strNewComputerPassword = wxEmptyString;
|
||||
|
||||
|
@ -401,6 +411,13 @@ int CMainDocument::Connect(const wxChar* szComputer, const wxChar* szComputerPas
|
|||
}
|
||||
|
||||
|
||||
int CMainDocument::Reconnect() {
|
||||
m_pNetworkConnection->ForceReconnect();
|
||||
m_pNetworkConnection->FireReconnectEvent();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
int CMainDocument::GetConnectedComputerName(wxString& strMachine) {
|
||||
m_pNetworkConnection->GetConnectedComputerName(strMachine);
|
||||
return 0;
|
||||
|
@ -413,6 +430,11 @@ int CMainDocument::GetConnectingComputerName(wxString& strMachine) {
|
|||
}
|
||||
|
||||
|
||||
bool CMainDocument::IsComputerNameLocal(wxString& strMachine) {
|
||||
return m_pNetworkConnection->IsComputerNameLocal(strMachine);
|
||||
}
|
||||
|
||||
|
||||
bool CMainDocument::IsConnected() {
|
||||
return m_pNetworkConnection->IsConnected();
|
||||
}
|
||||
|
|
|
@ -39,13 +39,14 @@ public:
|
|||
int FrameShutdownDetected();
|
||||
int GetConnectedComputerName(wxString& strMachine);
|
||||
int GetConnectingComputerName(wxString& strMachine);
|
||||
bool IsComputerNameLocal(wxString& strMachine);
|
||||
void GetLocalPassword(wxString& strPassword);
|
||||
int SetNewComputerName(const wxChar* szComputer);
|
||||
int SetNewComputerPassword(const wxChar* szPassword);
|
||||
void SetStateError();
|
||||
void SetStateErrorAuthentication();
|
||||
void SetStateReconnecting();
|
||||
void SetStateSuccess(std::string& strComputer, std::string& strComputerPassword);
|
||||
void SetStateSuccess(wxString& strComputer, wxString& strComputerPassword);
|
||||
void SetStateDisconnected();
|
||||
bool IsConnectEventSignaled() { return m_bConnectEvent; };
|
||||
bool IsConnected() { return m_bConnected; };
|
||||
|
@ -102,6 +103,7 @@ public:
|
|||
int ResetState();
|
||||
|
||||
int Connect(const wxChar* szComputer, const wxChar* szComputerPassword = wxEmptyString, bool bDisconnect = FALSE);
|
||||
int Reconnect();
|
||||
|
||||
int CachedStateLock();
|
||||
int CachedStateUnlock();
|
||||
|
@ -111,6 +113,7 @@ public:
|
|||
|
||||
int GetConnectedComputerName(wxString& strMachine);
|
||||
int GetConnectingComputerName(wxString& strMachine);
|
||||
bool IsComputerNameLocal(wxString& strMachine);
|
||||
bool IsConnected();
|
||||
bool IsReconnecting();
|
||||
|
||||
|
|
|
@ -923,11 +923,7 @@ void CMainFrame::OnSelectComputer(wxCommandEvent& WXUNUSED(event)) {
|
|||
TRUE
|
||||
);
|
||||
if (lRetVal) {
|
||||
ShowAlert(
|
||||
_("Connection failed."),
|
||||
_("Connection failed."),
|
||||
wxICON_ERROR
|
||||
);
|
||||
ShowConnectionFailedAlert();
|
||||
}
|
||||
|
||||
// Insert a copy of the current combo box value to the head of the
|
||||
|
@ -1300,7 +1296,11 @@ void CMainFrame::OnAlert(CMainFrameAlertEvent& event) {
|
|||
|
||||
if ((IsShown() && !event.m_notification_only) || (IsShown() && !pTaskbar->IsBalloonsSupported())) {
|
||||
if (!event.m_notification_only) {
|
||||
::wxMessageBox(event.m_message, event.m_title, event.m_style, this);
|
||||
int retval = 0;
|
||||
retval = ::wxMessageBox(event.m_message, event.m_title, event.m_style, this);
|
||||
if (event.m_alert_event_type == AlertProcessResponse) {
|
||||
event.ProcessResponse(retval);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// If the main window is hidden or minimzed use the system tray ballon
|
||||
|
@ -1772,9 +1772,8 @@ void CMainFrame::OnFrameRender(wxTimerEvent &event) {
|
|||
else
|
||||
pDoc->GetConnectedComputerName(strComputerName);
|
||||
|
||||
if (strComputerName.empty()) {
|
||||
if (pDoc->IsComputerNameLocal(strComputerName)) {
|
||||
strTitle += wxT(" - (localhost)");
|
||||
strComputerName += wxT("localhost");
|
||||
} else {
|
||||
strStatusText += strComputerName;
|
||||
}
|
||||
|
@ -1874,6 +1873,7 @@ void CMainFrame::SetFrameListPanelRenderTimerRate() {
|
|||
wxASSERT(m_pNotebook);
|
||||
wxASSERT(m_pFrameListPanelRenderTimer);
|
||||
wxASSERT(pDoc);
|
||||
wxASSERT(wxDynamicCast(pDoc, CMainDocument));
|
||||
|
||||
// Keep timer at faster rate until we have been connected > 10 seconds
|
||||
if (!pDoc->IsConnected())
|
||||
|
@ -1933,6 +1933,22 @@ void CMainFrame::FireConnect() {
|
|||
}
|
||||
|
||||
|
||||
void CMainFrame::ShowConnectionFailedAlert() {
|
||||
wxLogTrace(wxT("Function Start/End"), wxT("CMainFrame::ShowConnectionFailedAlert - Function Begin"));
|
||||
|
||||
ShowAlert(
|
||||
_("BOINC Manager - Connection Failed"),
|
||||
_("BOINC Manager is not able to connect to a BOINC client.\n"
|
||||
"Would you like to try to connect again?"),
|
||||
wxYES_NO | wxICON_QUESTION,
|
||||
false,
|
||||
AlertProcessResponse
|
||||
);
|
||||
|
||||
wxLogTrace(wxT("Function Start/End"), wxT("CMainFrame::ShowConnectionFailedAlert - Function End"));
|
||||
}
|
||||
|
||||
|
||||
void CMainFrame::ShowNotCurrentlyConnectedAlert() {
|
||||
wxLogTrace(wxT("Function Start/End"), wxT("CMainFrame::ShowNotCurrentlyConnectedAlert - Function Begin"));
|
||||
|
||||
|
@ -1948,8 +1964,8 @@ void CMainFrame::ShowNotCurrentlyConnectedAlert() {
|
|||
}
|
||||
|
||||
|
||||
void CMainFrame::ShowAlert( const wxString title, const wxString message, const int style, const bool notification_only ) {
|
||||
CMainFrameAlertEvent event(wxEVT_MAINFRAME_ALERT, this, title, message, style, notification_only);
|
||||
void CMainFrame::ShowAlert( const wxString title, const wxString message, const int style, const bool notification_only, const MainFrameAlertEventType alert_event_type ) {
|
||||
CMainFrameAlertEvent event(wxEVT_MAINFRAME_ALERT, this, title, message, style, notification_only, alert_event_type);
|
||||
AddPendingEvent(event);
|
||||
}
|
||||
|
||||
|
@ -1958,6 +1974,7 @@ void CMainFrame::ExecuteBrowserLink(const wxString &strLink) {
|
|||
wxHyperLink::ExecuteLink(strLink);
|
||||
}
|
||||
|
||||
|
||||
#ifdef __WXMAC__
|
||||
|
||||
bool CMainFrame::Show(bool show) {
|
||||
|
@ -1975,4 +1992,17 @@ bool CMainFrame::Show(bool show) {
|
|||
|
||||
#endif // __WXMAC__
|
||||
|
||||
|
||||
void CMainFrameAlertEvent::ProcessResponse(const int response) const {
|
||||
CMainDocument* pDoc = wxGetApp().GetDocument();
|
||||
|
||||
wxASSERT(pDoc);
|
||||
wxASSERT(wxDynamicCast(pDoc, CMainDocument));
|
||||
|
||||
if ((AlertProcessResponse == m_alert_event_type) && (wxYES == response)) {
|
||||
pDoc->Reconnect();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
const char *BOINC_RCSID_d881a56dc5 = "$Id$";
|
||||
|
|
|
@ -25,7 +25,6 @@
|
|||
#pragma interface "MainFrame.cpp"
|
||||
#endif
|
||||
|
||||
|
||||
class CStatusBar : public wxStatusBar
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(CStatusBar)
|
||||
|
@ -46,9 +45,15 @@ private:
|
|||
DECLARE_EVENT_TABLE()
|
||||
};
|
||||
|
||||
|
||||
class CMainFrameEvent;
|
||||
class CMainFrameAlertEvent;
|
||||
|
||||
enum MainFrameAlertEventType {
|
||||
AlertNormal = 0,
|
||||
AlertProcessResponse
|
||||
};
|
||||
|
||||
class CMainFrame : public wxFrame
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(CMainFrame)
|
||||
|
@ -98,8 +103,15 @@ public:
|
|||
void FireRefreshView();
|
||||
void FireConnect();
|
||||
|
||||
void ShowConnectionFailedAlert();
|
||||
void ShowNotCurrentlyConnectedAlert();
|
||||
void ShowAlert( const wxString title, const wxString message, const int style, const bool notification_only = false );
|
||||
void ShowAlert(
|
||||
const wxString title,
|
||||
const wxString message,
|
||||
const int style,
|
||||
const bool notification_only = false,
|
||||
const MainFrameAlertEventType alert_event_type = AlertNormal
|
||||
);
|
||||
|
||||
void ExecuteBrowserLink( const wxString& strLink );
|
||||
|
||||
|
@ -167,10 +179,17 @@ public:
|
|||
class CMainFrameAlertEvent : public wxEvent
|
||||
{
|
||||
public:
|
||||
CMainFrameAlertEvent(wxEventType evtType, CMainFrame *frame, wxString title, wxString message, int style, bool notification_only, MainFrameAlertEventType alert_event_type)
|
||||
: wxEvent(-1, evtType), m_title(title), m_message(message), m_style(style), m_notification_only(notification_only), m_alert_event_type(alert_event_type)
|
||||
{
|
||||
SetEventObject(frame);
|
||||
}
|
||||
|
||||
CMainFrameAlertEvent(wxEventType evtType, CMainFrame *frame, wxString title, wxString message, int style, bool notification_only)
|
||||
: wxEvent(-1, evtType), m_title(title), m_message(message), m_style(style), m_notification_only(notification_only)
|
||||
{
|
||||
SetEventObject(frame);
|
||||
m_alert_event_type = AlertNormal;
|
||||
}
|
||||
|
||||
CMainFrameAlertEvent(const CMainFrameAlertEvent& event)
|
||||
|
@ -180,14 +199,17 @@ public:
|
|||
m_message = event.m_message;
|
||||
m_style = event.m_style;
|
||||
m_notification_only = event.m_notification_only;
|
||||
m_alert_event_type = event.m_alert_event_type;
|
||||
}
|
||||
|
||||
virtual wxEvent *Clone() const { return new CMainFrameAlertEvent(*this); }
|
||||
virtual void ProcessResponse(const int response) const;
|
||||
|
||||
wxString m_title;
|
||||
wxString m_message;
|
||||
int m_style;
|
||||
bool m_notification_only;
|
||||
wxString m_title;
|
||||
wxString m_message;
|
||||
int m_style;
|
||||
bool m_notification_only;
|
||||
MainFrameAlertEventType m_alert_event_type;
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -199,36 +199,31 @@ void CViewWork::OnWorkShowGraphics( wxCommandEvent& WXUNUSED(event) ) {
|
|||
|
||||
pFrame->UpdateStatusText(_("Showing graphics for result..."));
|
||||
|
||||
pDoc->GetConnectedComputerName(strMachineName);
|
||||
|
||||
// TODO: implement hide as well as show
|
||||
if (1) {
|
||||
#ifdef _WIN32
|
||||
if (!strMachineName.empty()) {
|
||||
iAnswer = ::wxMessageBox(
|
||||
_("Are you sure you want to display graphics on a remote machine?"),
|
||||
_("Show graphics"),
|
||||
wxYES_NO | wxICON_QUESTION,
|
||||
this
|
||||
);
|
||||
} else {
|
||||
iAnswer = wxYES;
|
||||
}
|
||||
#else
|
||||
pDoc->GetConnectedComputerName(strMachineName);
|
||||
if (!pDoc->IsComputerNameLocal(strMachineName)) {
|
||||
iAnswer = ::wxMessageBox(
|
||||
_("Are you sure you want to display graphics on a remote machine?"),
|
||||
_("Show graphics"),
|
||||
wxYES_NO | wxICON_QUESTION,
|
||||
this
|
||||
);
|
||||
} else {
|
||||
iAnswer = wxYES;
|
||||
}
|
||||
#else
|
||||
iAnswer = wxYES;
|
||||
#endif
|
||||
|
||||
if (wxYES == iAnswer) {
|
||||
pDoc->WorkShowGraphics(
|
||||
m_pListPane->GetFirstSelected(),
|
||||
false,
|
||||
wxGetApp().m_strDefaultWindowStation,
|
||||
wxGetApp().m_strDefaultDesktop,
|
||||
wxGetApp().m_strDefaultDisplay
|
||||
);
|
||||
}
|
||||
|
||||
pFrame->UpdateStatusText(wxT(""));
|
||||
if (wxYES == iAnswer) {
|
||||
pDoc->WorkShowGraphics(
|
||||
m_pListPane->GetFirstSelected(),
|
||||
false,
|
||||
wxGetApp().m_strDefaultWindowStation,
|
||||
wxGetApp().m_strDefaultDesktop,
|
||||
wxGetApp().m_strDefaultDisplay
|
||||
);
|
||||
}
|
||||
|
||||
pFrame->UpdateStatusText(wxT(""));
|
||||
|
|
Binary file not shown.
|
@ -2,7 +2,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: BOINC Manager 4.x\n"
|
||||
"POT-Creation-Date: \n"
|
||||
"PO-Revision-Date: 2005-11-26 11:02-0800\n"
|
||||
"PO-Revision-Date: 2005-11-26 17:22-0800\n"
|
||||
"Last-Translator: Rom Walton <rwalton@ssl.berkeley.edu>\n"
|
||||
"Language-Team: BOINC Development Team <rwalton@ssl.berkeley.edu>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -176,56 +176,64 @@ msgstr ""
|
|||
msgid "BOINC Manager"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:271
|
||||
#: clientgui/BOINCTaskBar.cpp:267
|
||||
msgid "BOINC is currently suspended...\n"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:275
|
||||
#: clientgui/BOINCTaskBar.cpp:271
|
||||
msgid "BOINC networking is currently suspended...\n"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:376
|
||||
#: clientgui/BOINCTaskBar.cpp:302
|
||||
msgid "BOINC Manager is currently reconnecting to a BOINC client...\n"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:304
|
||||
msgid "BOINC Manager is not currently connected to a BOINC client...\n"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:377
|
||||
#: clientgui/MainFrame.cpp:331
|
||||
#: clientgui/mac/MacSysMenu.cpp:76
|
||||
msgid "E&xit"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:395
|
||||
#: clientgui/BOINCTaskBar.cpp:402
|
||||
#: clientgui/BOINCTaskBar.cpp:396
|
||||
#: clientgui/BOINCTaskBar.cpp:403
|
||||
msgid "&Open BOINC Manager..."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:406
|
||||
#: clientgui/BOINCTaskBar.cpp:407
|
||||
#: clientgui/MainFrame.cpp:340
|
||||
msgid "&Run always"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:407
|
||||
#: clientgui/BOINCTaskBar.cpp:408
|
||||
#: clientgui/MainFrame.cpp:345
|
||||
msgid "Run based on &preferences"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:408
|
||||
#: clientgui/BOINCTaskBar.cpp:409
|
||||
#: clientgui/MainFrame.cpp:350
|
||||
msgid "&Suspend"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:410
|
||||
#: clientgui/BOINCTaskBar.cpp:411
|
||||
#: clientgui/MainFrame.cpp:358
|
||||
msgid "&Network activity always available"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:411
|
||||
#: clientgui/BOINCTaskBar.cpp:412
|
||||
#: clientgui/MainFrame.cpp:363
|
||||
msgid "Network activity based on &preferences"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:412
|
||||
#: clientgui/BOINCTaskBar.cpp:413
|
||||
#: clientgui/MainFrame.cpp:368
|
||||
msgid "&Network activity suspended"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/BOINCTaskBar.cpp:414
|
||||
#: clientgui/BOINCTaskBar.cpp:415
|
||||
#: clientgui/MainFrame.cpp:425
|
||||
msgid "&About BOINC Manager..."
|
||||
msgstr ""
|
||||
|
@ -631,29 +639,19 @@ msgstr ""
|
|||
msgid "Info about your team"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainDocument.cpp:180
|
||||
#: clientgui/MainDocument.cpp:194
|
||||
msgid "BOINC Manager - Connection Error"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainDocument.cpp:181
|
||||
#: clientgui/MainDocument.cpp:195
|
||||
msgid "The password you have provided is incorrect, please try again."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainDocument.cpp:199
|
||||
msgid "BOINC Manager - Connection failed"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainDocument.cpp:200
|
||||
#: clientgui/MainFrame.cpp:927
|
||||
#: clientgui/MainFrame.cpp:928
|
||||
msgid "Connection failed."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainDocument.cpp:306
|
||||
#: clientgui/MainDocument.cpp:316
|
||||
msgid "Retrieving system state; please wait..."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainDocument.cpp:315
|
||||
#: clientgui/MainDocument.cpp:325
|
||||
msgid "Retrieving host information; please wait..."
|
||||
msgstr ""
|
||||
|
||||
|
@ -780,19 +778,19 @@ msgstr ""
|
|||
msgid "&Help"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1049
|
||||
#: clientgui/MainFrame.cpp:1045
|
||||
msgid "Attaching to project..."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1088
|
||||
#: clientgui/MainFrame.cpp:1084
|
||||
msgid "Retrying communications for project(s)..."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1178
|
||||
#: clientgui/MainFrame.cpp:1174
|
||||
msgid "Language Selection..."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1179
|
||||
#: clientgui/MainFrame.cpp:1175
|
||||
msgid "The BOINC Managers default language has been changed, in order for this change to take affect you must restart the manager."
|
||||
msgstr ""
|
||||
|
||||
|
@ -841,28 +839,38 @@ msgstr ""
|
|||
msgid "BOINC failed to connect to the internet."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1783
|
||||
#: clientgui/MainFrame.cpp:1786
|
||||
#: clientgui/MainFrame.cpp:1782
|
||||
#: clientgui/MainFrame.cpp:1785
|
||||
#, c-format
|
||||
msgid "%s - (%s)"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1784
|
||||
#: clientgui/MainFrame.cpp:1783
|
||||
#, c-format
|
||||
msgid "Connecting to %s"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1787
|
||||
#: clientgui/MainFrame.cpp:1786
|
||||
#, c-format
|
||||
msgid "Connected to %s"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1940
|
||||
msgid "BOINC Manager - Connection Status"
|
||||
msgid "BOINC Manager - Connection Failed"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1941
|
||||
msgid ""
|
||||
"BOINC Manager is not able to connect to a BOINC client.\n"
|
||||
"Would you like to try to connect again?"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1956
|
||||
msgid "BOINC Manager - Connection Status"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/MainFrame.cpp:1957
|
||||
msgid ""
|
||||
"BOINC Manager is not currently connected to a BOINC client.\n"
|
||||
"Please use the 'File\\Select Computer...' menu option to connect up to a BOINC client.\n"
|
||||
"To connect up to your local computer please use 'localhost' as the host name."
|
||||
|
@ -1094,7 +1102,7 @@ msgstr ""
|
|||
#: clientgui/ViewProjects.cpp:114
|
||||
#: clientgui/ViewProjects.cpp:560
|
||||
#: clientgui/ViewWork.cpp:99
|
||||
#: clientgui/ViewWork.cpp:458
|
||||
#: clientgui/ViewWork.cpp:453
|
||||
msgid "Suspend"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1205,7 +1213,7 @@ msgid "Launching browser..."
|
|||
msgstr ""
|
||||
|
||||
#: clientgui/ViewProjects.cpp:556
|
||||
#: clientgui/ViewWork.cpp:454
|
||||
#: clientgui/ViewWork.cpp:449
|
||||
msgid "Resume"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1230,7 +1238,7 @@ msgid "Web sites"
|
|||
msgstr ""
|
||||
|
||||
#: clientgui/ViewProjects.cpp:721
|
||||
#: clientgui/ViewWork.cpp:666
|
||||
#: clientgui/ViewWork.cpp:661
|
||||
msgid "Suspended by user"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1358,12 +1366,12 @@ msgid "Retry in "
|
|||
msgstr ""
|
||||
|
||||
#: clientgui/ViewTransfers.cpp:527
|
||||
#: clientgui/ViewWork.cpp:657
|
||||
#: clientgui/ViewWork.cpp:652
|
||||
msgid "Download failed"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewTransfers.cpp:529
|
||||
#: clientgui/ViewWork.cpp:693
|
||||
#: clientgui/ViewWork.cpp:688
|
||||
msgid "Upload failed"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1373,22 +1381,22 @@ msgid "Suspended"
|
|||
msgstr ""
|
||||
|
||||
#: clientgui/ViewTransfers.cpp:534
|
||||
#: clientgui/ViewWork.cpp:695
|
||||
#: clientgui/ViewWork.cpp:690
|
||||
msgid "Uploading"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewTransfers.cpp:534
|
||||
#: clientgui/ViewWork.cpp:659
|
||||
#: clientgui/ViewWork.cpp:654
|
||||
msgid "Downloading"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:100
|
||||
#: clientgui/ViewWork.cpp:458
|
||||
#: clientgui/ViewWork.cpp:453
|
||||
msgid "Suspend work for this result."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:106
|
||||
#: clientgui/ViewWork.cpp:210
|
||||
#: clientgui/ViewWork.cpp:208
|
||||
msgid "Show graphics"
|
||||
msgstr ""
|
||||
|
||||
|
@ -1440,71 +1448,71 @@ msgstr ""
|
|||
msgid "Showing graphics for result..."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:209
|
||||
#: clientgui/ViewWork.cpp:207
|
||||
msgid "Are you sure you want to display graphics on a remote machine?"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:258
|
||||
#: clientgui/ViewWork.cpp:253
|
||||
msgid "Aborting result..."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:261
|
||||
#: clientgui/ViewWork.cpp:256
|
||||
#, c-format
|
||||
msgid "Are you sure you want to abort this result '%s'?"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:267
|
||||
#: clientgui/ViewWork.cpp:262
|
||||
msgid "Abort result"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:454
|
||||
#: clientgui/ViewWork.cpp:449
|
||||
msgid "Resume work for this result."
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:653
|
||||
#: clientgui/ViewWork.cpp:648
|
||||
msgid "New"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:664
|
||||
#: clientgui/ViewWork.cpp:686
|
||||
#: clientgui/ViewWork.cpp:659
|
||||
#: clientgui/ViewWork.cpp:681
|
||||
msgid "Aborted by user"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:668
|
||||
#: clientgui/ViewWork.cpp:663
|
||||
msgid "Activities suspended"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:671
|
||||
#: clientgui/ViewWork.cpp:666
|
||||
msgid "Running"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:673
|
||||
#: clientgui/ViewWork.cpp:668
|
||||
msgid "Preempted"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:675
|
||||
#: clientgui/ViewWork.cpp:678
|
||||
#: clientgui/ViewWork.cpp:670
|
||||
#: clientgui/ViewWork.cpp:673
|
||||
msgid "Ready to run"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:688
|
||||
#: clientgui/ViewWork.cpp:683
|
||||
msgid "Computation error"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:700
|
||||
#: clientgui/ViewWork.cpp:695
|
||||
msgid "Acknowledged"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:702
|
||||
#: clientgui/ViewWork.cpp:697
|
||||
msgid "Ready to report"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:704
|
||||
#: clientgui/ViewWork.cpp:699
|
||||
#, c-format
|
||||
msgid "Error: invalid state '%d'"
|
||||
msgstr ""
|
||||
|
||||
#: clientgui/ViewWork.cpp:712
|
||||
#: clientgui/ViewWork.cpp:707
|
||||
msgid "Activities suspended by user"
|
||||
msgstr ""
|
||||
|
||||
|
|
Loading…
Reference in New Issue