mirror of https://github.com/BOINC/boinc.git
*** empty log message ***
svn path=/trunk/boinc/; revision=11913
This commit is contained in:
parent
8a30171d88
commit
721fb8b0e0
|
@ -876,3 +876,20 @@ David 19 Jan 2007
|
|||
|
||||
lib/
|
||||
mfile.C
|
||||
|
||||
Rom 19 Jan 2007
|
||||
- MGR: If the manager detects that the CC has crashed, and it was the one
|
||||
who started the CC to begin with, restart the CC after 30 seconds.
|
||||
- MGR: Cleanup some of the taskbar interactions where both the tooltip and
|
||||
balloon were being displayed on Windows. Only one should be shown.
|
||||
- MGR: Allow arguments to be passed to the CC from the manager's parameter
|
||||
list. /b "..." or /boincargs "..." should work.
|
||||
|
||||
clientgui/
|
||||
AdvancedFrame.cpp
|
||||
BOINCBaseFrame.cpp
|
||||
BOINCGUIApp.cpp, .h
|
||||
BOINCTaskBar.cpp
|
||||
MainDocument.cpp
|
||||
ViewResources.cpp
|
||||
|
|
@ -1694,15 +1694,14 @@ void CAdvancedFrame::OnFrameRender(wxTimerEvent &event) {
|
|||
wxString strTitle = m_strBaseTitle;
|
||||
wxString strLocale = wxString(setlocale(LC_NUMERIC, NULL), wxConvUTF8);
|
||||
|
||||
if (pDoc->IsReconnecting())
|
||||
if (pDoc->IsReconnecting()) {
|
||||
pDoc->GetConnectingComputerName(strComputerName);
|
||||
else
|
||||
} else {
|
||||
pDoc->GetConnectedComputerName(strComputerName);
|
||||
}
|
||||
|
||||
if (pDoc->IsComputerNameLocal(strComputerName)) {
|
||||
strTitle += wxT(" - (localhost)");
|
||||
} else {
|
||||
strStatusText += strComputerName;
|
||||
strComputerName = wxT("localhost");
|
||||
}
|
||||
|
||||
if (pDoc->IsReconnecting()) {
|
||||
|
|
|
@ -383,6 +383,11 @@ void CBOINCBaseFrame::ShowConnectionFailedAlert() {
|
|||
|
||||
wxLogTrace(wxT("Function Start/End"), wxT("CBOINCBaseFrame::ShowConnectionFailedAlert - Function Begin"));
|
||||
|
||||
|
||||
// Did BOINC crash? If so restart it.
|
||||
wxGetApp().AutoRestartBOINC();
|
||||
|
||||
|
||||
// %s is the application name
|
||||
// i.e. 'BOINC Manager', 'GridRepublic Manager'
|
||||
strDialogTitle.Printf(
|
||||
|
@ -425,6 +430,11 @@ void CBOINCBaseFrame::ShowNotCurrentlyConnectedAlert() {
|
|||
|
||||
wxLogTrace(wxT("Function Start/End"), wxT("CBOINCBaseFrame::ShowNotCurrentlyConnectedAlert - Function Begin"));
|
||||
|
||||
|
||||
// Did BOINC crash? If so restart it.
|
||||
wxGetApp().AutoRestartBOINC();
|
||||
|
||||
|
||||
// %s is the application name
|
||||
// i.e. 'BOINC Manager', 'GridRepublic Manager'
|
||||
strDialogTitle.Printf(
|
||||
|
|
|
@ -76,6 +76,7 @@ bool CBOINCGUIApp::OnInit() {
|
|||
|
||||
// Setup variables with default values
|
||||
m_bBOINCStartedByManager = false;
|
||||
m_strBOINCArguments = wxEmptyString;
|
||||
m_pLocale = NULL;
|
||||
m_pSkinManager = NULL;
|
||||
m_pFrame = NULL;
|
||||
|
@ -367,7 +368,8 @@ void CBOINCGUIApp::OnInitCmdLine(wxCmdLineParser &parser) {
|
|||
wxApp::OnInitCmdLine(parser);
|
||||
static const wxCmdLineEntryDesc cmdLineDesc[] = {
|
||||
{ wxCMD_LINE_SWITCH, wxT("s"), wxT("systray"), _("Startup BOINC so only the system tray icon is visible")},
|
||||
{ wxCMD_LINE_SWITCH, wxT("insecure"), wxT("insecure"), _("disable BOINC security users and permissions")},
|
||||
{ wxCMD_LINE_SWITCH, wxT("b"), wxT("boincargs"), _("Startup BOINC with these optional arguments")},
|
||||
{ wxCMD_LINE_SWITCH, wxT("i"), wxT("insecure"), _("disable BOINC security users and permissions")},
|
||||
{ wxCMD_LINE_NONE} //DON'T forget this line!!
|
||||
};
|
||||
parser.SetDesc(cmdLineDesc);
|
||||
|
@ -377,6 +379,7 @@ void CBOINCGUIApp::OnInitCmdLine(wxCmdLineParser &parser) {
|
|||
bool CBOINCGUIApp::OnCmdLineParsed(wxCmdLineParser &parser) {
|
||||
// Give default processing (-?, --help and --verbose) the chance to do something.
|
||||
wxApp::OnCmdLineParsed(parser);
|
||||
parser.Found(wxT("boincargs"), &m_strBOINCArguments);
|
||||
if (parser.Found(wxT("systray"))) {
|
||||
m_bGUIVisible = false;
|
||||
}
|
||||
|
@ -443,6 +446,14 @@ void CBOINCGUIApp::InitSupportedLanguages() {
|
|||
}
|
||||
|
||||
|
||||
bool CBOINCGUIApp::AutoRestartBOINC() {
|
||||
if (!IsBOINCCoreRunning() && m_bBOINCStartedByManager) {
|
||||
StartupBOINCCore();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool CBOINCGUIApp::IsBOINCCoreRunning() {
|
||||
wxLogTrace(wxT("Function Start/End"), wxT("CBOINCGUIApp::IsBOINCCoreRunning - Function Begin"));
|
||||
|
||||
|
@ -576,7 +587,11 @@ void CBOINCGUIApp::StartupBOINCCore() {
|
|||
#ifdef __WXMSW__
|
||||
|
||||
// Append boinc.exe to the end of the strExecute string and get ready to rock
|
||||
strExecute = wxT("\"") + strDirectory + wxT("\\boinc.exe\" -redirectio -launched_by_manager");
|
||||
strExecute.Printf(
|
||||
wxT("\"%s\\boinc.exe\" -redirectio -launched_by_manager %s"),
|
||||
strDirectory.c_str(),
|
||||
m_strBOINCArguments.c_str()
|
||||
);
|
||||
|
||||
PROCESS_INFORMATION pi;
|
||||
STARTUPINFO si;
|
||||
|
|
|
@ -76,6 +76,8 @@ protected:
|
|||
#endif
|
||||
|
||||
bool m_bBOINCStartedByManager;
|
||||
wxString m_strBOINCArguments;
|
||||
|
||||
int m_iDisplayExitWarning;
|
||||
|
||||
bool m_bGUIVisible;
|
||||
|
@ -100,6 +102,8 @@ public:
|
|||
|
||||
bool OnInit();
|
||||
|
||||
bool AutoRestartBOINC();
|
||||
|
||||
int IsNetworkAlive(long* lpdwFlags);
|
||||
int IsNetworkAlwaysOnline();
|
||||
int UpdateSystemIdleDetection();
|
||||
|
|
|
@ -93,10 +93,6 @@ CTaskBarIcon::CTaskBarIcon(wxString title, wxIcon* icon, wxIcon* iconDisconnecte
|
|||
|
||||
m_pRefreshTimer = new wxTimer(this, ID_TB_TIMER);
|
||||
m_pRefreshTimer->Start(1000); // Send event every second
|
||||
|
||||
#ifndef __WXMAC__
|
||||
SetIcon(m_iconTaskBarNormal, m_strDefaultTitle);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
@ -147,12 +143,24 @@ void CTaskBarIcon::OnRefresh(wxTimerEvent& WXUNUSED(event)) {
|
|||
|
||||
// Which icon should be displayed?
|
||||
if (!pDoc->IsConnected()) {
|
||||
SetIcon(m_iconTaskBarDisconnected, m_strDefaultTitle);
|
||||
if (IsBalloonsSupported()) {
|
||||
SetIcon(m_iconTaskBarDisconnected, wxEmptyString);
|
||||
} else {
|
||||
SetIcon(m_iconTaskBarDisconnected, m_strDefaultTitle);
|
||||
}
|
||||
} else {
|
||||
if (RUN_MODE_NEVER == status.task_mode) {
|
||||
SetIcon(m_iconTaskBarSnooze, m_strDefaultTitle);
|
||||
if (IsBalloonsSupported()) {
|
||||
SetIcon(m_iconTaskBarSnooze, wxEmptyString);
|
||||
} else {
|
||||
SetIcon(m_iconTaskBarSnooze, m_strDefaultTitle);
|
||||
}
|
||||
} else {
|
||||
SetIcon(m_iconTaskBarNormal, m_strDefaultTitle);
|
||||
if (IsBalloonsSupported()) {
|
||||
SetIcon(m_iconTaskBarNormal, wxEmptyString);
|
||||
} else {
|
||||
SetIcon(m_iconTaskBarNormal, m_strDefaultTitle);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -327,6 +335,9 @@ void CTaskBarIcon::OnMouseMove(wxTaskBarIconEvent& WXUNUSED(event)) {
|
|||
|
||||
if (pDoc->IsConnected()) {
|
||||
pDoc->GetConnectedComputerName(strMachineName);
|
||||
if (pDoc->IsComputerNameLocal(strMachineName)) {
|
||||
strMachineName = wxT("localhost");
|
||||
}
|
||||
strTitle = strTitle + wxT(" - (") + strMachineName + wxT(")");
|
||||
|
||||
pDoc->GetCoreClientStatus(status);
|
||||
|
|
|
@ -138,9 +138,9 @@ void CNetworkConnection::Poll() {
|
|||
// 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 (IsComputerNameLocal(strComputer)) {
|
||||
retval = m_pDocument->rpc.init_asynch(NULL, 60., true);
|
||||
retval = m_pDocument->rpc.init_asynch(NULL, 30., true);
|
||||
} else {
|
||||
retval = m_pDocument->rpc.init_asynch(strComputer.mb_str(), 60., false);
|
||||
retval = m_pDocument->rpc.init_asynch(strComputer.mb_str(), 30., false);
|
||||
}
|
||||
|
||||
if (!retval) {
|
||||
|
@ -237,6 +237,8 @@ void CNetworkConnection::SetStateReconnecting() {
|
|||
m_bReconnectOnError = false;
|
||||
m_bForceReconnect = false;
|
||||
m_bReconnecting = true;
|
||||
m_strNewComputerName = m_strConnectedComputerName;
|
||||
m_strNewComputerPassword = m_strConnectedComputerPassword;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -157,7 +157,7 @@ wxInt32 CViewResources::FormatProjectName(PROJECT* project, wxString& strBuffer)
|
|||
}
|
||||
|
||||
|
||||
bool CViewResources::OnSaveState(wxConfigBase* pConfig) {
|
||||
bool CViewResources::OnSaveState(wxConfigBase* /*pConfig*/) {
|
||||
return true;/*bool bReturnValue = true;
|
||||
|
||||
wxASSERT(pConfig);
|
||||
|
@ -170,7 +170,7 @@ bool CViewResources::OnSaveState(wxConfigBase* pConfig) {
|
|||
return bReturnValue;*/
|
||||
}
|
||||
|
||||
bool CViewResources::OnRestoreState(wxConfigBase* pConfig) {
|
||||
bool CViewResources::OnRestoreState(wxConfigBase* /*pConfig*/) {
|
||||
return true;/*wxASSERT(pConfig);
|
||||
wxASSERT(m_pTaskPane);
|
||||
|
||||
|
|
|
@ -164,9 +164,10 @@ bool wxTaskBarIconEx::SetBalloon(const wxIcon& icon, const wxString title, const
|
|||
|
||||
if (IsBalloonsSupported())
|
||||
{
|
||||
notifyData.uFlags |= NIF_INFO;
|
||||
notifyData.uFlags |= NIF_INFO | NIF_TIP;
|
||||
lstrcpyn(notifyData.szInfo, WXSTRINGCAST message, sizeof(notifyData.szInfo));
|
||||
lstrcpyn(notifyData.szInfoTitle, WXSTRINGCAST title, sizeof(notifyData.szInfoTitle));
|
||||
lstrcpyn(notifyData.szTip, WXSTRINGCAST wxEmptyString, sizeof(notifyData.szTip));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue