From 0aea1c6c007b0134c03ebf2aa9cd5b2017c99542 Mon Sep 17 00:00:00 2001 From: Rom Walton Date: Fri, 27 Jan 2006 00:34:53 +0000 Subject: [PATCH] *** empty log message *** svn path=/trunk/boinc/; revision=9320 --- checkin_notes | 16 ++ clientgui/AccountInfoPage.cpp | 260 +++++++++-------- clientgui/AccountInfoPage.h | 24 +- clientgui/AccountKeyPage.cpp | 86 ++++-- clientgui/AccountKeyPage.h | 8 +- clientgui/AccountManagerInfoPage.cpp | 106 ++++--- clientgui/AccountManagerInfoPage.h | 9 +- clientgui/AccountManagerProcessingPage.cpp | 73 ++--- clientgui/AccountManagerProcessingPage.h | 4 +- clientgui/AccountManagerPropertiesPage.cpp | 63 +++-- clientgui/AccountManagerPropertiesPage.h | 4 +- clientgui/AccountManagerStatusPage.cpp | 134 ++++++--- clientgui/AccountManagerStatusPage.h | 16 +- clientgui/AlreadyAttachedPage.cpp | 39 ++- clientgui/AlreadyAttachedPage.h | 2 + clientgui/AlreadyExistsPage.cpp | 54 +++- clientgui/AlreadyExistsPage.h | 2 + clientgui/BOINCBaseWizard.cpp | 4 +- clientgui/BOINCBaseWizard.h | 2 +- clientgui/BOINCWizards.h | 9 +- clientgui/CompletionErrorPage.cpp | 99 ++++--- clientgui/CompletionErrorPage.h | 7 +- clientgui/CompletionPage.cpp | 208 +++++++------- clientgui/CompletionPage.h | 8 +- clientgui/CompletionRemovePage.cpp | 56 ++-- clientgui/CompletionRemovePage.h | 6 +- clientgui/CompletionUpdatePage.cpp | 56 ++-- clientgui/CompletionUpdatePage.h | 6 +- clientgui/NoInternetConnectionPage.cpp | 39 ++- clientgui/NoInternetConnectionPage.h | 2 + clientgui/NotDetectedPage.cpp | 75 ++--- clientgui/NotDetectedPage.h | 2 + clientgui/NotFoundPage.cpp | 38 ++- clientgui/NotFoundPage.h | 3 +- clientgui/ProjectInfoPage.cpp | 89 ++++-- clientgui/ProjectInfoPage.h | 9 +- clientgui/ProjectProcessingPage.cpp | 81 +++--- clientgui/ProjectProcessingPage.h | 4 +- clientgui/ProjectPropertiesPage.cpp | 42 +-- clientgui/ProjectPropertiesPage.h | 4 +- clientgui/ProxyInfoPage.cpp | 64 +++-- clientgui/ProxyInfoPage.h | 3 + clientgui/ProxyPage.cpp | 279 ++++++++++++------- clientgui/ProxyPage.h | 39 +-- clientgui/UnavailablePage.cpp | 57 ++-- clientgui/UnavailablePage.h | 2 + clientgui/WelcomePage.cpp | 310 ++++++++++++--------- clientgui/WelcomePage.h | 47 +--- clientgui/WizardAccountManager.cpp | 39 ++- clientgui/WizardAttachProject.cpp | 28 +- 50 files changed, 1566 insertions(+), 1051 deletions(-) diff --git a/checkin_notes b/checkin_notes index 874b969bde..8026f9de48 100755 --- a/checkin_notes +++ b/checkin_notes @@ -1042,3 +1042,19 @@ David 26 Jan 2006 client/ http_curl.C + +Rom 26 Jan 2006 + - Bug Fix: Overhaul the wizard control creation process. The RAD tool + we used broke the process into two parts and arranged things where + the bulk of the control creation and text assignment happened + during dialog contruction. This causes problems since not all of + the relevant data is available at dialog construction, such as + account manager name or project name. + + The new scheme creates all the controls during dialog creation and + sets the associated text to null. When the OnPageChanged event is + fired we'll go and make all the necessary changes to the control text + as well as hide and show the correct controls. + + clientgui/ + diff --git a/clientgui/AccountInfoPage.cpp b/clientgui/AccountInfoPage.cpp index af2d4c54dc..0a8caeff0e 100644 --- a/clientgui/AccountInfoPage.cpp +++ b/clientgui/AccountInfoPage.cpp @@ -77,16 +77,19 @@ bool CAccountInfoPage::Create( CBOINCBaseWizard* parent ) { ////@begin CAccountInfoPage member initialisation - m_AccountQuestion = NULL; - m_AccountManagerInformation = NULL; - m_AccountCreateCtrl = NULL; - m_AccountUseExistingCtrl = NULL; - m_AccountEmailAddressStaticCtrl = NULL; - m_AccountEmailAddressCtrl = NULL; - m_AccountPasswordStaticCtrl = NULL; - m_AccountPasswordCtrl = NULL; - m_AccountConfirmPasswordStaticCtrl = NULL; - m_AccountConfirmPasswordCtrl = NULL; + m_pTitleStaticCtrl = NULL; + m_pAccountQuestionStaticCtrl = NULL; + m_pAccountManagerInformationStaticCtrl = NULL; + m_pAccountCreateCtrl = NULL; + m_pAccountUseExistingCtrl = NULL; + m_pAccountInformationStaticCtrl = NULL; + m_pAccountEmailAddressStaticCtrl = NULL; + m_pAccountEmailAddressCtrl = NULL; + m_pAccountPasswordStaticCtrl = NULL; + m_pAccountPasswordCtrl = NULL; + m_pAccountConfirmPasswordStaticCtrl = NULL; + m_pAccountConfirmPasswordCtrl = NULL; + m_pAccountPasswordRequirmentsStaticCtrl = NULL; ////@end CAccountInfoPage member initialisation ////@begin CAccountInfoPage creation @@ -113,91 +116,78 @@ void CAccountInfoPage::CreateControls() wxBoxSizer* itemBoxSizer57 = new wxBoxSizer(wxVERTICAL); itemWizardPage56->SetSizer(itemBoxSizer57); - wxStaticText* itemStaticText58 = new wxStaticText; - itemStaticText58->Create( itemWizardPage56, wxID_STATIC, _("User information"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText58->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer57->Add(itemStaticText58, 0, wxALIGN_LEFT|wxGROW|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage56, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer57->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxGROW|wxALL, 5); - if (!IS_ACCOUNTMANAGERATTACHWIZARD() && IS_ACCOUNTMANAGERUPDATEWIZARD()) { - m_AccountQuestion = new wxStaticText; - m_AccountQuestion->Create( itemWizardPage56, wxID_STATIC, _T("Are you already running this project?"), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer57->Add(m_AccountQuestion, 0, wxALIGN_LEFT|wxALL, 5); + m_pAccountQuestionStaticCtrl = new wxStaticText; + m_pAccountQuestionStaticCtrl->Create( itemWizardPage56, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer57->Add(m_pAccountQuestionStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - wxFlexGridSizer* itemFlexGridSizer61 = new wxFlexGridSizer(1, 2, 0, 0); - itemFlexGridSizer61->AddGrowableCol(1); - itemBoxSizer57->Add(itemFlexGridSizer61, 0, wxGROW|wxALL, 5); + wxFlexGridSizer* itemFlexGridSizer61 = new wxFlexGridSizer(1, 2, 0, 0); + itemFlexGridSizer61->AddGrowableCol(1); + itemBoxSizer57->Add(itemFlexGridSizer61, 0, wxGROW|wxALL, 5); - m_AccountCreateCtrl = new wxRadioButton; - m_AccountCreateCtrl->Create( itemWizardPage56, ID_ACCOUNTCREATECTRL, _("&No, new user"), wxDefaultPosition, wxDefaultSize, wxRB_GROUP ); - m_AccountCreateCtrl->SetValue(TRUE); - itemFlexGridSizer61->Add(m_AccountCreateCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountCreateCtrl = new wxRadioButton; + m_pAccountCreateCtrl->Create( itemWizardPage56, ID_ACCOUNTCREATECTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxRB_GROUP ); + m_pAccountCreateCtrl->SetValue(TRUE); + itemFlexGridSizer61->Add(m_pAccountCreateCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_AccountUseExistingCtrl = new wxRadioButton; - m_AccountUseExistingCtrl->Create( itemWizardPage56, ID_ACCOUNTUSEEXISTINGCTRL, _("&Yes, existing user"), wxDefaultPosition, wxDefaultSize, 0 ); - m_AccountUseExistingCtrl->SetValue(FALSE); - itemFlexGridSizer61->Add(m_AccountUseExistingCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountUseExistingCtrl = new wxRadioButton; + m_pAccountUseExistingCtrl->Create( itemWizardPage56, ID_ACCOUNTUSEEXISTINGCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pAccountUseExistingCtrl->SetValue(FALSE); + itemFlexGridSizer61->Add(m_pAccountUseExistingCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); - wxString strText; - if (wxGetApp().GetBrand()->IsBranded() && - !wxGetApp().GetBrand()->GetAPWizardAccountInfoText().IsEmpty()) { - strText = wxGetApp().GetBrand()->GetAPWizardAccountInfoText(); - } + m_pAccountInformationStaticCtrl = new wxStaticText; + m_pAccountInformationStaticCtrl->Create( itemWizardPage56, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer57->Add(m_pAccountInformationStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText60 = new wxStaticText; - itemStaticText60->Create( itemWizardPage56, wxID_STATIC, strText, wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer57->Add(itemStaticText60, 0, wxALIGN_LEFT|wxALL, 5); + m_pAccountManagerInformationStaticCtrl = new wxStaticText; + m_pAccountManagerInformationStaticCtrl->Create( itemWizardPage56, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer57->Add(m_pAccountManagerInformationStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - } else { - m_AccountManagerInformation = new wxStaticText; - m_AccountManagerInformation->Create( itemWizardPage56, wxID_STATIC, _("Please provide the email address and password you used on\nthe website so that your projects and preferences can be retrieved."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer57->Add(m_AccountManagerInformation, 0, wxALIGN_LEFT|wxALL, 5); - - itemBoxSizer57->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - } + itemBoxSizer57->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); wxFlexGridSizer* itemFlexGridSizer64 = new wxFlexGridSizer(4, 2, 0, 0); itemFlexGridSizer64->AddGrowableCol(1); itemBoxSizer57->Add(itemFlexGridSizer64, 0, wxGROW|wxALL, 0); - m_AccountEmailAddressStaticCtrl = new wxStaticText; - m_AccountEmailAddressStaticCtrl->Create( itemWizardPage56, ID_ACCOUNTEMAILADDRESSSTATICCTRL, _("&Email address:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer64->Add(m_AccountEmailAddressStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountEmailAddressStaticCtrl = new wxStaticText; + m_pAccountEmailAddressStaticCtrl->Create( itemWizardPage56, ID_ACCOUNTEMAILADDRESSSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer64->Add(m_pAccountEmailAddressStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_AccountEmailAddressCtrl = new wxTextCtrl; - m_AccountEmailAddressCtrl->Create( itemWizardPage56, ID_ACCOUNTEMAILADDRESSCTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer64->Add(m_AccountEmailAddressCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountEmailAddressCtrl = new wxTextCtrl; + m_pAccountEmailAddressCtrl->Create( itemWizardPage56, ID_ACCOUNTEMAILADDRESSCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer64->Add(m_pAccountEmailAddressCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_AccountPasswordStaticCtrl = new wxStaticText; - m_AccountPasswordStaticCtrl->Create( itemWizardPage56, ID_ACCOUNTPASSWORDSTATICCTRL, _("&Password:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer64->Add(m_AccountPasswordStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountPasswordStaticCtrl = new wxStaticText; + m_pAccountPasswordStaticCtrl->Create( itemWizardPage56, ID_ACCOUNTPASSWORDSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer64->Add(m_pAccountPasswordStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_AccountPasswordCtrl = new wxTextCtrl; - m_AccountPasswordCtrl->Create( itemWizardPage56, ID_ACCOUNTPASSWORDCTRL, _T(""), wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); - itemFlexGridSizer64->Add(m_AccountPasswordCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountPasswordCtrl = new wxTextCtrl; + m_pAccountPasswordCtrl->Create( itemWizardPage56, ID_ACCOUNTPASSWORDCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); + itemFlexGridSizer64->Add(m_pAccountPasswordCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); - if (!IS_ACCOUNTMANAGERATTACHWIZARD() && !IS_ACCOUNTMANAGERUPDATEWIZARD()) { - m_AccountConfirmPasswordStaticCtrl = new wxStaticText; - m_AccountConfirmPasswordStaticCtrl->Create( itemWizardPage56, ID_ACCOUNTCONFIRMPASSWORDSTATICCTRL, _("C&onfirm password:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer64->Add(m_AccountConfirmPasswordStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountConfirmPasswordStaticCtrl = new wxStaticText; + m_pAccountConfirmPasswordStaticCtrl->Create( itemWizardPage56, ID_ACCOUNTCONFIRMPASSWORDSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer64->Add(m_pAccountConfirmPasswordStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_AccountConfirmPasswordCtrl = new wxTextCtrl; - m_AccountConfirmPasswordCtrl->Create( itemWizardPage56, ID_ACCOUNTCONFIRMPASSWORDCTRL, _T(""), wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); - itemFlexGridSizer64->Add(m_AccountConfirmPasswordCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); - } + m_pAccountConfirmPasswordCtrl = new wxTextCtrl; + m_pAccountConfirmPasswordCtrl->Create( itemWizardPage56, ID_ACCOUNTCONFIRMPASSWORDCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); + itemFlexGridSizer64->Add(m_pAccountConfirmPasswordCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); itemFlexGridSizer64->Add( 0, 0 ); - m_AccountPasswordRequirmentsCtrl = new wxStaticText; - m_AccountPasswordRequirmentsCtrl->Create( itemWizardPage56, ID_ACCOUNTREQUIREMENTSSTATICCTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 ); - m_AccountPasswordRequirmentsCtrl->SetFont(wxFont(7, wxDEFAULT, wxNORMAL, wxNORMAL, FALSE)); - itemFlexGridSizer64->Add(m_AccountPasswordRequirmentsCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountPasswordRequirmentsStaticCtrl = new wxStaticText; + m_pAccountPasswordRequirmentsStaticCtrl->Create( itemWizardPage56, ID_ACCOUNTREQUIREMENTSSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pAccountPasswordRequirmentsStaticCtrl->SetFont(wxFont(7, wxDEFAULT, wxNORMAL, wxNORMAL, FALSE)); + itemFlexGridSizer64->Add(m_pAccountPasswordRequirmentsStaticCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); // Set validators - m_AccountEmailAddressCtrl->SetValidator( CValidateEmailAddress(& m_strAccountEmailAddress) ); - m_AccountPasswordCtrl->SetValidator( wxTextValidator(wxFILTER_ASCII, &m_strAccountPassword) ); - if (!IS_ACCOUNTMANAGERATTACHWIZARD() && !IS_ACCOUNTMANAGERUPDATEWIZARD()) { - m_AccountConfirmPasswordCtrl->SetValidator( wxTextValidator(wxFILTER_ASCII, &m_strAccountConfirmPassword) ); - } + m_pAccountEmailAddressCtrl->SetValidator( CValidateEmailAddress(& m_strAccountEmailAddress) ); + m_pAccountPasswordCtrl->SetValidator( wxTextValidator(wxFILTER_ASCII, &m_strAccountPassword) ); + m_pAccountConfirmPasswordCtrl->SetValidator( wxTextValidator(wxFILTER_ASCII, &m_strAccountConfirmPassword) ); ////@end CAccountInfoPage content construction } @@ -222,7 +212,7 @@ wxWizardPageEx* CAccountInfoPage::GetNext() const return PAGE_TRANSITION_NEXT(ID_COMPLETIONERRORPAGE); } else if (IS_ATTACHTOPROJECTWIZARD()) { return PAGE_TRANSITION_NEXT(ID_PROJECTPROCESSINGPAGE); - } else if (IS_ACCOUNTMANAGERATTACHWIZARD()) { + } else if (IS_ACCOUNTMANAGERWIZARD()) { return PAGE_TRANSITION_NEXT(ID_ACCOUNTMANAGERPROCESSINGPAGE); } return NULL; @@ -265,27 +255,78 @@ wxIcon CAccountInfoPage::GetIconResource( const wxString& name ) * wxEVT_WIZARD_PAGE_CHANGED event handler for ID_ACCOUNTINFOPAGE */ -void CAccountInfoPage::OnPageChanged( wxWizardExEvent& event ) -{ +void CAccountInfoPage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pAccountQuestionStaticCtrl); + wxASSERT(m_pAccountManagerInformationStaticCtrl); + wxASSERT(m_pAccountCreateCtrl); + wxASSERT(m_pAccountUseExistingCtrl); + wxASSERT(m_pAccountInformationStaticCtrl); + wxASSERT(m_pAccountEmailAddressStaticCtrl); + wxASSERT(m_pAccountEmailAddressCtrl); + wxASSERT(m_pAccountPasswordStaticCtrl); + wxASSERT(m_pAccountPasswordCtrl); + wxASSERT(m_pAccountConfirmPasswordStaticCtrl); + wxASSERT(m_pAccountConfirmPasswordCtrl); + wxASSERT(m_pAccountPasswordRequirmentsStaticCtrl); + + static bool bRunOnce = true; if (bRunOnce) { bRunOnce = false; - if (!IS_ACCOUNTMANAGERATTACHWIZARD()) { - m_AccountCreateCtrl->SetValue(TRUE); - m_AccountUseExistingCtrl->SetValue(FALSE); + if (!IS_ACCOUNTMANAGERWIZARD()) { + m_pAccountCreateCtrl->SetValue(TRUE); + m_pAccountUseExistingCtrl->SetValue(FALSE); } } - if (((CBOINCBaseWizard*)GetParent())->project_config.account_creation_disabled) { - if (!IS_ACCOUNTMANAGERATTACHWIZARD()) { - m_AccountCreateCtrl->SetValue(false); - m_AccountUseExistingCtrl->SetValue(true); - m_AccountConfirmPasswordStaticCtrl->Hide(); - m_AccountConfirmPasswordCtrl->Hide(); + m_pTitleStaticCtrl->SetLabel( + _("User information") + ); - m_AccountCreateCtrl->Disable(); + if (!IS_ACCOUNTMANAGERWIZARD() && !IS_ACCOUNTMANAGERUPDATEWIZARD()) { + m_pAccountQuestionStaticCtrl->SetLabel( + _("Are you already running this project?") + ); + m_pAccountCreateCtrl->SetLabel( + _("&No, new user") + ); + m_pAccountUseExistingCtrl->SetLabel( + _("&Yes, existing user") + ); + if (wxGetApp().GetBrand()->IsBranded() && + !wxGetApp().GetBrand()->GetAPWizardAccountInfoText().IsEmpty()) { + m_pAccountInformationStaticCtrl->SetLabel( + wxGetApp().GetBrand()->GetAPWizardAccountInfoText() + ); + } + } else { + m_pAccountManagerInformationStaticCtrl->SetLabel( + _("Please provide the email address and password you used on\n" + "the website so that your projects and preferences can be retrieved.") + ); + } + + m_pAccountEmailAddressStaticCtrl->SetLabel( + _("&Email address:") + ); + m_pAccountPasswordStaticCtrl->SetLabel( + _("&Password:") + ); + m_pAccountConfirmPasswordStaticCtrl->SetLabel( + _("C&onfirm password:") + ); + + if (((CBOINCBaseWizard*)GetParent())->project_config.account_creation_disabled) { + if (!IS_ACCOUNTMANAGERWIZARD()) { + m_pAccountCreateCtrl->SetValue(false); + m_pAccountUseExistingCtrl->SetValue(true); + m_pAccountConfirmPasswordStaticCtrl->Hide(); + m_pAccountConfirmPasswordCtrl->Hide(); + + m_pAccountCreateCtrl->Disable(); } } @@ -295,27 +336,27 @@ void CAccountInfoPage::OnPageChanged( wxWizardExEvent& event ) _T("Are you already running %s?"), ((CBOINCBaseWizard*)GetParent())->project_name.c_str() ); - m_AccountQuestion->SetLabel(strQuestion); + m_pAccountQuestionStaticCtrl->SetLabel(strQuestion); } if (((CBOINCBaseWizard*)GetParent())->project_config.uses_username) { - if (m_AccountManagerInformation) { - m_AccountManagerInformation->SetLabel( + if (m_pAccountManagerInformationStaticCtrl) { + m_pAccountManagerInformationStaticCtrl->SetLabel( _("Please provide the username and password you used on\n" "the website so that your projects and preferences can be retrieved.") ); } - m_AccountEmailAddressStaticCtrl->SetLabel( + m_pAccountEmailAddressStaticCtrl->SetLabel( _("Username:") ); } else { - if (m_AccountManagerInformation) { - m_AccountManagerInformation->SetLabel( + if (m_pAccountManagerInformationStaticCtrl) { + m_pAccountManagerInformationStaticCtrl->SetLabel( _("Please provide the email address and password you used on\n" "the website so that your projects and preferences can be retrieved.") ); } - m_AccountEmailAddressStaticCtrl->SetLabel( + m_pAccountEmailAddressStaticCtrl->SetLabel( _("Email address:") ); } @@ -323,12 +364,12 @@ void CAccountInfoPage::OnPageChanged( wxWizardExEvent& event ) if (((CBOINCBaseWizard*)GetParent())->project_config.min_passwd_length) { wxString str; str.Printf(_("minimum length %d"), ((CBOINCBaseWizard*)GetParent())->project_config.min_passwd_length); - m_AccountPasswordRequirmentsCtrl->SetLabel( str ); + m_pAccountPasswordRequirmentsStaticCtrl->SetLabel( str ); } - Fit(); + m_pAccountEmailAddressCtrl->SetFocus(); - if (m_AccountEmailAddressCtrl) m_AccountEmailAddressCtrl->SetFocus(); + Fit(); } /*! @@ -340,11 +381,12 @@ void CAccountInfoPage::OnPageChanging( wxWizardExEvent& event ) if (event.GetDirection() == false) return; if (!CHECK_CLOSINGINPROGRESS()) { - wxString strTitle = wxT(""); + wxString strTitle; if (IS_ATTACHTOPROJECTWIZARD()) { strTitle = _("Attach to project"); - } - if (IS_ACCOUNTMANAGERATTACHWIZARD()) { + } else if (IS_ACCOUNTMANAGERWIZARD() && IS_ACCOUNTMANAGERUPDATEWIZARD()) { + strTitle = _("Update account manager"); + } else if (IS_ACCOUNTMANAGERWIZARD()) { strTitle = _("Attach to account manager"); } wxString strMessage = wxT(""); @@ -352,7 +394,7 @@ void CAccountInfoPage::OnPageChanging( wxWizardExEvent& event ) // Verify minimum password length unsigned int iMinLength = ((CBOINCBaseWizard*)GetParent())->project_config.min_passwd_length; - wxString strPassword = m_AccountPasswordCtrl->GetValue(); + wxString strPassword = m_pAccountPasswordCtrl->GetValue(); if (strPassword.Length() < iMinLength) { if (IS_ATTACHTOPROJECTWIZARD()) { strMessage.Printf( @@ -360,7 +402,7 @@ void CAccountInfoPage::OnPageChanging( wxWizardExEvent& event ) iMinLength ); } - if (IS_ACCOUNTMANAGERATTACHWIZARD()) { + if (IS_ACCOUNTMANAGERWIZARD()) { strMessage.Printf( _("The minimum password length for this account manager is %d. Please choose a different password."), iMinLength @@ -370,9 +412,9 @@ void CAccountInfoPage::OnPageChanging( wxWizardExEvent& event ) bDisplayError = true; } - if (!IS_ACCOUNTMANAGERATTACHWIZARD() && m_AccountCreateCtrl->GetValue()) { + if (!IS_ACCOUNTMANAGERWIZARD() && m_pAccountCreateCtrl->GetValue()) { // Verify that the password and confirmation password math. - if (m_AccountPasswordCtrl->GetValue() != m_AccountConfirmPasswordCtrl->GetValue()) { + if (m_pAccountPasswordCtrl->GetValue() != m_pAccountConfirmPasswordCtrl->GetValue()) { strMessage = _("The password and confirmation password do not match. Please type them again."); bDisplayError = true; } @@ -403,9 +445,9 @@ void CAccountInfoPage::OnCancel( wxWizardExEvent& event ) { */ void CAccountInfoPage::OnAccountUseExistingCtrlSelected( wxCommandEvent& event ) { - m_AccountConfirmPasswordStaticCtrl->Hide(); - m_AccountConfirmPasswordCtrl->Hide(); - m_AccountEmailAddressCtrl->SetFocus(); + m_pAccountConfirmPasswordStaticCtrl->Hide(); + m_pAccountConfirmPasswordCtrl->Hide(); + m_pAccountEmailAddressCtrl->SetFocus(); Fit(); } @@ -414,9 +456,9 @@ void CAccountInfoPage::OnAccountUseExistingCtrlSelected( wxCommandEvent& event ) */ void CAccountInfoPage::OnAccountCreateCtrlSelected( wxCommandEvent& event ) { - m_AccountConfirmPasswordStaticCtrl->Show(); - m_AccountConfirmPasswordCtrl->Show(); - m_AccountEmailAddressCtrl->SetFocus(); + m_pAccountConfirmPasswordStaticCtrl->Show(); + m_pAccountConfirmPasswordCtrl->Show(); + m_pAccountEmailAddressCtrl->SetFocus(); Fit(); } diff --git a/clientgui/AccountInfoPage.h b/clientgui/AccountInfoPage.h index 828301eebc..cf60664010 100644 --- a/clientgui/AccountInfoPage.h +++ b/clientgui/AccountInfoPage.h @@ -92,17 +92,19 @@ public: static bool ShowToolTips(); ////@begin CAccountInfoPage member variables - wxStaticText* m_AccountQuestion; - wxStaticText* m_AccountManagerInformation; - wxRadioButton* m_AccountCreateCtrl; - wxRadioButton* m_AccountUseExistingCtrl; - wxStaticText* m_AccountEmailAddressStaticCtrl; - wxTextCtrl* m_AccountEmailAddressCtrl; - wxStaticText* m_AccountPasswordStaticCtrl; - wxTextCtrl* m_AccountPasswordCtrl; - wxStaticText* m_AccountConfirmPasswordStaticCtrl; - wxTextCtrl* m_AccountConfirmPasswordCtrl; - wxStaticText* m_AccountPasswordRequirmentsCtrl; + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pAccountQuestionStaticCtrl; + wxStaticText* m_pAccountManagerInformationStaticCtrl; + wxRadioButton* m_pAccountCreateCtrl; + wxRadioButton* m_pAccountUseExistingCtrl; + wxStaticText* m_pAccountInformationStaticCtrl; + wxStaticText* m_pAccountEmailAddressStaticCtrl; + wxTextCtrl* m_pAccountEmailAddressCtrl; + wxStaticText* m_pAccountPasswordStaticCtrl; + wxTextCtrl* m_pAccountPasswordCtrl; + wxStaticText* m_pAccountConfirmPasswordStaticCtrl; + wxTextCtrl* m_pAccountConfirmPasswordCtrl; + wxStaticText* m_pAccountPasswordRequirmentsStaticCtrl; wxString m_strAccountEmailAddress; wxString m_strAccountPassword; wxString m_strAccountConfirmPassword; diff --git a/clientgui/AccountKeyPage.cpp b/clientgui/AccountKeyPage.cpp index e344b64978..c67476fcbf 100644 --- a/clientgui/AccountKeyPage.cpp +++ b/clientgui/AccountKeyPage.cpp @@ -71,8 +71,12 @@ CAccountKeyPage::CAccountKeyPage( CBOINCBaseWizard* parent ) bool CAccountKeyPage::Create( CBOINCBaseWizard* parent ) { ////@begin CAccountKeyPage member initialisation - m_AccountKeyStaticCtrl = NULL; - m_AccountKeyCtrl = NULL; + m_pTitleStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; + m_pAccountKeyExampleDescriptionStaticCtrl = NULL; + m_pAccountKeyExampleStaticCtrl = NULL; + m_pAccountKeyStaticCtrl = NULL; + m_pAccountKeyCtrl = NULL; ////@end CAccountKeyPage member initialisation ////@begin CAccountKeyPage creation @@ -99,29 +103,25 @@ void CAccountKeyPage::CreateControls() wxBoxSizer* itemBoxSizer45 = new wxBoxSizer(wxVERTICAL); itemWizardPage44->SetSizer(itemBoxSizer45); - wxStaticText* itemStaticText46 = new wxStaticText; - itemStaticText46->Create( itemWizardPage44, wxID_STATIC, _("Enter account key"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText46->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer45->Add(itemStaticText46, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage44, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer45->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); itemBoxSizer45->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText48 = new wxStaticText; - itemStaticText48->Create( itemWizardPage44, wxID_STATIC, _("This project uses an \"account key\" to identify you."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer45->Add(itemStaticText48, 0, wxALIGN_LEFT|wxALL, 5); + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage44, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer45->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText49 = new wxStaticText; - itemStaticText49->Create( itemWizardPage44, wxID_STATIC, _("Go to the project's web site to create an account. Your account\nkey will be emailed to you."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer45->Add(itemStaticText49, 0, wxALIGN_LEFT|wxALL, 5); + m_pAccountKeyExampleDescriptionStaticCtrl = new wxStaticText; + m_pAccountKeyExampleDescriptionStaticCtrl->Create( itemWizardPage44, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer45->Add(m_pAccountKeyExampleDescriptionStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText50 = new wxStaticText; - itemStaticText50->Create( itemWizardPage44, wxID_STATIC, _("An account key looks like:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer45->Add(itemStaticText50, 0, wxALIGN_LEFT|wxALL, 5); - - wxStaticText* itemStaticText51 = new wxStaticText; - itemStaticText51->Create( itemWizardPage44, wxID_STATIC, _("82412313ac88e9a3638f66ea82186948"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText51->SetFont(wxFont(8, wxSWISS, wxNORMAL, wxNORMAL, FALSE, _T("Courier New"))); - itemBoxSizer45->Add(itemStaticText51, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 0); + m_pAccountKeyExampleStaticCtrl = new wxStaticText; + m_pAccountKeyExampleStaticCtrl->Create( itemWizardPage44, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pAccountKeyExampleStaticCtrl->SetFont(wxFont(8, wxSWISS, wxNORMAL, wxNORMAL, FALSE, _T("Courier New"))); + itemBoxSizer45->Add(m_pAccountKeyExampleStaticCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 0); itemBoxSizer45->Add(5, 5, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 5); @@ -129,18 +129,17 @@ void CAccountKeyPage::CreateControls() itemFlexGridSizer53->AddGrowableCol(1); itemBoxSizer45->Add(itemFlexGridSizer53, 0, wxGROW|wxALL, 5); - m_AccountKeyStaticCtrl = new wxStaticText; - m_AccountKeyStaticCtrl->Create( itemWizardPage44, ID_ACCOUNTKEYSTATICCTRL, _("Account key:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer53->Add(m_AccountKeyStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountKeyStaticCtrl = new wxStaticText; + m_pAccountKeyStaticCtrl->Create( itemWizardPage44, ID_ACCOUNTKEYSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer53->Add(m_pAccountKeyStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_AccountKeyCtrl = new wxTextCtrl; - m_AccountKeyCtrl->Create( itemWizardPage44, ID_ACCOUNTKEYCTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer53->Add(m_AccountKeyCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAccountKeyCtrl = new wxTextCtrl; + m_pAccountKeyCtrl->Create( itemWizardPage44, ID_ACCOUNTKEYCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer53->Add(m_pAccountKeyCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); // Set validators - m_AccountKeyCtrl->SetValidator( CValidateAccountKey( & m_strAccountKey) ); + m_pAccountKeyCtrl->SetValidator( CValidateAccountKey( & m_strAccountKey) ); ////@end CAccountKeyPage content construction - } /*! @@ -205,7 +204,36 @@ wxIcon CAccountKeyPage::GetIconResource( const wxString& name ) */ void CAccountKeyPage::OnPageChanged( wxWizardExEvent& event ) { - if (m_AccountKeyCtrl) m_AccountKeyCtrl->SetFocus(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); + wxASSERT(m_pAccountKeyExampleDescriptionStaticCtrl); + wxASSERT(m_pAccountKeyExampleStaticCtrl); + wxASSERT(m_pAccountKeyStaticCtrl); + wxASSERT(m_pAccountKeyCtrl); + + m_pTitleStaticCtrl->SetLabel( + _("Enter account key") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("This project uses an \"account key\" to identify you.\n" + "\n" + "Go to the project's web site to create an account. Your account\n" + "key will be emailed to you.") + ); + m_pAccountKeyExampleDescriptionStaticCtrl->SetLabel( + _("An account key looks like:") + ); + m_pAccountKeyExampleStaticCtrl->SetLabel( + _("82412313ac88e9a3638f66ea82186948") + ); + m_pAccountKeyStaticCtrl->SetLabel( + _("Account key:") + ); + + m_pAccountKeyCtrl->SetFocus(); + Fit(); } /*! diff --git a/clientgui/AccountKeyPage.h b/clientgui/AccountKeyPage.h index ac0cb1d55a..5b65dea82e 100644 --- a/clientgui/AccountKeyPage.h +++ b/clientgui/AccountKeyPage.h @@ -77,8 +77,12 @@ public: static bool ShowToolTips(); ////@begin CAccountKeyPage member variables - wxStaticText* m_AccountKeyStaticCtrl; - wxTextCtrl* m_AccountKeyCtrl; + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; + wxStaticText* m_pAccountKeyExampleDescriptionStaticCtrl; + wxStaticText* m_pAccountKeyExampleStaticCtrl; + wxStaticText* m_pAccountKeyStaticCtrl; + wxTextCtrl* m_pAccountKeyCtrl; wxString m_strAccountKey; ////@end CAccountKeyPage member variables }; diff --git a/clientgui/AccountManagerInfoPage.cpp b/clientgui/AccountManagerInfoPage.cpp index 23f6f9e443..09fdd4b3c9 100644 --- a/clientgui/AccountManagerInfoPage.cpp +++ b/clientgui/AccountManagerInfoPage.cpp @@ -73,8 +73,13 @@ CAccountManagerInfoPage::CAccountManagerInfoPage( CBOINCBaseWizard* parent ) bool CAccountManagerInfoPage::Create( CBOINCBaseWizard* parent ) { ////@begin CAccountManagerInfoPage member initialisation - m_AccountManagerUrlStaticCtrl = NULL; - m_AccountManagerUrlCtrl = NULL; + m_pTitleStaticCtrl = NULL; + m_pDescriptionStaticCtrl = NULL; + m_pDescription2StaticCtrl = NULL; + m_pProjectUrlStaticCtrl = NULL; + m_pProjectUrlCtrl = NULL; + m_pBOINCPromoStaticCtrl = NULL; + m_pBOINCPromoUrlCtrl = NULL; ////@end CAccountManagerInfoPage member initialisation ////@begin CAccountManagerInfoPage creation @@ -94,52 +99,52 @@ bool CAccountManagerInfoPage::Create( CBOINCBaseWizard* parent ) void CAccountManagerInfoPage::CreateControls() { ////@begin CAccountManagerInfoPage content construction - CAccountManagerInfoPage* itemWizardPage21 = this; + CAccountManagerInfoPage* itemWizardPage23 = this; - wxBoxSizer* itemBoxSizer22 = new wxBoxSizer(wxVERTICAL); - itemWizardPage21->SetSizer(itemBoxSizer22); + wxBoxSizer* itemBoxSizer24 = new wxBoxSizer(wxVERTICAL); + itemWizardPage23->SetSizer(itemBoxSizer24); - wxStaticText* itemStaticText23 = new wxStaticText; - itemStaticText23->Create( itemWizardPage21, wxID_STATIC, _("Account Manager URL"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText23->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer22->Add(itemStaticText23, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage23, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer24->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText24 = new wxStaticText; - itemStaticText24->Create( itemWizardPage21, wxID_STATIC, _("Enter the URL of the account manager's web site."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer22->Add(itemStaticText24, 0, wxALIGN_LEFT|wxALL, 5); + m_pDescriptionStaticCtrl = new wxStaticText; + m_pDescriptionStaticCtrl->Create( itemWizardPage23, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer24->Add(m_pDescriptionStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer22->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer24->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText26 = new wxStaticText; - itemStaticText26->Create( itemWizardPage21, wxID_STATIC, _("You can copy and paste the URL from your browser's address bar."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer22->Add(itemStaticText26, 0, wxALIGN_LEFT|wxALL, 5); + m_pDescription2StaticCtrl = new wxStaticText; + m_pDescription2StaticCtrl->Create( itemWizardPage23, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer24->Add(m_pDescription2StaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer22->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer24->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - wxFlexGridSizer* itemFlexGridSizer28 = new wxFlexGridSizer(1, 2, 0, 0); - itemFlexGridSizer28->AddGrowableCol(1); - itemBoxSizer22->Add(itemFlexGridSizer28, 0, wxALIGN_LEFT|wxALL, 5); + wxFlexGridSizer* itemFlexGridSizer30 = new wxFlexGridSizer(1, 2, 0, 0); + itemFlexGridSizer30->AddGrowableCol(1); + itemBoxSizer24->Add(itemFlexGridSizer30, 0, wxALIGN_LEFT|wxALL, 5); - m_AccountManagerUrlStaticCtrl = new wxStaticText; - m_AccountManagerUrlStaticCtrl->Create( itemWizardPage21, ID_PROJECTURLSTATICCTRL, _("Account Manager &URL:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer28->Add(m_AccountManagerUrlStaticCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pProjectUrlStaticCtrl = new wxStaticText; + m_pProjectUrlStaticCtrl->Create( itemWizardPage23, ID_PROJECTURLSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer30->Add(m_pProjectUrlStaticCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_AccountManagerUrlCtrl = new wxTextCtrl; - m_AccountManagerUrlCtrl->Create( itemWizardPage21, ID_PROJECTURLCTRL, _T(""), wxDefaultPosition, wxSize(200, -1), 0 ); - itemFlexGridSizer28->Add(m_AccountManagerUrlCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pProjectUrlCtrl = new wxTextCtrl; + m_pProjectUrlCtrl->Create( itemWizardPage23, ID_PROJECTURLCTRL, wxEmptyString, wxDefaultPosition, wxSize(200, -1), 0 ); + itemFlexGridSizer30->Add(m_pProjectUrlCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); - itemBoxSizer22->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer24->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText32 = new wxStaticText; - itemStaticText32->Create( itemWizardPage21, wxID_STATIC, _("For a list of BOINC-based account managers go to:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer22->Add(itemStaticText32, 0, wxALIGN_LEFT|wxALL, 5); + m_pBOINCPromoStaticCtrl = new wxStaticText; + m_pBOINCPromoStaticCtrl->Create( itemWizardPage23, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer24->Add(m_pBOINCPromoStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - wxHyperLink* itemHyperLink33 = new wxHyperLink; - itemHyperLink33->Create( itemWizardPage21, ID_BOINCHYPERLINK, wxT("http://boinc.berkeley.edu/"), wxDefaultPosition, wxDefaultSize, wxNO_BORDER ); - itemBoxSizer22->Add(itemHyperLink33, 0, wxALIGN_LEFT|wxALL, 5); + m_pBOINCPromoUrlCtrl = new wxHyperLink; + m_pBOINCPromoUrlCtrl->Create( itemWizardPage23, ID_BOINCHYPERLINK, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxNO_BORDER ); + itemBoxSizer24->Add(m_pBOINCPromoUrlCtrl, 0, wxALIGN_LEFT|wxALL, 5); // Set validators - m_AccountManagerUrlCtrl->SetValidator( CValidateURL( & m_strProjectURL) ); + m_pProjectUrlCtrl->SetValidator( CValidateURL( & m_strProjectURL) ); ////@end CAccountManagerInfoPage content construction } @@ -148,7 +153,38 @@ void CAccountManagerInfoPage::CreateControls() */ void CAccountManagerInfoPage::OnPageChanged( wxWizardExEvent& event ) { - if (m_AccountManagerUrlCtrl) m_AccountManagerUrlCtrl->SetFocus(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDescriptionStaticCtrl); + wxASSERT(m_pDescription2StaticCtrl); + wxASSERT(m_pProjectUrlStaticCtrl); + wxASSERT(m_pProjectUrlCtrl); + wxASSERT(m_pBOINCPromoStaticCtrl); + wxASSERT(m_pBOINCPromoUrlCtrl); + + m_pTitleStaticCtrl->SetLabel( + _("Account Manager URL") + ); + m_pDescriptionStaticCtrl->SetLabel( + _("Enter the URL of the account manager's web site.") + ); + m_pDescription2StaticCtrl->SetLabel( + _("You can copy and paste the URL from your browser's address bar.") + ); + m_pProjectUrlStaticCtrl->SetLabel( + _("Account Manager &URL:") + ); + m_pBOINCPromoStaticCtrl->SetLabel( + _("For a list of BOINC-based account managers go to:") + ); + m_pBOINCPromoUrlCtrl->SetLabel( + wxT("http://boinc.berkeley.edu/") + ); + + m_pProjectUrlCtrl->SetFocus(); + + Fit(); } /*! diff --git a/clientgui/AccountManagerInfoPage.h b/clientgui/AccountManagerInfoPage.h index 06d2302300..16f49474a0 100644 --- a/clientgui/AccountManagerInfoPage.h +++ b/clientgui/AccountManagerInfoPage.h @@ -80,8 +80,13 @@ public: static bool ShowToolTips(); ////@begin CAccountManagerInfoPage member variables - wxStaticText* m_AccountManagerUrlStaticCtrl; - wxTextCtrl* m_AccountManagerUrlCtrl; + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDescriptionStaticCtrl; + wxStaticText* m_pDescription2StaticCtrl; + wxStaticText* m_pProjectUrlStaticCtrl; + wxTextCtrl* m_pProjectUrlCtrl; + wxStaticText* m_pBOINCPromoStaticCtrl; + wxHyperLink* m_pBOINCPromoUrlCtrl; wxString m_strProjectURL; ////@end CAccountManagerInfoPage member variables }; diff --git a/clientgui/AccountManagerProcessingPage.cpp b/clientgui/AccountManagerProcessingPage.cpp index 1e29faabf0..356e58f2ab 100644 --- a/clientgui/AccountManagerProcessingPage.cpp +++ b/clientgui/AccountManagerProcessingPage.cpp @@ -97,7 +97,8 @@ CAccountManagerProcessingPage::CAccountManagerProcessingPage( CBOINCBaseWizard* bool CAccountManagerProcessingPage::Create( CBOINCBaseWizard* parent ) { ////@begin CAccountManagerProcessingPage member initialisation - m_ProgressIndicator = NULL; + m_pTitleStaticCtrl = NULL; + m_pProgressIndicator = NULL; ////@end CAccountManagerProcessingPage member initialisation m_bProjectCommunitcationsSucceeded = false; @@ -123,34 +124,33 @@ bool CAccountManagerProcessingPage::Create( CBOINCBaseWizard* parent ) void CAccountManagerProcessingPage::CreateControls() { ////@begin CAccountManagerProcessingPage content construction - CAccountManagerProcessingPage* itemWizardPage51 = this; + CAccountManagerProcessingPage* itemWizardPage36 = this; - wxBoxSizer* itemBoxSizer52 = new wxBoxSizer(wxVERTICAL); - itemWizardPage51->SetSizer(itemBoxSizer52); + wxBoxSizer* itemBoxSizer37 = new wxBoxSizer(wxVERTICAL); + itemWizardPage36->SetSizer(itemBoxSizer37); - wxStaticText* itemStaticText53 = new wxStaticText; - itemStaticText53->Create( itemWizardPage51, wxID_STATIC, _("Communicating with website\nPlease wait..."), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText53->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer52->Add(itemStaticText53, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage36, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer37->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer52->Add(5, 80, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer37->Add(5, 80, 0, wxALIGN_LEFT|wxALL, 5); - wxFlexGridSizer* itemFlexGridSizer55 = new wxFlexGridSizer(1, 3, 0, 0); - itemFlexGridSizer55->AddGrowableRow(0); - itemFlexGridSizer55->AddGrowableCol(0); - itemFlexGridSizer55->AddGrowableCol(1); - itemFlexGridSizer55->AddGrowableCol(2); - itemBoxSizer52->Add(itemFlexGridSizer55, 0, wxGROW|wxALL, 5); + wxFlexGridSizer* itemFlexGridSizer40 = new wxFlexGridSizer(1, 3, 0, 0); + itemFlexGridSizer40->AddGrowableRow(0); + itemFlexGridSizer40->AddGrowableCol(0); + itemFlexGridSizer40->AddGrowableCol(1); + itemFlexGridSizer40->AddGrowableCol(2); + itemBoxSizer37->Add(itemFlexGridSizer40, 0, wxGROW|wxALL, 5); - itemFlexGridSizer55->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); + itemFlexGridSizer40->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); - wxBitmap m_AttachProjectProgressBitmap(itemWizardPage51->GetBitmapResource(wxT("res/wizprogress01.xpm"))); - m_ProgressIndicator = new wxStaticBitmap; - m_ProgressIndicator->Create( itemWizardPage51, ID_PROGRESSCTRL, m_AttachProjectProgressBitmap, wxDefaultPosition, wxSize(184, 48), 0 ); - itemFlexGridSizer55->Add(m_ProgressIndicator, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); - - itemFlexGridSizer55->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); + wxBitmap itemBitmap41(GetBitmapResource(wxT("res/wizprogress01.xpm"))); + m_pProgressIndicator = new wxStaticBitmap; + m_pProgressIndicator->Create( itemWizardPage36, ID_PROGRESSCTRL, itemBitmap41, wxDefaultPosition, wxSize(184, 48), 0 ); + itemFlexGridSizer40->Add(m_pProgressIndicator, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); + itemFlexGridSizer40->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); ////@end CAccountManagerProcessingPage content construction } @@ -161,6 +161,13 @@ void CAccountManagerProcessingPage::CreateControls() void CAccountManagerProcessingPage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pProgressIndicator); + + m_pTitleStaticCtrl->SetLabel( + _("Communicating with website\nPlease wait...") + ); SetProjectCommunitcationsSucceeded(false); SetProjectUnavailable(false); @@ -169,6 +176,8 @@ void CAccountManagerProcessingPage::OnPageChanged( wxWizardExEvent& event ) CAccountManagerProcessingPageEvent TransitionEvent(wxEVT_ACCOUNTMANAGERPROCESSING_STATECHANGE, this); AddPendingEvent(TransitionEvent); + + Fit(); } /*! @@ -206,7 +215,7 @@ void CAccountManagerProcessingPage::OnStateChange( CAccountManagerProcessingPage ((CWizardAccountManager*)GetParent())->DisableNextButton(); ((CWizardAccountManager*)GetParent())->DisableBackButton(); - StartProgress(m_ProgressIndicator); + StartProgress(m_pProgressIndicator); SetNextState(ATTACHACCTMGR_ATTACHACCTMGR_BEGIN); break; case ATTACHACCTMGR_ATTACHACCTMGR_BEGIN: @@ -239,7 +248,7 @@ void CAccountManagerProcessingPage::OnStateChange( CAccountManagerProcessingPage tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.acct_mgr_rpc_poll(reply); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -250,21 +259,21 @@ void CAccountManagerProcessingPage::OnStateChange( CAccountManagerProcessingPage } else { SetProjectAttachSucceeded(false); if ((HTTP_STATUS_INTERNAL_SERVER_ERROR == reply.error_num) || CHECK_DEBUG_FLAG(WIZDEBUG_ERRPROJECTPROPERTIESURL)) { - strBuffer = ((CWizardAccountManager*)GetParent())->m_CompletionErrorPage->m_ServerMessages->GetLabel(); + strBuffer = ((CWizardAccountManager*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->GetLabel(); strBuffer += _T("An internal server error has occurred.\n"); - ((CWizardAccountManager*)GetParent())->m_CompletionErrorPage->m_ServerMessages->SetLabel(strBuffer); + ((CWizardAccountManager*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->SetLabel(strBuffer); } else { - strBuffer = ((CWizardAccountManager*)GetParent())->m_CompletionErrorPage->m_ServerMessages->GetLabel(); + strBuffer = ((CWizardAccountManager*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->GetLabel(); for (i=0; im_CompletionErrorPage->m_ServerMessages->SetLabel(strBuffer); + ((CWizardAccountManager*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->SetLabel(strBuffer); } } SetNextState(ATTACHACCTMGR_CLEANUP); break; case ATTACHACCTMGR_CLEANUP: - FinishProgress(m_ProgressIndicator); + FinishProgress(m_pProgressIndicator); SetNextState(ATTACHACCTMGR_END); break; default: @@ -303,15 +312,15 @@ wxWizardPageEx* CAccountManagerProcessingPage::GetNext() const if (CHECK_CLOSINGINPROGRESS()) { // Cancel Event Detected return PAGE_TRANSITION_NEXT(ID_COMPLETIONERRORPAGE); - } else if (GetProjectAttachSucceeded() && IS_ACCOUNTMANAGERATTACHWIZARD()) { - // We were successful in creating or retrieving an account - return PAGE_TRANSITION_NEXT(ID_COMPLETIONPAGE); } else if (GetProjectAttachSucceeded() && IS_ACCOUNTMANAGERUPDATEWIZARD()) { // We were successful in updating the client account return PAGE_TRANSITION_NEXT(ID_COMPLETIONUPDATEPAGE); } else if (GetProjectAttachSucceeded() && IS_ACCOUNTMANAGERREMOVEWIZARD()) { // We were successful in removing the client from the account manager return PAGE_TRANSITION_NEXT(ID_COMPLETIONREMOVEPAGE); + } else if (GetProjectAttachSucceeded()) { + // We were successful in creating or retrieving an account + return PAGE_TRANSITION_NEXT(ID_COMPLETIONPAGE); } else { // The project much be down for maintenance return PAGE_TRANSITION_NEXT(ID_COMPLETIONERRORPAGE); diff --git a/clientgui/AccountManagerProcessingPage.h b/clientgui/AccountManagerProcessingPage.h index f11315ef46..6414cb3383 100644 --- a/clientgui/AccountManagerProcessingPage.h +++ b/clientgui/AccountManagerProcessingPage.h @@ -130,9 +130,9 @@ public: void FinishProgress(wxStaticBitmap* pBitmap); ////@begin CAccountManagerProcessingPage member variables - wxStaticBitmap* m_ProgressIndicator; + wxStaticText* m_pTitleStaticCtrl; + wxStaticBitmap* m_pProgressIndicator; ////@end CAccountManagerProcessingPage member variables - bool m_bProjectCommunitcationsSucceeded; bool m_bProjectUnavailable; bool m_bProjectAccountAlreadyExists; diff --git a/clientgui/AccountManagerPropertiesPage.cpp b/clientgui/AccountManagerPropertiesPage.cpp index f5a43997c4..34e6c8e9bb 100644 --- a/clientgui/AccountManagerPropertiesPage.cpp +++ b/clientgui/AccountManagerPropertiesPage.cpp @@ -96,7 +96,8 @@ CAccountManagerPropertiesPage::CAccountManagerPropertiesPage( CBOINCBaseWizard* bool CAccountManagerPropertiesPage::Create( CBOINCBaseWizard* parent ) { ////@begin CAccountManagerPropertiesPage member initialisation - m_ProgressIndicator = NULL; + m_pTitleStaticCtrl = NULL; + m_pProgressIndicator = NULL; ////@end CAccountManagerPropertiesPage member initialisation m_bProjectPropertiesSucceeded = false; @@ -126,34 +127,33 @@ bool CAccountManagerPropertiesPage::Create( CBOINCBaseWizard* parent ) void CAccountManagerPropertiesPage::CreateControls() { ////@begin CAccountManagerPropertiesPage content construction - CAccountManagerPropertiesPage* itemWizardPage34 = this; + CAccountManagerPropertiesPage* itemWizardPage36 = this; - wxBoxSizer* itemBoxSizer35 = new wxBoxSizer(wxVERTICAL); - itemWizardPage34->SetSizer(itemBoxSizer35); + wxBoxSizer* itemBoxSizer37 = new wxBoxSizer(wxVERTICAL); + itemWizardPage36->SetSizer(itemBoxSizer37); - wxStaticText* itemStaticText36 = new wxStaticText; - itemStaticText36->Create( itemWizardPage34, wxID_STATIC, _("Communicating with website\nPlease wait..."), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText36->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer35->Add(itemStaticText36, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage36, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer37->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer35->Add(5, 80, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer37->Add(5, 80, 0, wxALIGN_LEFT|wxALL, 5); - wxFlexGridSizer* itemFlexGridSizer38 = new wxFlexGridSizer(1, 3, 0, 0); - itemFlexGridSizer38->AddGrowableRow(0); - itemFlexGridSizer38->AddGrowableCol(0); - itemFlexGridSizer38->AddGrowableCol(1); - itemFlexGridSizer38->AddGrowableCol(2); - itemBoxSizer35->Add(itemFlexGridSizer38, 0, wxGROW|wxALL, 5); + wxFlexGridSizer* itemFlexGridSizer40 = new wxFlexGridSizer(1, 3, 0, 0); + itemFlexGridSizer40->AddGrowableRow(0); + itemFlexGridSizer40->AddGrowableCol(0); + itemFlexGridSizer40->AddGrowableCol(1); + itemFlexGridSizer40->AddGrowableCol(2); + itemBoxSizer37->Add(itemFlexGridSizer40, 0, wxGROW|wxALL, 5); - itemFlexGridSizer38->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); + itemFlexGridSizer40->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); - wxBitmap m_ProjectPropertiesProgressBitmap(itemWizardPage34->GetBitmapResource(wxT("res/wizprogress01.xpm"))); - m_ProgressIndicator = new wxStaticBitmap; - m_ProgressIndicator->Create( itemWizardPage34, ID_PROGRESSCTRL, m_ProjectPropertiesProgressBitmap, wxDefaultPosition, wxSize(184, 48), 0 ); - itemFlexGridSizer38->Add(m_ProgressIndicator, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); - - itemFlexGridSizer38->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); + wxBitmap itemBitmap41(GetBitmapResource(wxT("res/wizprogress01.xpm"))); + m_pProgressIndicator = new wxStaticBitmap; + m_pProgressIndicator->Create( itemWizardPage36, ID_PROGRESSCTRL, itemBitmap41, wxDefaultPosition, wxSize(184, 48), 0 ); + itemFlexGridSizer40->Add(m_pProgressIndicator, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); + itemFlexGridSizer40->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); ////@end CAccountManagerPropertiesPage content construction } @@ -165,6 +165,13 @@ void CAccountManagerPropertiesPage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pProgressIndicator); + + m_pTitleStaticCtrl->SetLabel( + _("Communicating with website\nPlease wait...") + ); + SetProjectPropertiesSucceeded(false); SetProjectPropertiesURLFailure(false); SetProjectAccountCreationDisabled(false); @@ -176,6 +183,8 @@ void CAccountManagerPropertiesPage::OnPageChanged( wxWizardExEvent& event ) CAccountManagerPropertiesPageEvent TransitionEvent(wxEVT_ACCOUNTMANAGERPROPERTIES_STATECHANGE, this); AddPendingEvent(TransitionEvent); + + Fit(); } /*! @@ -208,7 +217,7 @@ void CAccountManagerPropertiesPage::OnStateChange( CAccountManagerPropertiesPage case ACCTMGRPROP_INIT: ((CWizardAccountManager*)GetParent())->DisableNextButton(); ((CWizardAccountManager*)GetParent())->DisableBackButton(); - StartProgress(m_ProgressIndicator); + StartProgress(m_pProgressIndicator); SetNextState(ACCTMGRPROP_RETRPROJECTPROPERTIES_BEGIN); break; case ACCTMGRPROP_RETRPROJECTPROPERTIES_BEGIN: @@ -234,7 +243,7 @@ void CAccountManagerPropertiesPage::OnStateChange( CAccountManagerPropertiesPage dtCurrentExecutionTime = wxDateTime::Now(); tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.get_project_config_poll(*pc); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -300,7 +309,7 @@ void CAccountManagerPropertiesPage::OnStateChange( CAccountManagerPropertiesPage dtCurrentExecutionTime = wxDateTime::Now(); tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.lookup_website_poll(); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -334,7 +343,7 @@ void CAccountManagerPropertiesPage::OnStateChange( CAccountManagerPropertiesPage dtCurrentExecutionTime = wxDateTime::Now(); tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.lookup_website_poll(); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -362,7 +371,7 @@ void CAccountManagerPropertiesPage::OnStateChange( CAccountManagerPropertiesPage SetNextState(ACCTMGRPROP_CLEANUP); break; case ACCTMGRPROP_CLEANUP: - FinishProgress(m_ProgressIndicator); + FinishProgress(m_pProgressIndicator); SetNextState(ACCTMGRPROP_END); break; default: diff --git a/clientgui/AccountManagerPropertiesPage.h b/clientgui/AccountManagerPropertiesPage.h index c5bcd84be0..2beddc47dc 100644 --- a/clientgui/AccountManagerPropertiesPage.h +++ b/clientgui/AccountManagerPropertiesPage.h @@ -145,9 +145,9 @@ public: void FinishProgress(wxStaticBitmap* pBitmap); ////@begin CAccountManagerPropertiesPage member variables - wxStaticBitmap* m_ProgressIndicator; + wxStaticText* m_pTitleStaticCtrl; + wxStaticBitmap* m_pProgressIndicator; ////@end CAccountManagerPropertiesPage member variables - bool m_bProjectPropertiesSucceeded; bool m_bProjectPropertiesURLFailure; bool m_bProjectAccountCreationDisabled; diff --git a/clientgui/AccountManagerStatusPage.cpp b/clientgui/AccountManagerStatusPage.cpp index abc66d333b..472c6004c7 100644 --- a/clientgui/AccountManagerStatusPage.cpp +++ b/clientgui/AccountManagerStatusPage.cpp @@ -75,6 +75,16 @@ CAccountManagerStatusPage::CAccountManagerStatusPage( CBOINCBaseWizard* parent ) bool CAccountManagerStatusPage::Create( CBOINCBaseWizard* parent ) { ////@begin CAccountManagerStatusPage member initialisation + m_pTitleStaticCtrl = NULL; + m_pAcctManagerDescriptionStaticCtrl = NULL; + m_pAcctManagerNameStaticCtrl = NULL; + m_pAcctManagerNameCtrl = NULL; + m_pAcctManagerURLStaticCtrl = NULL; + m_pAcctManagerURLCtrl = NULL; + m_pAcctManagerUpdateCtrl = NULL; + m_pAcctManagerUpdateDescriptionStaticCtrl = NULL; + m_pAcctManagerRemoveCtrl = NULL; + m_pAcctManagerRemoveDescriptionStaticCtrl = NULL; ////@end CAccountManagerStatusPage member initialisation ////@begin CAccountManagerStatusPage creation @@ -100,69 +110,69 @@ void CAccountManagerStatusPage::CreateControls() wxBoxSizer* itemBoxSizer112 = new wxBoxSizer(wxVERTICAL); itemWizardPage111->SetSizer(itemBoxSizer112); - wxStaticText* itemStaticText113 = new wxStaticText; - itemStaticText113->Create( itemWizardPage111, wxID_STATIC, _("Account Manager"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText113->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer112->Add(itemStaticText113, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage111, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer112->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); itemBoxSizer112->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText4 = new wxStaticText; - itemStaticText4->Create( itemWizardPage111, wxID_STATIC, _("Your current account manager is:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer112->Add(itemStaticText4, 0, wxALIGN_LEFT|wxALL|wxADJUST_MINSIZE, 5); + m_pAcctManagerDescriptionStaticCtrl = new wxStaticText; + m_pAcctManagerDescriptionStaticCtrl->Create( itemWizardPage111, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer112->Add(m_pAcctManagerDescriptionStaticCtrl, 0, wxALIGN_LEFT|wxALL|wxADJUST_MINSIZE, 5); wxFlexGridSizer* itemFlexGridSizer5 = new wxFlexGridSizer(2, 2, 0, 0); itemBoxSizer112->Add(itemFlexGridSizer5, 0, wxALIGN_LEFT|wxALL|wxADJUST_MINSIZE, 5); - wxStaticText* itemStaticText6 = new wxStaticText; - itemStaticText6->Create( itemWizardPage111, wxID_STATIC, _("Name:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer5->Add(itemStaticText6, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL|wxADJUST_MINSIZE, 5); + m_pAcctManagerNameStaticCtrl = new wxStaticText; + m_pAcctManagerNameStaticCtrl->Create( itemWizardPage111, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer5->Add(m_pAcctManagerNameStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL|wxADJUST_MINSIZE, 5); - m_AcctManagerNameCtrl = new wxStaticText; - m_AcctManagerNameCtrl->Create( itemWizardPage111, ID_ACCTMANAGERNAMECTRL, _("foo"), wxDefaultPosition, wxSize(200, -1), 0 ); - itemFlexGridSizer5->Add(m_AcctManagerNameCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAcctManagerNameCtrl = new wxStaticText; + m_pAcctManagerNameCtrl->Create( itemWizardPage111, ID_ACCTMANAGERNAMECTRL, wxEmptyString, wxDefaultPosition, wxSize(200, -1), 0 ); + itemFlexGridSizer5->Add(m_pAcctManagerNameCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); - wxStaticText* itemStaticText8 = new wxStaticText; - itemStaticText8->Create( itemWizardPage111, wxID_STATIC, _("URL:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer5->Add(itemStaticText8, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL|wxADJUST_MINSIZE, 5); + m_pAcctManagerURLStaticCtrl = new wxStaticText; + m_pAcctManagerURLStaticCtrl->Create( itemWizardPage111, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer5->Add(m_pAcctManagerURLStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL|wxADJUST_MINSIZE, 5); - m_AcctManagerURLCtrl = new wxHyperLink; - m_AcctManagerURLCtrl->Create( itemWizardPage111, ID_ACCTMANAGERLINKCTRL, wxT("http://a/b/c"), wxDefaultPosition, wxSize(200, -1), 0 ); - itemFlexGridSizer5->Add(m_AcctManagerURLCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAcctManagerURLCtrl = new wxHyperLink; + m_pAcctManagerURLCtrl->Create( itemWizardPage111, ID_ACCTMANAGERLINKCTRL, wxEmptyString, wxDefaultPosition, wxSize(200, -1), 0 ); + itemFlexGridSizer5->Add(m_pAcctManagerURLCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); itemBoxSizer112->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - m_AcctManagerUpdateCtrl = new wxRadioButton; - m_AcctManagerUpdateCtrl->Create( itemWizardPage111, ID_ACCTMANAGERUPDATECTRL, _("Update"), wxDefaultPosition, wxDefaultSize, 0 ); - m_AcctManagerUpdateCtrl->SetValue(FALSE); - itemBoxSizer112->Add(m_AcctManagerUpdateCtrl, 0, wxALIGN_LEFT|wxALL, 5); + m_pAcctManagerUpdateCtrl = new wxRadioButton; + m_pAcctManagerUpdateCtrl->Create( itemWizardPage111, ID_ACCTMANAGERUPDATECTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pAcctManagerUpdateCtrl->SetValue(FALSE); + itemBoxSizer112->Add(m_pAcctManagerUpdateCtrl, 0, wxALIGN_LEFT|wxALL, 5); wxBoxSizer* itemBoxSizer12 = new wxBoxSizer(wxHORIZONTAL); itemBoxSizer112->Add(itemBoxSizer12, 0, wxALIGN_LEFT|wxALL, 0); itemBoxSizer12->Add(5, 5, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); - wxStaticText* itemStaticText14 = new wxStaticText; - itemStaticText14->Create( itemWizardPage111, wxID_STATIC, _("Get latest settings from account manager."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer12->Add(itemStaticText14, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAcctManagerUpdateDescriptionStaticCtrl = new wxStaticText; + m_pAcctManagerUpdateDescriptionStaticCtrl->Create( itemWizardPage111, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer12->Add(m_pAcctManagerUpdateDescriptionStaticCtrl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_AcctManagerRemoveCtrl = new wxRadioButton; - m_AcctManagerRemoveCtrl->Create( itemWizardPage111, ID_ACCTMANAGERREMOVECTRL, _("Remove"), wxDefaultPosition, wxDefaultSize, 0 ); - m_AcctManagerRemoveCtrl->SetValue(FALSE); - itemBoxSizer112->Add(m_AcctManagerRemoveCtrl, 0, wxALIGN_LEFT|wxALL, 5); + m_pAcctManagerRemoveCtrl = new wxRadioButton; + m_pAcctManagerRemoveCtrl->Create( itemWizardPage111, ID_ACCTMANAGERREMOVECTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pAcctManagerRemoveCtrl->SetValue(FALSE); + itemBoxSizer112->Add(m_pAcctManagerRemoveCtrl, 0, wxALIGN_LEFT|wxALL, 5); wxBoxSizer* itemBoxSizer16 = new wxBoxSizer(wxHORIZONTAL); itemBoxSizer112->Add(itemBoxSizer16, 0, wxALIGN_LEFT|wxALL, 0); itemBoxSizer16->Add(5, 5, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); - wxStaticText* itemStaticText18 = new wxStaticText; - itemStaticText18->Create( itemWizardPage111, wxID_STATIC, _("Stop using account manager."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer16->Add(itemStaticText18, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pAcctManagerRemoveDescriptionStaticCtrl = new wxStaticText; + m_pAcctManagerRemoveDescriptionStaticCtrl->Create( itemWizardPage111, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer16->Add(m_pAcctManagerRemoveDescriptionStaticCtrl, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5); // Set validators - m_AcctManagerNameCtrl->SetValidator( wxGenericValidator(& m_strAcctManagerName) ); - m_AcctManagerURLCtrl->SetValidator( wxGenericValidator(& m_strAcctManagerURL) ); + m_pAcctManagerNameCtrl->SetValidator( wxGenericValidator(& m_strAcctManagerName) ); + m_pAcctManagerURLCtrl->SetValidator( wxGenericValidator(& m_strAcctManagerURL) ); ////@end CAccountManagerStatusPage content construction } @@ -185,20 +195,18 @@ wxWizardPageEx* CAccountManagerStatusPage::GetNext() const if (CHECK_CLOSINGINPROGRESS()) { // Cancel Event Detected return PAGE_TRANSITION_NEXT(ID_COMPLETIONERRORPAGE); - } else if (m_AcctManagerUpdateCtrl->GetValue() && ((CWizardAccountManager*)GetParent())->m_bCredentialsCached) { + } else if (m_pAcctManagerUpdateCtrl->GetValue() && ((CWizardAccountManager*)GetParent())->m_bCredentialsCached) { // We are supposed to update and we already have credentials to the // account manager return PAGE_TRANSITION_NEXT(ID_ACCOUNTMANAGERPROCESSINGPAGE); - } else if (m_AcctManagerUpdateCtrl->GetValue()) { + } else if (m_pAcctManagerUpdateCtrl->GetValue()) { // We are supposed to update and we do not have credentials to the // account manager - ((CWizardAccountManager*)GetParent())->IsAccountManagerAttachWizard = false; ((CWizardAccountManager*)GetParent())->IsAccountManagerUpdateWizard = true; ((CWizardAccountManager*)GetParent())->IsAccountManagerRemoveWizard = false; return PAGE_TRANSITION_NEXT(ID_ACCOUNTINFOPAGE); - } else if (m_AcctManagerRemoveCtrl->GetValue()) { + } else if (m_pAcctManagerRemoveCtrl->GetValue()) { // We are supposed to the account manager - ((CWizardAccountManager*)GetParent())->IsAccountManagerAttachWizard = false; ((CWizardAccountManager*)GetParent())->IsAccountManagerUpdateWizard = false; ((CWizardAccountManager*)GetParent())->IsAccountManagerRemoveWizard = true; ((CWizardAccountManager*)GetParent())->m_AccountManagerInfoPage->SetProjectURL(wxEmptyString); @@ -250,9 +258,49 @@ wxIcon CAccountManagerStatusPage::GetIconResource( const wxString& name ) void CAccountManagerStatusPage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; - // Update the Acctount Manager URL and Name static text boxes - m_AcctManagerNameCtrl->SetLabel(((CWizardAccountManager*)GetParent())->m_strProjectName); - m_AcctManagerURLCtrl->SetLabel(((CWizardAccountManager*)GetParent())->m_AccountManagerInfoPage->GetProjectURL()); + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pAcctManagerDescriptionStaticCtrl); + wxASSERT(m_pAcctManagerNameStaticCtrl); + wxASSERT(m_pAcctManagerNameCtrl); + wxASSERT(m_pAcctManagerURLStaticCtrl); + wxASSERT(m_pAcctManagerURLCtrl); + wxASSERT(m_pAcctManagerUpdateCtrl); + wxASSERT(m_pAcctManagerUpdateDescriptionStaticCtrl); + wxASSERT(m_pAcctManagerRemoveCtrl); + wxASSERT(m_pAcctManagerRemoveDescriptionStaticCtrl); + + + m_pTitleStaticCtrl->SetLabel( + _("Account Manager") + ); + m_pAcctManagerDescriptionStaticCtrl->SetLabel( + _("Your current account manager is:") + ); + m_pAcctManagerNameStaticCtrl->SetLabel( + _("Name:") + ); + m_pAcctManagerNameCtrl->SetLabel( + ((CWizardAccountManager*)GetParent())->m_strProjectName + ); + m_pAcctManagerNameStaticCtrl->SetLabel( + _("URL:") + ); + m_pAcctManagerURLCtrl->SetLabel( + ((CWizardAccountManager*)GetParent())->m_AccountManagerInfoPage->GetProjectURL() + ); + m_pAcctManagerUpdateCtrl->SetLabel( + _("Update") + ); + m_pAcctManagerUpdateDescriptionStaticCtrl->SetLabel( + _("Get latest settings from account manager.") + ); + m_pAcctManagerRemoveCtrl->SetLabel( + _("Remove") + ); + m_pAcctManagerRemoveDescriptionStaticCtrl->SetLabel( + _("Stop using account manager.") + ); + Fit(); } diff --git a/clientgui/AccountManagerStatusPage.h b/clientgui/AccountManagerStatusPage.h index 3870281d8e..4d5a8f0ec9 100644 --- a/clientgui/AccountManagerStatusPage.h +++ b/clientgui/AccountManagerStatusPage.h @@ -74,13 +74,19 @@ public: static bool ShowToolTips(); ////@begin CAccountManagerStatusPage member variables - wxStaticText* m_AcctManagerNameCtrl; - wxHyperLink* m_AcctManagerURLCtrl; - wxRadioButton* m_AcctManagerUpdateCtrl; - wxRadioButton* m_AcctManagerRemoveCtrl; -////@end CAccountManagerStatusPage member variables + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pAcctManagerDescriptionStaticCtrl; + wxStaticText* m_pAcctManagerNameStaticCtrl; + wxStaticText* m_pAcctManagerNameCtrl; + wxStaticText* m_pAcctManagerURLStaticCtrl; + wxHyperLink* m_pAcctManagerURLCtrl; + wxRadioButton* m_pAcctManagerUpdateCtrl; + wxStaticText* m_pAcctManagerUpdateDescriptionStaticCtrl; + wxRadioButton* m_pAcctManagerRemoveCtrl; + wxStaticText* m_pAcctManagerRemoveDescriptionStaticCtrl; wxString m_strAcctManagerName; wxString m_strAcctManagerURL; +////@end CAccountManagerStatusPage member variables }; diff --git a/clientgui/AlreadyAttachedPage.cpp b/clientgui/AlreadyAttachedPage.cpp index 21d764c1a7..26ec115de1 100644 --- a/clientgui/AlreadyAttachedPage.cpp +++ b/clientgui/AlreadyAttachedPage.cpp @@ -70,6 +70,8 @@ CErrAlreadyAttachedPage::CErrAlreadyAttachedPage( CBOINCBaseWizard* parent ) bool CErrAlreadyAttachedPage::Create( CBOINCBaseWizard* parent ) { ////@begin CErrAlreadyAttachedPage member initialisation + m_pTitleStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; ////@end CErrAlreadyAttachedPage member initialisation ////@begin CErrAlreadyAttachedPage creation @@ -89,22 +91,21 @@ bool CErrAlreadyAttachedPage::Create( CBOINCBaseWizard* parent ) void CErrAlreadyAttachedPage::CreateControls() { ////@begin CErrAlreadyAttachedPage content construction - CErrAlreadyAttachedPage* itemWizardPage101 = this; + CErrAlreadyAttachedPage* itemWizardPage96 = this; - wxBoxSizer* itemBoxSizer102 = new wxBoxSizer(wxVERTICAL); - itemWizardPage101->SetSizer(itemBoxSizer102); + wxBoxSizer* itemBoxSizer97 = new wxBoxSizer(wxVERTICAL); + itemWizardPage96->SetSizer(itemBoxSizer97); - wxStaticText* itemStaticText103 = new wxStaticText; - itemStaticText103->Create( itemWizardPage101, wxID_STATIC, _("Already attached to project"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText103->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer102->Add(itemStaticText103, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer97->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer102->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - wxStaticText* itemStaticText105 = new wxStaticText; - itemStaticText105->Create( itemWizardPage101, wxID_STATIC, _("You are already attached to this project."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer102->Add(itemStaticText105, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer97->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer97->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); ////@end CErrAlreadyAttachedPage content construction } @@ -164,7 +165,19 @@ wxIcon CErrAlreadyAttachedPage::GetIconResource( const wxString& name ) */ void CErrAlreadyAttachedPage::OnPageChanged( wxWizardExEvent& event ) { - event.Skip(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); + + m_pTitleStaticCtrl->SetLabel( + _("Already attached to project") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("You are already attached to this project.") + ); + + Fit(); } /*! diff --git a/clientgui/AlreadyAttachedPage.h b/clientgui/AlreadyAttachedPage.h index 517a252cf0..6422be1a95 100644 --- a/clientgui/AlreadyAttachedPage.h +++ b/clientgui/AlreadyAttachedPage.h @@ -74,6 +74,8 @@ public: static bool ShowToolTips(); ////@begin CErrAlreadyAttachedPage member variables + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; ////@end CErrAlreadyAttachedPage member variables }; diff --git a/clientgui/AlreadyExistsPage.cpp b/clientgui/AlreadyExistsPage.cpp index 2ddb58c189..4833f11d18 100644 --- a/clientgui/AlreadyExistsPage.cpp +++ b/clientgui/AlreadyExistsPage.cpp @@ -70,6 +70,8 @@ CErrAlreadyExistsPage::CErrAlreadyExistsPage( CBOINCBaseWizard* parent ) bool CErrAlreadyExistsPage::Create( CBOINCBaseWizard* parent ) { ////@begin CErrAlreadyExistsPage member initialisation + m_pTitleStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; ////@end CErrAlreadyExistsPage member initialisation ////@begin CErrAlreadyExistsPage creation @@ -90,22 +92,21 @@ bool CErrAlreadyExistsPage::Create( CBOINCBaseWizard* parent ) void CErrAlreadyExistsPage::CreateControls() { ////@begin CErrAlreadyExistsPage content construction - CErrAlreadyExistsPage* itemWizardPage116 = this; + CErrAlreadyExistsPage* itemWizardPage96 = this; - wxBoxSizer* itemBoxSizer117 = new wxBoxSizer(wxVERTICAL); - itemWizardPage116->SetSizer(itemBoxSizer117); + wxBoxSizer* itemBoxSizer97 = new wxBoxSizer(wxVERTICAL); + itemWizardPage96->SetSizer(itemBoxSizer97); - wxStaticText* itemStaticText118 = new wxStaticText; - itemStaticText118->Create( itemWizardPage116, wxID_STATIC, _("Email address already in use"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText118->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer117->Add(itemStaticText118, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer97->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer117->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - wxStaticText* itemStaticText120 = new wxStaticText; - itemStaticText120->Create( itemWizardPage116, wxID_STATIC, _("An account with that email address already exists and has a\ndifferent password than the one you entered.\n\nPlease visit the project's web site and follow the instructions there."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer117->Add(itemStaticText120, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer97->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer97->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); ////@end CErrAlreadyExistsPage content construction } @@ -166,7 +167,34 @@ wxIcon CErrAlreadyExistsPage::GetIconResource( const wxString& name ) */ void CErrAlreadyExistsPage::OnPageChanged( wxWizardExEvent& event ) { - event.Skip(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); + + if (((CBOINCBaseWizard*)GetParent())->project_config.uses_username) { + m_pTitleStaticCtrl->SetLabel( + _("Username already in use") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("An account with that username already exists and has a\n" + "different password than the one you entered.\n" + "\n" + "Please visit the project's web site and follow the instructions there.") + ); + } else { + m_pTitleStaticCtrl->SetLabel( + _("Email address already in use") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("An account with that email address already exists and has a\n" + "different password than the one you entered.\n" + "\n" + "Please visit the project's web site and follow the instructions there.") + ); + } + + Fit(); } /*! diff --git a/clientgui/AlreadyExistsPage.h b/clientgui/AlreadyExistsPage.h index d97fb39473..b0ccd4bcf3 100644 --- a/clientgui/AlreadyExistsPage.h +++ b/clientgui/AlreadyExistsPage.h @@ -74,6 +74,8 @@ public: static bool ShowToolTips(); ////@begin CErrAlreadyExistsPage member variables + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; ////@end CErrAlreadyExistsPage member variables }; diff --git a/clientgui/BOINCBaseWizard.cpp b/clientgui/BOINCBaseWizard.cpp index a47d9dbe77..d816bb16fc 100644 --- a/clientgui/BOINCBaseWizard.cpp +++ b/clientgui/BOINCBaseWizard.cpp @@ -43,7 +43,7 @@ CBOINCBaseWizard::CBOINCBaseWizard() : wxWizardEx() { IsAttachToProjectWizard = false; - IsAccountManagerAttachWizard = false; + IsAccountManagerWizard = false; IsAccountManagerUpdateWizard = false; IsAccountManagerRemoveWizard = false; } @@ -52,7 +52,7 @@ CBOINCBaseWizard::CBOINCBaseWizard(wxWindow *parent, int id, const wxString& tit wxWizardEx(parent, id, title, bitmap, pos, style) { IsAttachToProjectWizard = false; - IsAccountManagerAttachWizard = false; + IsAccountManagerWizard = false; IsAccountManagerUpdateWizard = false; IsAccountManagerRemoveWizard = false; } diff --git a/clientgui/BOINCBaseWizard.h b/clientgui/BOINCBaseWizard.h index c629b58ac7..15f850da70 100644 --- a/clientgui/BOINCBaseWizard.h +++ b/clientgui/BOINCBaseWizard.h @@ -72,7 +72,7 @@ public: /// Wizard Detection bool IsAttachToProjectWizard; - bool IsAccountManagerAttachWizard; + bool IsAccountManagerWizard; bool IsAccountManagerUpdateWizard; bool IsAccountManagerRemoveWizard; diff --git a/clientgui/BOINCWizards.h b/clientgui/BOINCWizards.h index 7ffca5c9d5..d7144ff4a2 100644 --- a/clientgui/BOINCWizards.h +++ b/clientgui/BOINCWizards.h @@ -148,6 +148,11 @@ class CErrProxyInfoPage; class CErrProxyPage; +// Forward declare special controls +// +class wxHyperLink; + + // Diagnostics Tools // #define WIZDEBUG_ERRPROJECTPROPERTIES 0x00000001 @@ -174,8 +179,8 @@ class CErrProxyPage; #define IS_ATTACHTOPROJECTWIZARD() \ ((CBOINCBaseWizard*)GetParent())->IsAttachToProjectWizard -#define IS_ACCOUNTMANAGERATTACHWIZARD() \ - ((CBOINCBaseWizard*)GetParent())->IsAccountManagerAttachWizard +#define IS_ACCOUNTMANAGERWIZARD() \ + ((CBOINCBaseWizard*)GetParent())->IsAccountManagerWizard #define IS_ACCOUNTMANAGERUPDATEWIZARD() \ ((CBOINCBaseWizard*)GetParent())->IsAccountManagerUpdateWizard diff --git a/clientgui/CompletionErrorPage.cpp b/clientgui/CompletionErrorPage.cpp index 9b24e383f2..b46dd196b2 100644 --- a/clientgui/CompletionErrorPage.cpp +++ b/clientgui/CompletionErrorPage.cpp @@ -70,8 +70,11 @@ CCompletionErrorPage::CCompletionErrorPage( CBOINCBaseWizard* parent ) bool CCompletionErrorPage::Create( CBOINCBaseWizard* parent ) { ////@begin CCompletionErrorPage member initialisation - m_ServerMessagesStaticBoxSizer = NULL; - m_ServerMessages = NULL; + m_pTitleStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; + m_pServerMessagesDescriptionCtrl = NULL; + m_pServerMessagesStaticBoxSizerCtrl = NULL; + m_pServerMessagesCtrl = NULL; ////@end CCompletionErrorPage member initialisation ////@begin CCompletionErrorPage creation @@ -97,39 +100,26 @@ void CCompletionErrorPage::CreateControls() wxBoxSizer* itemBoxSizer86 = new wxBoxSizer(wxVERTICAL); itemWizardPage85->SetSizer(itemBoxSizer86); - wxStaticText* itemStaticText87 = new wxStaticText; - wxStaticText* itemStaticText89 = new wxStaticText; - if (IS_ATTACHTOPROJECTWIZARD()) { - itemStaticText87->Create( itemWizardPage85, wxID_STATIC, _("Failed to attach to project"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText87->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer86->Add(itemStaticText87, 0, wxALIGN_LEFT|wxALL, 5); - - itemBoxSizer86->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - itemStaticText89->Create( itemWizardPage85, wxID_STATIC, _("Click Finish to close."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer86->Add(itemStaticText89, 0, wxALIGN_LEFT|wxALL, 5); - } - - if (IS_ACCOUNTMANAGERATTACHWIZARD()) { - itemStaticText87->Create( itemWizardPage85, wxID_STATIC, _("Failed to attach to account manager"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText87->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer86->Add(itemStaticText87, 0, wxALIGN_LEFT|wxALL, 5); - - itemBoxSizer86->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - itemStaticText89->Create( itemWizardPage85, wxID_STATIC, _("Click Finish to close."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer86->Add(itemStaticText89, 0, wxALIGN_LEFT|wxALL, 5); - } + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage85, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer86->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); itemBoxSizer86->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticBox* itemStaticBoxSizer3Static = new wxStaticBox(itemWizardPage85, wxID_ANY, _("Messages from server:")); - m_ServerMessagesStaticBoxSizer = new wxStaticBoxSizer(itemStaticBoxSizer3Static, wxVERTICAL); - itemBoxSizer86->Add(m_ServerMessagesStaticBoxSizer, 0, wxGROW|wxALL, 5); + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage85, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer86->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - m_ServerMessages = new wxStaticText; - m_ServerMessages->Create( itemWizardPage85, wxID_STATIC, wxT(""), wxDefaultPosition, wxDefaultSize, 0 ); - m_ServerMessagesStaticBoxSizer->Add(m_ServerMessages, 0, wxGROW|wxALL, 5); + itemBoxSizer86->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + + m_pServerMessagesDescriptionCtrl = new wxStaticBox(itemWizardPage85, wxID_ANY, wxEmptyString); + m_pServerMessagesStaticBoxSizerCtrl = new wxStaticBoxSizer(m_pServerMessagesDescriptionCtrl, wxVERTICAL); + itemBoxSizer86->Add(m_pServerMessagesStaticBoxSizerCtrl, 0, wxGROW|wxALL, 5); + + m_pServerMessagesCtrl = new wxStaticText; + m_pServerMessagesCtrl->Create( itemWizardPage85, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pServerMessagesStaticBoxSizerCtrl->Add(m_pServerMessagesCtrl, 0, wxGROW|wxALL, 5); ////@end CCompletionErrorPage content construction } @@ -193,13 +183,50 @@ wxIcon CCompletionErrorPage::GetIconResource( const wxString& name ) void CCompletionErrorPage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; - if (CHECK_CLOSINGINPROGRESS()) { - m_ServerMessagesStaticBoxSizer->GetStaticBox()->Hide(); - m_ServerMessages->Hide(); + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); + wxASSERT(m_pServerMessagesDescriptionCtrl); + wxASSERT(m_pServerMessagesStaticBoxSizerCtrl); + wxASSERT(m_pServerMessagesCtrl); + + if (IS_ATTACHTOPROJECTWIZARD()) { + m_pTitleStaticCtrl->SetLabel( + _("Failed to attach to project") + ); + } else if (IS_ACCOUNTMANAGERWIZARD()) { + if (IS_ACCOUNTMANAGERUPDATEWIZARD()) { + m_pTitleStaticCtrl->SetLabel( + _("Failed to update account manager") + ); + } else if (IS_ACCOUNTMANAGERUPDATEWIZARD()) { + m_pTitleStaticCtrl->SetLabel( + _("Failed to remove account manager") + ); + } else { + m_pTitleStaticCtrl->SetLabel( + _("Failed to attach to account manager") + ); + } } else { - m_ServerMessagesStaticBoxSizer->GetStaticBox()->Show(); - m_ServerMessages->Show(); + wxASSERT(FALSE); } + + m_pDirectionsStaticCtrl->SetLabel( + _("Click Finish to close.") + ); + m_pServerMessagesDescriptionCtrl->SetLabel( + _("Messages from server:") + ); + + if (CHECK_CLOSINGINPROGRESS()) { + m_pServerMessagesDescriptionCtrl->Hide(); + m_pServerMessagesCtrl->Hide(); + } else { + m_pServerMessagesDescriptionCtrl->Show(); + m_pServerMessagesCtrl->Show(); + } + + Fit(); } /*! diff --git a/clientgui/CompletionErrorPage.h b/clientgui/CompletionErrorPage.h index 706a847ecf..3d78072e13 100644 --- a/clientgui/CompletionErrorPage.h +++ b/clientgui/CompletionErrorPage.h @@ -74,8 +74,11 @@ public: static bool ShowToolTips(); ////@begin CCompletionErrorPage member variables - wxStaticBoxSizer* m_ServerMessagesStaticBoxSizer; - wxStaticText* m_ServerMessages; + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; + wxStaticBox* m_pServerMessagesDescriptionCtrl; + wxStaticBoxSizer* m_pServerMessagesStaticBoxSizerCtrl; + wxStaticText* m_pServerMessagesCtrl; ////@end CCompletionErrorPage member variables }; diff --git a/clientgui/CompletionPage.cpp b/clientgui/CompletionPage.cpp index ac77eab324..23cc6a07fe 100644 --- a/clientgui/CompletionPage.cpp +++ b/clientgui/CompletionPage.cpp @@ -74,10 +74,10 @@ CCompletionPage::CCompletionPage( CBOINCBaseWizard* parent ) bool CCompletionPage::Create( CBOINCBaseWizard* parent ) { ////@begin CCompletionPage member initialisation - m_CompletionTitle = NULL; - m_CompletionWelcome = NULL; - m_CompletionBrandedMessage = NULL; - m_CompletionMessage = NULL; + m_pCompletionTitle = NULL; + m_pCompletionWelcome = NULL; + m_pCompletionBrandedMessage = NULL; + m_pCompletionMessage = NULL; ////@end CCompletionPage member initialisation ////@begin CCompletionPage creation @@ -103,104 +103,22 @@ void CCompletionPage::CreateControls() wxBoxSizer* itemBoxSizer80 = new wxBoxSizer(wxVERTICAL); itemWizardPage79->SetSizer(itemBoxSizer80); - if (IS_ATTACHTOPROJECTWIZARD()) { + m_pCompletionTitle = new wxStaticText; + m_pCompletionTitle->Create( itemWizardPage79, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pCompletionTitle->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, wxT("Verdana"))); + itemBoxSizer80->Add(m_pCompletionTitle, 0, wxALIGN_LEFT|wxALL, 5); - wxString strTitle; - if (wxGetApp().GetBrand()->IsBranded() && - !wxGetApp().GetBrand()->GetAPWizardCompletionTitle().IsEmpty()) { - strTitle = wxGetApp().GetBrand()->GetAPWizardCompletionTitle(); - } else { - strTitle = _("Attached to project"); - } + m_pCompletionWelcome = new wxStaticText; + m_pCompletionWelcome->Create( itemWizardPage79, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer80->Add(m_pCompletionWelcome, 0, wxALIGN_LEFT|wxALL, 5); - m_CompletionTitle = new wxStaticText; - m_CompletionTitle->Create( itemWizardPage79, wxID_STATIC, strTitle, wxDefaultPosition, wxDefaultSize, 0 ); - m_CompletionTitle->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, wxT("Verdana"))); - itemBoxSizer80->Add(m_CompletionTitle, 0, wxALIGN_LEFT|wxALL, 5); - - wxString strBrandedMessage; - if (wxGetApp().GetBrand()->IsBranded() && - !wxGetApp().GetBrand()->GetAPWizardCompletionBrandedMessage().IsEmpty()) { - strBrandedMessage = wxGetApp().GetBrand()->GetAPWizardCompletionBrandedMessage(); - } else { - strBrandedMessage = _("You are now successfully attached to this project."); - } - - m_CompletionBrandedMessage = new wxStaticText; - m_CompletionBrandedMessage->Create( itemWizardPage79, wxID_STATIC, strBrandedMessage, wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer80->Add(m_CompletionBrandedMessage, 0, wxALIGN_LEFT|wxALL, 5); - - itemBoxSizer80->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - wxString strMessage; - if (wxGetApp().GetBrand()->IsBranded() && - !wxGetApp().GetBrand()->GetAPWizardCompletionMessage().IsEmpty()) { - strMessage = wxGetApp().GetBrand()->GetAPWizardCompletionMessage(); - } else { - strMessage = _("When you click Finish, your web browser will go to a page where\nyou can set your account name and preferences."); - } - - m_CompletionMessage = new wxStaticText; - m_CompletionMessage->Create( itemWizardPage79, wxID_STATIC, strMessage, wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer80->Add(m_CompletionMessage, 0, wxALIGN_LEFT|wxALL, 5); - } - - if (IS_ACCOUNTMANAGERATTACHWIZARD()) { - wxString strTitle; - if (wxGetApp().GetBrand()->IsBranded()) { - // %s is the project name - // i.e. 'GridRepublic' - strTitle.Printf( - _("Attached to %s"), - wxGetApp().GetBrand()->GetProjectName().c_str() - ); - } else { - strTitle = _("Attached to account manager"); - } - - m_CompletionTitle = new wxStaticText; - m_CompletionTitle->Create( itemWizardPage79, wxID_STATIC, strTitle, wxDefaultPosition, wxDefaultSize, 0 ); - m_CompletionTitle->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, wxT("Verdana"))); - itemBoxSizer80->Add(m_CompletionTitle, 0, wxALIGN_LEFT|wxALL, 5); - - if (wxGetApp().GetBrand()->IsBranded()) { - // %s is the project name - // i.e. 'GridRepublic' - wxString strWelcome; - strWelcome.Printf( - _("Welcome to %s!"), - wxGetApp().GetBrand()->GetProjectName().c_str() - ); - m_CompletionWelcome = new wxStaticText; - m_CompletionWelcome->Create( itemWizardPage79, wxID_STATIC, strWelcome, wxDefaultPosition, wxDefaultSize, 0 ); - m_CompletionWelcome->SetFont(wxFont(8, wxSWISS, wxNORMAL, wxBOLD, FALSE, wxT("Verdana"))); - itemBoxSizer80->Add(m_CompletionWelcome, 0, wxALIGN_LEFT|wxALL, 5); - } - - wxString strBrandedMessage; - if (wxGetApp().GetBrand()->IsBranded()) { - // 1st %s is the project name - // i.e. 'GridRepublic' - // 2nd %s is the account manager success message - strBrandedMessage.Printf( - _("You are now successfully attached to the %s system.\n" - "%s"), - wxGetApp().GetBrand()->GetProjectName().c_str(), - wxGetApp().GetBrand()->GetAMWizardSuccessMessage().c_str() - ); - } else { - strBrandedMessage = _("You are now successfully attached to this account manager."); - } - - m_CompletionBrandedMessage = new wxStaticText; - m_CompletionBrandedMessage->Create( itemWizardPage79, wxID_STATIC, strBrandedMessage, wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer80->Add(m_CompletionBrandedMessage, 0, wxALIGN_LEFT|wxALL, 5); - - m_CompletionMessage = new wxStaticText; - m_CompletionMessage->Create( itemWizardPage79, wxID_STATIC, _("Click Finish to close."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer80->Add(m_CompletionMessage, 0, wxALIGN_LEFT|wxALL, 5); - } + m_pCompletionBrandedMessage = new wxStaticText; + m_pCompletionBrandedMessage->Create( itemWizardPage79, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer80->Add(m_pCompletionBrandedMessage, 0, wxALIGN_LEFT|wxALL, 5); + m_pCompletionMessage = new wxStaticText; + m_pCompletionMessage->Create( itemWizardPage79, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer80->Add(m_pCompletionMessage, 0, wxALIGN_LEFT|wxALL, 5); ////@end CCompletionPage content construction } @@ -263,10 +181,94 @@ wxIcon CCompletionPage::GetIconResource( const wxString& name ) void CCompletionPage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; - if (IS_ATTACHTOPROJECTWIZARD() && ((CWizardAttachProject*)GetParent())->m_AccountInfoPage->m_AccountCreateCtrl->GetValue()) { - m_CompletionMessage->SetLabel(_("When you click Finish, your web browser will go to a page where\nyou can set your account name and preferences.")); - } else { - m_CompletionMessage->SetLabel(_("Click Finish to close.")); + wxASSERT(m_pCompletionTitle); + wxASSERT(m_pCompletionWelcome); + wxASSERT(m_pCompletionBrandedMessage); + wxASSERT(m_pCompletionMessage); + + if (IS_ATTACHTOPROJECTWIZARD()) { + wxString strTitle; + if (wxGetApp().GetBrand()->IsBranded() && + !wxGetApp().GetBrand()->GetAPWizardCompletionTitle().IsEmpty()) { + strTitle = wxGetApp().GetBrand()->GetAPWizardCompletionTitle(); + } else { + strTitle = _("Attached to project"); + } + + m_pCompletionTitle->SetLabel( strTitle ); + + m_pCompletionWelcome->Hide(); + + wxString strBrandedMessage; + if (wxGetApp().GetBrand()->IsBranded() && + !wxGetApp().GetBrand()->GetAPWizardCompletionBrandedMessage().IsEmpty()) { + strBrandedMessage = wxGetApp().GetBrand()->GetAPWizardCompletionBrandedMessage(); + } else { + strBrandedMessage = _("You are now successfully attached to this project."); + } + + m_pCompletionBrandedMessage->SetLabel( strBrandedMessage ); + + wxString strMessage; + if (wxGetApp().GetBrand()->IsBranded() && + !wxGetApp().GetBrand()->GetAPWizardCompletionMessage().IsEmpty()) { + strMessage = wxGetApp().GetBrand()->GetAPWizardCompletionMessage(); + } else { + strMessage = + _("When you click Finish, your web browser will go to a page where\n" + "you can set your account name and preferences."); + } + + + m_pCompletionMessage->SetLabel( strMessage ); + } else if (IS_ACCOUNTMANAGERWIZARD()) { + wxString strTitle; + if (wxGetApp().GetBrand()->IsBranded()) { + // %s is the project name + // i.e. 'GridRepublic' + strTitle.Printf( + _("Attached to %s"), + wxGetApp().GetBrand()->GetProjectName().c_str() + ); + } else { + strTitle = _("Attached to account manager"); + } + + m_pCompletionTitle->SetLabel( strTitle ); + + if (wxGetApp().GetBrand()->IsBranded()) { + // %s is the project name + // i.e. 'GridRepublic' + wxString strWelcome; + strWelcome.Printf( + _("Welcome to %s!"), + wxGetApp().GetBrand()->GetProjectName().c_str() + ); + + m_pCompletionWelcome->Show(); + m_pCompletionWelcome->SetLabel( strWelcome ); + } + + wxString strBrandedMessage; + if (wxGetApp().GetBrand()->IsBranded()) { + // 1st %s is the project name + // i.e. 'GridRepublic' + // 2nd %s is the account manager success message + strBrandedMessage.Printf( + _("You are now successfully attached to the %s system.\n" + "%s"), + wxGetApp().GetBrand()->GetProjectName().c_str(), + wxGetApp().GetBrand()->GetAMWizardSuccessMessage().c_str() + ); + } else { + strBrandedMessage = _("You are now successfully attached to this account manager."); + } + + m_pCompletionBrandedMessage->SetLabel( strBrandedMessage ); + + m_pCompletionMessage->SetLabel( + _("Click Finish to close.") + ); } } diff --git a/clientgui/CompletionPage.h b/clientgui/CompletionPage.h index 760de8241d..77ec89181b 100644 --- a/clientgui/CompletionPage.h +++ b/clientgui/CompletionPage.h @@ -77,10 +77,10 @@ public: static bool ShowToolTips(); ////@begin CCompletionPage member variables - wxStaticText* m_CompletionTitle; - wxStaticText* m_CompletionWelcome; - wxStaticText* m_CompletionBrandedMessage; - wxStaticText* m_CompletionMessage; + wxStaticText* m_pCompletionTitle; + wxStaticText* m_pCompletionWelcome; + wxStaticText* m_pCompletionBrandedMessage; + wxStaticText* m_pCompletionMessage; ////@end CCompletionPage member variables }; diff --git a/clientgui/CompletionRemovePage.cpp b/clientgui/CompletionRemovePage.cpp index 2dda97542d..1bc99d4df1 100644 --- a/clientgui/CompletionRemovePage.cpp +++ b/clientgui/CompletionRemovePage.cpp @@ -74,10 +74,8 @@ CCompletionRemovePage::CCompletionRemovePage( CBOINCBaseWizard* parent ) bool CCompletionRemovePage::Create( CBOINCBaseWizard* parent ) { ////@begin CCompletionRemovePage member initialisation - m_CompletionTitle = NULL; - m_CompletionWelcome = NULL; - m_CompletionBrandedMessage = NULL; - m_CompletionMessage = NULL; + m_pCompletionTitle = NULL; + m_pCompletionMessage = NULL; ////@end CCompletionRemovePage member initialisation ////@begin CCompletionRemovePage creation @@ -103,27 +101,14 @@ void CCompletionRemovePage::CreateControls() wxBoxSizer* itemBoxSizer80 = new wxBoxSizer(wxVERTICAL); itemWizardPage79->SetSizer(itemBoxSizer80); - wxString strTitle; - if (wxGetApp().GetBrand()->IsBranded()) { - // %s is the project name - // i.e. 'GridRepublic' - strTitle.Printf( - _("Removal from %s successful!"), - wxGetApp().GetBrand()->GetProjectName().c_str() - ); - } else { - strTitle = _("Removal succeeded!"); - } - - m_CompletionTitle = new wxStaticText; - m_CompletionTitle->Create( itemWizardPage79, wxID_STATIC, strTitle, wxDefaultPosition, wxDefaultSize, 0 ); - m_CompletionTitle->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, wxT("Verdana"))); - itemBoxSizer80->Add(m_CompletionTitle, 0, wxALIGN_LEFT|wxALL, 5); - - m_CompletionMessage = new wxStaticText; - m_CompletionMessage->Create( itemWizardPage79, wxID_STATIC, _("Click Finish to close."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer80->Add(m_CompletionMessage, 0, wxALIGN_LEFT|wxALL, 5); + m_pCompletionTitle = new wxStaticText; + m_pCompletionTitle->Create( itemWizardPage79, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pCompletionTitle->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, wxT("Verdana"))); + itemBoxSizer80->Add(m_pCompletionTitle, 0, wxALIGN_LEFT|wxALL, 5); + m_pCompletionMessage = new wxStaticText; + m_pCompletionMessage->Create( itemWizardPage79, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer80->Add(m_pCompletionMessage, 0, wxALIGN_LEFT|wxALL, 5); ////@end CCompletionRemovePage content construction } @@ -185,6 +170,29 @@ wxIcon CCompletionRemovePage::GetIconResource( const wxString& name ) void CCompletionRemovePage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; + + wxASSERT(m_pCompletionTitle); + wxASSERT(m_pCompletionMessage); + + wxString strTitle; + if (wxGetApp().GetBrand()->IsBranded()) { + // %s is the project name + // i.e. 'GridRepublic' + strTitle.Printf( + _("Removal from %s successful!"), + wxGetApp().GetBrand()->GetProjectName().c_str() + ); + } else { + strTitle = _("Removal succeeded!"); + } + + m_pCompletionTitle->SetLabel( strTitle ); + + m_pCompletionMessage->SetLabel( + _("Click Finish to close.") + ); + + Fit(); } /*! diff --git a/clientgui/CompletionRemovePage.h b/clientgui/CompletionRemovePage.h index 2513de1100..07fd7aabbb 100644 --- a/clientgui/CompletionRemovePage.h +++ b/clientgui/CompletionRemovePage.h @@ -77,10 +77,8 @@ public: static bool ShowToolTips(); ////@begin CCompletionRemovePage member variables - wxStaticText* m_CompletionTitle; - wxStaticText* m_CompletionWelcome; - wxStaticText* m_CompletionBrandedMessage; - wxStaticText* m_CompletionMessage; + wxStaticText* m_pCompletionTitle; + wxStaticText* m_pCompletionMessage; ////@end CCompletionRemovePage member variables }; diff --git a/clientgui/CompletionUpdatePage.cpp b/clientgui/CompletionUpdatePage.cpp index 7ffef5a1ae..1ff9e2949b 100644 --- a/clientgui/CompletionUpdatePage.cpp +++ b/clientgui/CompletionUpdatePage.cpp @@ -74,10 +74,8 @@ CCompletionUpdatePage::CCompletionUpdatePage( CBOINCBaseWizard* parent ) bool CCompletionUpdatePage::Create( CBOINCBaseWizard* parent ) { ////@begin CCompletionUpdatePage member initialisation - m_CompletionTitle = NULL; - m_CompletionWelcome = NULL; - m_CompletionBrandedMessage = NULL; - m_CompletionMessage = NULL; + m_pCompletionTitle = NULL; + m_pCompletionMessage = NULL; ////@end CCompletionUpdatePage member initialisation ////@begin CCompletionUpdatePage creation @@ -103,27 +101,14 @@ void CCompletionUpdatePage::CreateControls() wxBoxSizer* itemBoxSizer80 = new wxBoxSizer(wxVERTICAL); itemWizardPage79->SetSizer(itemBoxSizer80); - wxString strTitle; - if (wxGetApp().GetBrand()->IsBranded()) { - // %s is the project name - // i.e. 'GridRepublic' - strTitle.Printf( - _("Updating %s successful!"), - wxGetApp().GetBrand()->GetProjectName().c_str() - ); - } else { - strTitle = _("Update successful!"); - } - - m_CompletionTitle = new wxStaticText; - m_CompletionTitle->Create( itemWizardPage79, wxID_STATIC, strTitle, wxDefaultPosition, wxDefaultSize, 0 ); - m_CompletionTitle->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, wxT("Verdana"))); - itemBoxSizer80->Add(m_CompletionTitle, 0, wxALIGN_LEFT|wxALL, 5); - - m_CompletionMessage = new wxStaticText; - m_CompletionMessage->Create( itemWizardPage79, wxID_STATIC, _("Click Finish to close."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer80->Add(m_CompletionMessage, 0, wxALIGN_LEFT|wxALL, 5); + m_pCompletionTitle = new wxStaticText; + m_pCompletionTitle->Create( itemWizardPage79, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pCompletionTitle->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, wxT("Verdana"))); + itemBoxSizer80->Add(m_pCompletionTitle, 0, wxALIGN_LEFT|wxALL, 5); + m_pCompletionMessage = new wxStaticText; + m_pCompletionMessage->Create( itemWizardPage79, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer80->Add(m_pCompletionMessage, 0, wxALIGN_LEFT|wxALL, 5); ////@end CCompletionUpdatePage content construction } @@ -186,11 +171,28 @@ wxIcon CCompletionUpdatePage::GetIconResource( const wxString& name ) void CCompletionUpdatePage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; - if (IS_ATTACHTOPROJECTWIZARD() && ((CWizardAttachProject*)GetParent())->m_AccountInfoPage->m_AccountCreateCtrl->GetValue()) { - m_CompletionMessage->SetLabel(_("When you click Finish, your web browser will go to a page where\nyou can set your account name and preferences.")); + wxASSERT(m_pCompletionTitle); + wxASSERT(m_pCompletionMessage); + + wxString strTitle; + if (wxGetApp().GetBrand()->IsBranded()) { + // %s is the project name + // i.e. 'GridRepublic' + strTitle.Printf( + _("Updating %s successful!"), + wxGetApp().GetBrand()->GetProjectName().c_str() + ); } else { - m_CompletionMessage->SetLabel(_("Click Finish to close.")); + strTitle = _("Update successful!"); } + + m_pCompletionTitle->SetLabel( strTitle ); + + m_pCompletionMessage->SetLabel( + _("Click Finish to close.") + ); + + Fit(); } /*! diff --git a/clientgui/CompletionUpdatePage.h b/clientgui/CompletionUpdatePage.h index 34eeb09e49..fa3fee6efd 100644 --- a/clientgui/CompletionUpdatePage.h +++ b/clientgui/CompletionUpdatePage.h @@ -77,10 +77,8 @@ public: static bool ShowToolTips(); ////@begin CCompletionUpdatePage member variables - wxStaticText* m_CompletionTitle; - wxStaticText* m_CompletionWelcome; - wxStaticText* m_CompletionBrandedMessage; - wxStaticText* m_CompletionMessage; + wxStaticText* m_pCompletionTitle; + wxStaticText* m_pCompletionMessage; ////@end CCompletionUpdatePage member variables }; diff --git a/clientgui/NoInternetConnectionPage.cpp b/clientgui/NoInternetConnectionPage.cpp index b430859d4f..08ce950a2b 100644 --- a/clientgui/NoInternetConnectionPage.cpp +++ b/clientgui/NoInternetConnectionPage.cpp @@ -70,6 +70,8 @@ CErrNoInternetConnectionPage::CErrNoInternetConnectionPage( CBOINCBaseWizard* pa bool CErrNoInternetConnectionPage::Create( CBOINCBaseWizard* parent ) { ////@begin CErrNoInternetConnectionPage member initialisation + m_pTitleStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; ////@end CErrNoInternetConnectionPage member initialisation ////@begin CErrNoInternetConnectionPage creation @@ -89,22 +91,21 @@ bool CErrNoInternetConnectionPage::Create( CBOINCBaseWizard* parent ) void CErrNoInternetConnectionPage::CreateControls() { ////@begin CErrNoInternetConnectionPage content construction - CErrNoInternetConnectionPage* itemWizardPage106 = this; + CErrNoInternetConnectionPage* itemWizardPage96 = this; - wxBoxSizer* itemBoxSizer107 = new wxBoxSizer(wxVERTICAL); - itemWizardPage106->SetSizer(itemBoxSizer107); + wxBoxSizer* itemBoxSizer97 = new wxBoxSizer(wxVERTICAL); + itemWizardPage96->SetSizer(itemBoxSizer97); - wxStaticText* itemStaticText108 = new wxStaticText; - itemStaticText108->Create( itemWizardPage106, wxID_STATIC, _("No Internet connection"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText108->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer107->Add(itemStaticText108, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer97->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer107->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - wxStaticText* itemStaticText110 = new wxStaticText; - itemStaticText110->Create( itemWizardPage106, wxID_STATIC, _("Please connect to the Internet and try again."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer107->Add(itemStaticText110, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer97->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer97->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); ////@end CErrNoInternetConnectionPage content construction } @@ -164,7 +165,19 @@ wxIcon CErrNoInternetConnectionPage::GetIconResource( const wxString& name ) */ void CErrNoInternetConnectionPage::OnPageChanged( wxWizardExEvent& event ) { - event.Skip(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); + + m_pTitleStaticCtrl->SetLabel( + _("No Internet connection") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("Please connect to the Internet and try again.") + ); + + Fit(); } /*! diff --git a/clientgui/NoInternetConnectionPage.h b/clientgui/NoInternetConnectionPage.h index 9721348639..09dfecf918 100644 --- a/clientgui/NoInternetConnectionPage.h +++ b/clientgui/NoInternetConnectionPage.h @@ -74,6 +74,8 @@ public: static bool ShowToolTips(); ////@begin CErrNoInternetConnectionPage member variables + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; ////@end CErrNoInternetConnectionPage member variables }; diff --git a/clientgui/NotDetectedPage.cpp b/clientgui/NotDetectedPage.cpp index 1a442e1b95..a07cfe0748 100644 --- a/clientgui/NotDetectedPage.cpp +++ b/clientgui/NotDetectedPage.cpp @@ -70,6 +70,8 @@ CErrNotDetectedPage::CErrNotDetectedPage( CBOINCBaseWizard* parent ) bool CErrNotDetectedPage::Create( CBOINCBaseWizard* parent ) { ////@begin CErrNotDetectedPage member initialisation + m_pTitleStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; ////@end CErrNotDetectedPage member initialisation ////@begin CErrNotDetectedPage creation @@ -90,42 +92,21 @@ bool CErrNotDetectedPage::Create( CBOINCBaseWizard* parent ) void CErrNotDetectedPage::CreateControls() { ////@begin CErrNotDetectedPage content construction - CErrNotDetectedPage* itemWizardPage90 = this; + CErrNotDetectedPage* itemWizardPage96 = this; - wxBoxSizer* itemBoxSizer91 = new wxBoxSizer(wxVERTICAL); - itemWizardPage90->SetSizer(itemBoxSizer91); + wxBoxSizer* itemBoxSizer97 = new wxBoxSizer(wxVERTICAL); + itemWizardPage96->SetSizer(itemBoxSizer97); - wxStaticText* itemStaticText92 = new wxStaticText; - wxStaticText* itemStaticText94 = new wxStaticText; - wxStaticText* itemStaticText95 = new wxStaticText; - if (IS_ATTACHTOPROJECTWIZARD()) { - itemStaticText92->Create( itemWizardPage90, wxID_STATIC, _("Project not found"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText92->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer91->Add(itemStaticText92, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer97->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer91->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - itemStaticText94->Create( itemWizardPage90, wxID_STATIC, _("The URL you supplied is not that of a BOINC-based project."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer91->Add(itemStaticText94, 0, wxALIGN_LEFT|wxALL, 5); - - itemStaticText95->Create( itemWizardPage90, wxID_STATIC, _("Please check the URL and try again."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer91->Add(itemStaticText95, 0, wxALIGN_LEFT|wxALL, 5); - } - - if (IS_ACCOUNTMANAGERATTACHWIZARD()) { - itemStaticText92->Create( itemWizardPage90, wxID_STATIC, _("Account manager not found"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText92->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer91->Add(itemStaticText92, 0, wxALIGN_LEFT|wxALL, 5); - - itemBoxSizer91->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - itemStaticText94->Create( itemWizardPage90, wxID_STATIC, _("The URL you supplied is not that of a BOINC-based account\nmanager."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer91->Add(itemStaticText94, 0, wxALIGN_LEFT|wxALL, 5); - - itemStaticText95->Create( itemWizardPage90, wxID_STATIC, _("Please check the URL and try again."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer91->Add(itemStaticText95, 0, wxALIGN_LEFT|wxALL, 5); - } + itemBoxSizer97->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer97->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); ////@end CErrNotDetectedPage content construction } @@ -185,7 +166,35 @@ wxIcon CErrNotDetectedPage::GetIconResource( const wxString& name ) */ void CErrNotDetectedPage::OnPageChanged( wxWizardExEvent& event ) { - event.Skip(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); + + if (IS_ATTACHTOPROJECTWIZARD()) { + m_pTitleStaticCtrl->SetLabel( + _("Project not found") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("The URL you supplied is not that of a BOINC-based project.\n" + "\n" + "Please check the URL and try again.") + ); + } else if (IS_ACCOUNTMANAGERWIZARD()) { + m_pTitleStaticCtrl->SetLabel( + _("Account manager not found") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("The URL you supplied is not that of a BOINC-based account\n" + "manager.\n" + "\n" + "Please check the URL and try again.") + ); + } else { + wxASSERT(FALSE); + } + + Fit(); } /*! diff --git a/clientgui/NotDetectedPage.h b/clientgui/NotDetectedPage.h index 77ffa2b154..9c701c5488 100644 --- a/clientgui/NotDetectedPage.h +++ b/clientgui/NotDetectedPage.h @@ -74,6 +74,8 @@ public: static bool ShowToolTips(); ////@begin CErrNotDetectedPage member variables + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; ////@end CErrNotDetectedPage member variables }; diff --git a/clientgui/NotFoundPage.cpp b/clientgui/NotFoundPage.cpp index 6508ae746b..afd3e16c83 100644 --- a/clientgui/NotFoundPage.cpp +++ b/clientgui/NotFoundPage.cpp @@ -70,6 +70,8 @@ CErrNotFoundPage::CErrNotFoundPage( CBOINCBaseWizard* parent ) bool CErrNotFoundPage::Create( CBOINCBaseWizard* parent ) { ////@begin CErrNotFoundPage member initialisation + m_pTitleStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; ////@end CErrNotFoundPage member initialisation ////@begin CErrNotFoundPage creation @@ -90,22 +92,21 @@ bool CErrNotFoundPage::Create( CBOINCBaseWizard* parent ) void CErrNotFoundPage::CreateControls() { ////@begin CErrNotFoundPage content construction - CErrNotFoundPage* itemWizardPage111 = this; + CErrNotFoundPage* itemWizardPage96 = this; - wxBoxSizer* itemBoxSizer112 = new wxBoxSizer(wxVERTICAL); - itemWizardPage111->SetSizer(itemBoxSizer112); + wxBoxSizer* itemBoxSizer97 = new wxBoxSizer(wxVERTICAL); + itemWizardPage96->SetSizer(itemBoxSizer97); - wxStaticText* itemStaticText113 = new wxStaticText; - itemStaticText113->Create( itemWizardPage111, wxID_STATIC, _("Account not found"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText113->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer112->Add(itemStaticText113, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer97->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer112->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - m_NotFoundDescriptionStaticCtrl = new wxStaticText; - m_NotFoundDescriptionStaticCtrl->Create( itemWizardPage111, wxID_STATIC, _("Check the email address and password, and try again."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer112->Add(m_NotFoundDescriptionStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer97->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer97->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); ////@end CErrNotFoundPage content construction } @@ -167,16 +168,23 @@ wxIcon CErrNotFoundPage::GetIconResource( const wxString& name ) void CErrNotFoundPage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); + + m_pTitleStaticCtrl->SetLabel( + _("Account not found") + ); if (((CBOINCBaseWizard*)GetParent())->project_config.uses_username) { - m_NotFoundDescriptionStaticCtrl->SetLabel( + m_pDirectionsStaticCtrl->SetLabel( _("Check the username and password, and try again.") ); } else { - m_NotFoundDescriptionStaticCtrl->SetLabel( + m_pDirectionsStaticCtrl->SetLabel( _("Check the email address and password, and try again.") ); } - + Fit(); } diff --git a/clientgui/NotFoundPage.h b/clientgui/NotFoundPage.h index e7814ad86d..31f6336adb 100644 --- a/clientgui/NotFoundPage.h +++ b/clientgui/NotFoundPage.h @@ -74,7 +74,8 @@ public: static bool ShowToolTips(); ////@begin CErrNotFoundPage member variables - wxStaticText* m_NotFoundDescriptionStaticCtrl; + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; ////@end CErrNotFoundPage member variables }; diff --git a/clientgui/ProjectInfoPage.cpp b/clientgui/ProjectInfoPage.cpp index c0874093b6..4d417ebcd5 100644 --- a/clientgui/ProjectInfoPage.cpp +++ b/clientgui/ProjectInfoPage.cpp @@ -73,8 +73,13 @@ CProjectInfoPage::CProjectInfoPage( CBOINCBaseWizard* parent ) bool CProjectInfoPage::Create( CBOINCBaseWizard* parent ) { ////@begin CProjectInfoPage member initialisation - m_ProjectUrlStaticCtrl = NULL; - m_ProjectUrlCtrl = NULL; + m_pTitleStaticCtrl = NULL; + m_pDescriptionStaticCtrl = NULL; + m_pDescription2StaticCtrl = NULL; + m_pProjectUrlStaticCtrl = NULL; + m_pProjectUrlCtrl = NULL; + m_pBOINCPromoStaticCtrl = NULL; + m_pBOINCPromoUrlCtrl = NULL; ////@end CProjectInfoPage member initialisation ////@begin CProjectInfoPage creation @@ -84,7 +89,6 @@ bool CProjectInfoPage::Create( CBOINCBaseWizard* parent ) CreateControls(); GetSizer()->Fit(this); ////@end CProjectInfoPage creation - return TRUE; } @@ -100,20 +104,20 @@ void CProjectInfoPage::CreateControls() wxBoxSizer* itemBoxSizer24 = new wxBoxSizer(wxVERTICAL); itemWizardPage23->SetSizer(itemBoxSizer24); - wxStaticText* itemStaticText25 = new wxStaticText; - itemStaticText25->Create( itemWizardPage23, wxID_STATIC, _("Project URL"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText25->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer24->Add(itemStaticText25, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage23, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer24->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText26 = new wxStaticText; - itemStaticText26->Create( itemWizardPage23, wxID_STATIC, _("Enter the URL of the project's web site."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer24->Add(itemStaticText26, 0, wxALIGN_LEFT|wxALL, 5); + m_pDescriptionStaticCtrl = new wxStaticText; + m_pDescriptionStaticCtrl->Create( itemWizardPage23, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer24->Add(m_pDescriptionStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); itemBoxSizer24->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText28 = new wxStaticText; - itemStaticText28->Create( itemWizardPage23, wxID_STATIC, _("You can copy and paste the URL from your browser's address bar."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer24->Add(itemStaticText28, 0, wxALIGN_LEFT|wxALL, 5); + m_pDescription2StaticCtrl = new wxStaticText; + m_pDescription2StaticCtrl->Create( itemWizardPage23, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer24->Add(m_pDescription2StaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); itemBoxSizer24->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); @@ -121,26 +125,26 @@ void CProjectInfoPage::CreateControls() itemFlexGridSizer30->AddGrowableCol(1); itemBoxSizer24->Add(itemFlexGridSizer30, 0, wxALIGN_LEFT|wxALL, 5); - m_ProjectUrlStaticCtrl = new wxStaticText; - m_ProjectUrlStaticCtrl->Create( itemWizardPage23, ID_PROJECTURLSTATICCTRL, _("Project &URL:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer30->Add(m_ProjectUrlStaticCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pProjectUrlStaticCtrl = new wxStaticText; + m_pProjectUrlStaticCtrl->Create( itemWizardPage23, ID_PROJECTURLSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer30->Add(m_pProjectUrlStaticCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_ProjectUrlCtrl = new wxTextCtrl; - m_ProjectUrlCtrl->Create( itemWizardPage23, ID_PROJECTURLCTRL, _T(""), wxDefaultPosition, wxSize(250, -1), 0 ); - itemFlexGridSizer30->Add(m_ProjectUrlCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); + m_pProjectUrlCtrl = new wxTextCtrl; + m_pProjectUrlCtrl->Create( itemWizardPage23, ID_PROJECTURLCTRL, wxEmptyString, wxDefaultPosition, wxSize(200, -1), 0 ); + itemFlexGridSizer30->Add(m_pProjectUrlCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 5); itemBoxSizer24->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText34 = new wxStaticText; - itemStaticText34->Create( itemWizardPage23, wxID_STATIC, _("For a list of BOINC-based projects go to:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer24->Add(itemStaticText34, 0, wxALIGN_LEFT|wxALL, 5); + m_pBOINCPromoStaticCtrl = new wxStaticText; + m_pBOINCPromoStaticCtrl->Create( itemWizardPage23, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer24->Add(m_pBOINCPromoStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - wxHyperLink* itemHyperLink35 = new wxHyperLink; - itemHyperLink35->Create( itemWizardPage23, ID_BOINCHYPERLINK, wxT("http://boinc.berkeley.edu/"), wxDefaultPosition, wxDefaultSize, wxNO_BORDER ); - itemBoxSizer24->Add(itemHyperLink35, 0, wxALIGN_LEFT|wxALL, 5); + m_pBOINCPromoUrlCtrl = new wxHyperLink; + m_pBOINCPromoUrlCtrl->Create( itemWizardPage23, ID_BOINCHYPERLINK, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxNO_BORDER ); + itemBoxSizer24->Add(m_pBOINCPromoUrlCtrl, 0, wxALIGN_LEFT|wxALL, 5); // Set validators - m_ProjectUrlCtrl->SetValidator( CValidateURL( & m_strProjectURL) ); + m_pProjectUrlCtrl->SetValidator( CValidateURL( & m_strProjectURL) ); ////@end CProjectInfoPage content construction } @@ -205,7 +209,38 @@ wxIcon CProjectInfoPage::GetIconResource( const wxString& name ) */ void CProjectInfoPage::OnPageChanged( wxWizardExEvent& event ) { - if (m_ProjectUrlCtrl) m_ProjectUrlCtrl->SetFocus(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDescriptionStaticCtrl); + wxASSERT(m_pDescription2StaticCtrl); + wxASSERT(m_pProjectUrlStaticCtrl); + wxASSERT(m_pProjectUrlCtrl); + wxASSERT(m_pBOINCPromoStaticCtrl); + wxASSERT(m_pBOINCPromoUrlCtrl); + + m_pTitleStaticCtrl->SetLabel( + _("Project URL") + ); + m_pDescriptionStaticCtrl->SetLabel( + _("Enter the URL of the project's web site.") + ); + m_pDescription2StaticCtrl->SetLabel( + _("You can copy and paste the URL from your browser's address bar.") + ); + m_pProjectUrlStaticCtrl->SetLabel( + _("Project &URL:") + ); + m_pBOINCPromoStaticCtrl->SetLabel( + _("For a list of BOINC-based projects go to:") + ); + m_pBOINCPromoUrlCtrl->SetLabel( + wxT("http://boinc.berkeley.edu/") + ); + + m_pProjectUrlCtrl->SetFocus(); + + Fit(); } /*! diff --git a/clientgui/ProjectInfoPage.h b/clientgui/ProjectInfoPage.h index 5db32d8dc5..0e31d258de 100644 --- a/clientgui/ProjectInfoPage.h +++ b/clientgui/ProjectInfoPage.h @@ -80,8 +80,13 @@ public: static bool ShowToolTips(); ////@begin CProjectInfoPage member variables - wxStaticText* m_ProjectUrlStaticCtrl; - wxTextCtrl* m_ProjectUrlCtrl; + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDescriptionStaticCtrl; + wxStaticText* m_pDescription2StaticCtrl; + wxStaticText* m_pProjectUrlStaticCtrl; + wxTextCtrl* m_pProjectUrlCtrl; + wxStaticText* m_pBOINCPromoStaticCtrl; + wxHyperLink* m_pBOINCPromoUrlCtrl; wxString m_strProjectURL; ////@end CProjectInfoPage member variables }; diff --git a/clientgui/ProjectProcessingPage.cpp b/clientgui/ProjectProcessingPage.cpp index e7e1f2e33f..50f5af0da7 100644 --- a/clientgui/ProjectProcessingPage.cpp +++ b/clientgui/ProjectProcessingPage.cpp @@ -99,7 +99,8 @@ bool CProjectProcessingPage::Create( CBOINCBaseWizard* parent ) { ////@begin CProjectProcessingPage member initialisation - m_ProgressIndicator = NULL; + m_pTitleStaticCtrl = NULL; + m_pProgressIndicator = NULL; ////@end CProjectProcessingPage member initialisation m_bProjectCommunitcationsSucceeded = false; @@ -127,34 +128,33 @@ bool CProjectProcessingPage::Create( CBOINCBaseWizard* parent ) void CProjectProcessingPage::CreateControls() { ////@begin CProjectProcessingPage content construction - CProjectProcessingPage* itemWizardPage71 = this; + CProjectProcessingPage* itemWizardPage36 = this; - wxBoxSizer* itemBoxSizer72 = new wxBoxSizer(wxVERTICAL); - itemWizardPage71->SetSizer(itemBoxSizer72); + wxBoxSizer* itemBoxSizer37 = new wxBoxSizer(wxVERTICAL); + itemWizardPage36->SetSizer(itemBoxSizer37); - wxStaticText* itemStaticText73 = new wxStaticText; - itemStaticText73->Create( itemWizardPage71, wxID_STATIC, _("Communicating with project\nPlease wait..."), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText73->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer72->Add(itemStaticText73, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage36, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer37->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer72->Add(5, 80, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer37->Add(5, 80, 0, wxALIGN_LEFT|wxALL, 5); - wxFlexGridSizer* itemFlexGridSizer75 = new wxFlexGridSizer(1, 3, 0, 0); - itemFlexGridSizer75->AddGrowableRow(0); - itemFlexGridSizer75->AddGrowableCol(0); - itemFlexGridSizer75->AddGrowableCol(1); - itemFlexGridSizer75->AddGrowableCol(2); - itemBoxSizer72->Add(itemFlexGridSizer75, 0, wxGROW|wxALL, 5); + wxFlexGridSizer* itemFlexGridSizer40 = new wxFlexGridSizer(1, 3, 0, 0); + itemFlexGridSizer40->AddGrowableRow(0); + itemFlexGridSizer40->AddGrowableCol(0); + itemFlexGridSizer40->AddGrowableCol(1); + itemFlexGridSizer40->AddGrowableCol(2); + itemBoxSizer37->Add(itemFlexGridSizer40, 0, wxGROW|wxALL, 5); - itemFlexGridSizer75->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); + itemFlexGridSizer40->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); - wxBitmap m_AttachProjectProgressBitmap(itemWizardPage71->GetBitmapResource(wxT("res/wizprogress01.xpm"))); - m_ProgressIndicator = new wxStaticBitmap; - m_ProgressIndicator->Create( itemWizardPage71, ID_PROGRESSCTRL, m_AttachProjectProgressBitmap, wxDefaultPosition, wxSize(184, 48), 0 ); - itemFlexGridSizer75->Add(m_ProgressIndicator, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); - - itemFlexGridSizer75->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); + wxBitmap itemBitmap41(GetBitmapResource(wxT("res/wizprogress01.xpm"))); + m_pProgressIndicator = new wxStaticBitmap; + m_pProgressIndicator->Create( itemWizardPage36, ID_PROGRESSCTRL, itemBitmap41, wxDefaultPosition, wxSize(184, 48), 0 ); + itemFlexGridSizer40->Add(m_pProgressIndicator, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); + itemFlexGridSizer40->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); ////@end CProjectProcessingPage content construction } @@ -310,6 +310,13 @@ wxIcon CProjectProcessingPage::GetIconResource( const wxString& name ) void CProjectProcessingPage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pProgressIndicator); + + m_pTitleStaticCtrl->SetLabel( + _("Communicating with project\nPlease wait...") + ); SetProjectCommunitcationsSucceeded(false); SetProjectUnavailable(false); @@ -318,6 +325,8 @@ void CProjectProcessingPage::OnPageChanged( wxWizardExEvent& event ) { CProjectProcessingPageEvent TransitionEvent(wxEVT_PROJECTPROCESSING_STATECHANGE, this); AddPendingEvent(TransitionEvent); + + Fit(); } /*! @@ -354,7 +363,7 @@ void CProjectProcessingPage::OnStateChange( CProjectProcessingPageEvent& event ) ((CWizardAttachProject*)GetParent())->DisableNextButton(); ((CWizardAttachProject*)GetParent())->DisableBackButton(); - StartProgress(m_ProgressIndicator); + StartProgress(m_pProgressIndicator); SetNextState(ATTACHPROJECT_ACCOUNTQUERY_BEGIN); break; case ATTACHPROJECT_ACCOUNTQUERY_BEGIN: @@ -375,7 +384,7 @@ void CProjectProcessingPage::OnStateChange( CProjectProcessingPageEvent& event ) } SetProjectCommunitcationsSucceeded(true); } else { - if (((CWizardAttachProject*)GetParent())->m_AccountInfoPage->m_AccountCreateCtrl->GetValue()) { + if (((CWizardAttachProject*)GetParent())->m_AccountInfoPage->m_pAccountCreateCtrl->GetValue()) { if (!((CWizardAttachProject*)GetParent())->project_config.uses_username) { ai->email_addr = ((CWizardAttachProject*)GetParent())->m_AccountInfoPage->GetAccountEmailAddress().c_str(); ai->user_name = ::wxGetUserName().c_str(); @@ -400,7 +409,7 @@ void CProjectProcessingPage::OnStateChange( CProjectProcessingPageEvent& event ) tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.create_account_poll(*ao); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -433,7 +442,7 @@ void CProjectProcessingPage::OnStateChange( CProjectProcessingPageEvent& event ) tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.lookup_account_poll(*ao); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -455,14 +464,14 @@ void CProjectProcessingPage::OnStateChange( CProjectProcessingPageEvent& event ) SetProjectAccountNotFound(false); } if ((HTTP_STATUS_NOT_FOUND == ao->error_num) || CHECK_DEBUG_FLAG(WIZDEBUG_ERRPROJECTPROPERTIESURL)) { - wxString strBuffer = ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_ServerMessages->GetLabel(); + wxString strBuffer = ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->GetLabel(); strBuffer += _T("Required wizard file(s) are missing from the target server.\n(lookup_account.php/create_account.php)\n"); - ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_ServerMessages->SetLabel(strBuffer); + ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->SetLabel(strBuffer); } if ((HTTP_STATUS_INTERNAL_SERVER_ERROR == ao->error_num) || CHECK_DEBUG_FLAG(WIZDEBUG_ERRPROJECTPROPERTIESURL)) { - wxString strBuffer = ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_ServerMessages->GetLabel(); + wxString strBuffer = ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->GetLabel(); strBuffer += _T("An internal server error has occurred.\n"); - ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_ServerMessages->SetLabel(strBuffer); + ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->SetLabel(strBuffer); } } } @@ -502,7 +511,7 @@ void CProjectProcessingPage::OnStateChange( CProjectProcessingPageEvent& event ) tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.project_attach_poll(reply); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -516,15 +525,15 @@ void CProjectProcessingPage::OnStateChange( CProjectProcessingPageEvent& event ) } else { SetProjectAttachSucceeded(false); if ((HTTP_STATUS_INTERNAL_SERVER_ERROR == reply.error_num) || CHECK_DEBUG_FLAG(WIZDEBUG_ERRPROJECTPROPERTIESURL)) { - strBuffer = ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_ServerMessages->GetLabel(); + strBuffer = ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->GetLabel(); strBuffer += _T("An internal server error has occurred.\n"); - ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_ServerMessages->SetLabel(strBuffer); + ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->SetLabel(strBuffer); } else { - strBuffer = ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_ServerMessages->GetLabel(); + strBuffer = ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->GetLabel(); for (i=0; im_CompletionErrorPage->m_ServerMessages->SetLabel(strBuffer); + ((CWizardAttachProject*)GetParent())->m_CompletionErrorPage->m_pServerMessagesCtrl->SetLabel(strBuffer); } } } else { @@ -533,7 +542,7 @@ void CProjectProcessingPage::OnStateChange( CProjectProcessingPageEvent& event ) SetNextState(ATTACHPROJECT_CLEANUP); break; case ATTACHPROJECT_CLEANUP: - FinishProgress(m_ProgressIndicator); + FinishProgress(m_pProgressIndicator); SetNextState(ATTACHPROJECT_END); break; default: diff --git a/clientgui/ProjectProcessingPage.h b/clientgui/ProjectProcessingPage.h index a5a2a559a0..c4d602af7b 100644 --- a/clientgui/ProjectProcessingPage.h +++ b/clientgui/ProjectProcessingPage.h @@ -135,9 +135,9 @@ public: void FinishProgress(wxStaticBitmap* pBitmap); ////@begin CProjectProcessingPage member variables - wxStaticBitmap* m_ProgressIndicator; + wxStaticText* m_pTitleStaticCtrl; + wxStaticBitmap* m_pProgressIndicator; ////@end CProjectProcessingPage member variables - bool m_bProjectCommunitcationsSucceeded; bool m_bProjectUnavailable; bool m_bProjectAccountNotFound; diff --git a/clientgui/ProjectPropertiesPage.cpp b/clientgui/ProjectPropertiesPage.cpp index 38de5131cd..56912bcc41 100644 --- a/clientgui/ProjectPropertiesPage.cpp +++ b/clientgui/ProjectPropertiesPage.cpp @@ -96,7 +96,8 @@ CProjectPropertiesPage::CProjectPropertiesPage( CBOINCBaseWizard* parent ) bool CProjectPropertiesPage::Create( CBOINCBaseWizard* parent ) { ////@begin CProjectPropertiesPage member initialisation - m_ProgressIndicator = NULL; + m_pTitleStaticCtrl = NULL; + m_pProgressIndicator = NULL; ////@end CProjectPropertiesPage member initialisation m_bProjectPropertiesSucceeded = false; @@ -132,10 +133,10 @@ void CProjectPropertiesPage::CreateControls() wxBoxSizer* itemBoxSizer37 = new wxBoxSizer(wxVERTICAL); itemWizardPage36->SetSizer(itemBoxSizer37); - wxStaticText* itemStaticText38 = new wxStaticText; - itemStaticText38->Create( itemWizardPage36, wxID_STATIC, _("Communicating with project\nPlease wait..."), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText38->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer37->Add(itemStaticText38, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage36, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer37->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); itemBoxSizer37->Add(5, 80, 0, wxALIGN_LEFT|wxALL, 5); @@ -148,13 +149,12 @@ void CProjectPropertiesPage::CreateControls() itemFlexGridSizer40->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); - wxBitmap m_ProjectPropertiesProgressBitmap(itemWizardPage36->GetBitmapResource(wxT("res/wizprogress01.xpm"))); - m_ProgressIndicator = new wxStaticBitmap; - m_ProgressIndicator->Create( itemWizardPage36, ID_PROGRESSCTRL, m_ProjectPropertiesProgressBitmap, wxDefaultPosition, wxSize(184, 48), 0 ); - itemFlexGridSizer40->Add(m_ProgressIndicator, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); + wxBitmap itemBitmap41(GetBitmapResource(wxT("res/wizprogress01.xpm"))); + m_pProgressIndicator = new wxStaticBitmap; + m_pProgressIndicator->Create( itemWizardPage36, ID_PROGRESSCTRL, itemBitmap41, wxDefaultPosition, wxSize(184, 48), 0 ); + itemFlexGridSizer40->Add(m_pProgressIndicator, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); itemFlexGridSizer40->Add(5, 5, 0, wxGROW|wxGROW|wxALL, 5); - ////@end CProjectPropertiesPage content construction } @@ -317,10 +317,16 @@ wxIcon CProjectPropertiesPage::GetIconResource( const wxString& name ) * wxEVT_WIZARD_PAGE_CHANGED event handler for ID_PROJECTPROPERTIESPAGE */ -void CProjectPropertiesPage::OnPageChanged( wxWizardExEvent& event ) -{ +void CProjectPropertiesPage::OnPageChanged( wxWizardExEvent& event ) { if (event.GetDirection() == false) return; + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pProgressIndicator); + + m_pTitleStaticCtrl->SetLabel( + _("Communicating with project\nPlease wait...") + ); + SetProjectPropertiesSucceeded(false); SetProjectPropertiesURLFailure(false); SetProjectAccountCreationDisabled(false); @@ -332,6 +338,8 @@ void CProjectPropertiesPage::OnPageChanged( wxWizardExEvent& event ) CProjectPropertiesPageEvent TransitionEvent(wxEVT_PROJECTPROPERTIES_STATECHANGE, this); AddPendingEvent(TransitionEvent); + + Fit(); } /*! @@ -364,7 +372,7 @@ void CProjectPropertiesPage::OnStateChange( CProjectPropertiesPageEvent& event ) case PROJPROP_INIT: ((CWizardAttachProject*)GetParent())->DisableNextButton(); ((CWizardAttachProject*)GetParent())->DisableBackButton(); - StartProgress(m_ProgressIndicator); + StartProgress(m_pProgressIndicator); SetNextState(PROJPROP_RETRPROJECTPROPERTIES_BEGIN); break; case PROJPROP_RETRPROJECTPROPERTIES_BEGIN: @@ -390,7 +398,7 @@ void CProjectPropertiesPage::OnStateChange( CProjectPropertiesPageEvent& event ) dtCurrentExecutionTime = wxDateTime::Now(); tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.get_project_config_poll(*pc); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -466,7 +474,7 @@ void CProjectPropertiesPage::OnStateChange( CProjectPropertiesPageEvent& event ) dtCurrentExecutionTime = wxDateTime::Now(); tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.lookup_website_poll(); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -500,7 +508,7 @@ void CProjectPropertiesPage::OnStateChange( CProjectPropertiesPageEvent& event ) dtCurrentExecutionTime = wxDateTime::Now(); tsExecutionTime = dtCurrentExecutionTime - dtStartExecutionTime; iReturnValue = pDoc->rpc.lookup_website_poll(); - IncrementProgress(m_ProgressIndicator); + IncrementProgress(m_pProgressIndicator); ::wxMilliSleep(500); ::wxSafeYield(GetParent()); @@ -528,7 +536,7 @@ void CProjectPropertiesPage::OnStateChange( CProjectPropertiesPageEvent& event ) SetNextState(PROJPROP_CLEANUP); break; case PROJPROP_CLEANUP: - FinishProgress(m_ProgressIndicator); + FinishProgress(m_pProgressIndicator); SetNextState(PROJPROP_END); break; default: diff --git a/clientgui/ProjectPropertiesPage.h b/clientgui/ProjectPropertiesPage.h index f670ff2d26..18dcd66195 100644 --- a/clientgui/ProjectPropertiesPage.h +++ b/clientgui/ProjectPropertiesPage.h @@ -148,9 +148,9 @@ public: void FinishProgress(wxStaticBitmap* pBitmap); ////@begin CProjectPropertiesPage member variables - wxStaticBitmap* m_ProgressIndicator; + wxStaticText* m_pTitleStaticCtrl; + wxStaticBitmap* m_pProgressIndicator; ////@end CProjectPropertiesPage member variables - bool m_bProjectPropertiesSucceeded; bool m_bProjectPropertiesURLFailure; bool m_bProjectAccountCreationDisabled; diff --git a/clientgui/ProxyInfoPage.cpp b/clientgui/ProxyInfoPage.cpp index 3984132b7b..9e2e49544d 100644 --- a/clientgui/ProxyInfoPage.cpp +++ b/clientgui/ProxyInfoPage.cpp @@ -70,6 +70,9 @@ CErrProxyInfoPage::CErrProxyInfoPage( CBOINCBaseWizard* parent ) bool CErrProxyInfoPage::Create( CBOINCBaseWizard* parent ) { ////@begin CErrProxyInfoPage member initialisation + m_pTitleStaticCtrl = NULL; + m_pDescriptionStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; ////@end CErrProxyInfoPage member initialisation ////@begin CErrProxyInfoPage creation @@ -95,29 +98,22 @@ void CErrProxyInfoPage::CreateControls() wxBoxSizer* itemBoxSizer127 = new wxBoxSizer(wxVERTICAL); itemWizardPage126->SetSizer(itemBoxSizer127); - wxStaticText* itemStaticText128 = new wxStaticText; - itemStaticText128->Create( itemWizardPage126, wxID_STATIC, - _("Network communication failure"), - wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText128->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer127->Add(itemStaticText128, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage126, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer127->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticText* itemStaticText130 = new wxStaticText; - itemStaticText130->Create( itemWizardPage126, wxID_STATIC, - _("BOINC failed to communicate on the Internet. The most likely\n" - "reasons are:\n" - "\n" - "1) Personal firewall software is blocking BOINC. You must\n" - "configure your personal firewall to let BOINC communicate\n" - "on port 80. Once this is fixed, click Back to try again.\n" - "\n" - "2) You are using a proxy server and BOINC needs to know\n" - "about it.\n" - "\n" - "Click Next to configure BOINC's proxy settings.\n"), - wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer127->Add(itemStaticText130, 0, wxALIGN_LEFT|wxALL, 5); + itemBoxSizer127->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + m_pDescriptionStaticCtrl = new wxStaticText; + m_pDescriptionStaticCtrl->Create( itemWizardPage126, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer127->Add(m_pDescriptionStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); + + itemBoxSizer127->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage126, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer127->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); ////@end CErrProxyInfoPage content construction } @@ -184,7 +180,31 @@ wxIcon CErrProxyInfoPage::GetIconResource( const wxString& name ) */ void CErrProxyInfoPage::OnPageChanged( wxWizardExEvent& event ) { - event.Skip(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDescriptionStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); + + m_pTitleStaticCtrl->SetLabel( + _("Network communication failure") + ); + m_pDescriptionStaticCtrl->SetLabel( + _("BOINC failed to communicate on the Internet. The most likely\n" + "reasons are:\n" + "\n" + "1) Personal firewall software is blocking BOINC. You must\n" + "configure your personal firewall to let BOINC communicate\n" + "on port 80. Once this is fixed, click Back to try again.\n" + "\n" + "2) You are using a proxy server and BOINC needs to know\n" + "about it.") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("Click Next to configure BOINC's proxy settings.") + ); + + Fit(); } /*! diff --git a/clientgui/ProxyInfoPage.h b/clientgui/ProxyInfoPage.h index 184315856a..0b2675a509 100644 --- a/clientgui/ProxyInfoPage.h +++ b/clientgui/ProxyInfoPage.h @@ -74,6 +74,9 @@ public: static bool ShowToolTips(); ////@begin CErrProxyInfoPage member variables + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDescriptionStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; ////@end CErrProxyInfoPage member variables }; diff --git a/clientgui/ProxyPage.cpp b/clientgui/ProxyPage.cpp index 86bee2eedb..803666675a 100644 --- a/clientgui/ProxyPage.cpp +++ b/clientgui/ProxyPage.cpp @@ -71,23 +71,28 @@ CErrProxyPage::CErrProxyPage( CBOINCBaseWizard* parent ) bool CErrProxyPage::Create( CBOINCBaseWizard* parent ) { ////@begin CErrProxyPage member initialisation - m_ProxyHTTPServerStaticCtrl = NULL; - m_ProxyHTTPServerCtrl = NULL; - m_ProxyHTTPPortStaticCtrl = NULL; - m_ProxyHTTPPortCtrl = NULL; - m_ProxyHTTPUsernameStaticCtrl = NULL; - m_ProxyHTTPUsernameCtrl = NULL; - m_ProxyHTTPPasswordStaticCtrl = NULL; - m_ProxyHTTPPasswordCtrl = NULL; - m_ProxyHTTPAutodetectCtrl = NULL; - m_ProxySOCKSServerStaticCtrl = NULL; - m_ProxySOCKSServerCtrl = NULL; - m_ProxySOCKSPortStaticCtrl = NULL; - m_ProxySOCKSPortCtrl = NULL; - m_ProxySOCKSUsernameStaticCtrl = NULL; - m_ProxySOCKSUsernameCtrl = NULL; - m_ProxySOCKSPasswordStaticCtrl = NULL; - m_ProxySOCKSPasswordCtrl = NULL; + m_pTitleStaticCtrl = NULL; + m_pProxyHTTPDescriptionCtrl = NULL; + m_pProxyHTTPServerStaticCtrl = NULL; + m_pProxyHTTPServerCtrl = NULL; + m_pProxyHTTPPortStaticCtrl = NULL; + m_pProxyHTTPPortCtrl = NULL; + m_pProxyHTTPUsernameStaticCtrl = NULL; + m_pProxyHTTPUsernameCtrl = NULL; + m_pProxyHTTPPasswordStaticCtrl = NULL; + m_pProxyHTTPPasswordCtrl = NULL; +#if 0 + m_pProxyHTTPAutodetectCtrl = NULL; +#endif + m_pProxySOCKSDescriptionCtrl = NULL; + m_pProxySOCKSServerStaticCtrl = NULL; + m_pProxySOCKSServerCtrl = NULL; + m_pProxySOCKSPortStaticCtrl = NULL; + m_pProxySOCKSPortCtrl = NULL; + m_pProxySOCKSUsernameStaticCtrl = NULL; + m_pProxySOCKSUsernameCtrl = NULL; + m_pProxySOCKSPasswordStaticCtrl = NULL; + m_pProxySOCKSPasswordCtrl = NULL; ////@end CErrProxyPage member initialisation ////@begin CErrProxyPage creation @@ -113,116 +118,116 @@ void CErrProxyPage::CreateControls() wxBoxSizer* itemBoxSizer122 = new wxBoxSizer(wxVERTICAL); itemWizardPage121->SetSizer(itemBoxSizer122); - wxStaticText* itemStaticText123 = new wxStaticText; - itemStaticText123->Create( itemWizardPage121, wxID_STATIC, _("Proxy configuration"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText123->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer122->Add(itemStaticText123, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage121, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer122->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); itemBoxSizer122->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - wxStaticBox* itemStaticBoxSizer125Static = new wxStaticBox(itemWizardPage121, wxID_ANY, _("HTTP proxy")); - wxStaticBoxSizer* itemStaticBoxSizer125 = new wxStaticBoxSizer(itemStaticBoxSizer125Static, wxVERTICAL); + m_pProxyHTTPDescriptionCtrl = new wxStaticBox(itemWizardPage121, wxID_ANY, wxEmptyString); + wxStaticBoxSizer* itemStaticBoxSizer125 = new wxStaticBoxSizer(m_pProxyHTTPDescriptionCtrl, wxVERTICAL); itemBoxSizer122->Add(itemStaticBoxSizer125, 0, wxGROW|wxALL, 0); wxFlexGridSizer* itemFlexGridSizer126 = new wxFlexGridSizer(3, 2, 0, 0); itemFlexGridSizer126->AddGrowableCol(1); itemStaticBoxSizer125->Add(itemFlexGridSizer126, 0, wxGROW|wxALL, 2); - m_ProxyHTTPServerStaticCtrl = new wxStaticText; - m_ProxyHTTPServerStaticCtrl->Create( itemWizardPage121, ID_PROXYHTTPSERVERSTATICCTRL, _("Server:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer126->Add(m_ProxyHTTPServerStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxyHTTPServerStaticCtrl = new wxStaticText; + m_pProxyHTTPServerStaticCtrl->Create( itemWizardPage121, ID_PROXYHTTPSERVERSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer126->Add(m_pProxyHTTPServerStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); wxFlexGridSizer* itemFlexGridSizer128 = new wxFlexGridSizer(1, 3, 0, 0); itemFlexGridSizer128->AddGrowableCol(0); itemFlexGridSizer126->Add(itemFlexGridSizer128, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ProxyHTTPServerCtrl = new wxTextCtrl; - m_ProxyHTTPServerCtrl->Create( itemWizardPage121, ID_PROXYHTTPSERVERCTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer128->Add(m_ProxyHTTPServerCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxyHTTPServerCtrl = new wxTextCtrl; + m_pProxyHTTPServerCtrl->Create( itemWizardPage121, ID_PROXYHTTPSERVERCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer128->Add(m_pProxyHTTPServerCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxyHTTPPortStaticCtrl = new wxStaticText; - m_ProxyHTTPPortStaticCtrl->Create( itemWizardPage121, ID_PROXYHTTPPORTSTATICCTRL, _("Port:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer128->Add(m_ProxyHTTPPortStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxyHTTPPortStaticCtrl = new wxStaticText; + m_pProxyHTTPPortStaticCtrl->Create( itemWizardPage121, ID_PROXYHTTPPORTSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer128->Add(m_pProxyHTTPPortStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxyHTTPPortCtrl = new wxTextCtrl; - m_ProxyHTTPPortCtrl->Create( itemWizardPage121, ID_PROXYHTTPPORTCTRL, _T(""), wxDefaultPosition, wxSize(50, -1), 0 ); - itemFlexGridSizer128->Add(m_ProxyHTTPPortCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxyHTTPPortCtrl = new wxTextCtrl; + m_pProxyHTTPPortCtrl->Create( itemWizardPage121, ID_PROXYHTTPPORTCTRL, wxEmptyString, wxDefaultPosition, wxSize(50, -1), 0 ); + itemFlexGridSizer128->Add(m_pProxyHTTPPortCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxyHTTPUsernameStaticCtrl = new wxStaticText; - m_ProxyHTTPUsernameStaticCtrl->Create( itemWizardPage121, ID_PROXYHTTPUSERNAMESTATICCTRL, _("User Name:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer126->Add(m_ProxyHTTPUsernameStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxyHTTPUsernameStaticCtrl = new wxStaticText; + m_pProxyHTTPUsernameStaticCtrl->Create( itemWizardPage121, ID_PROXYHTTPUSERNAMESTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer126->Add(m_pProxyHTTPUsernameStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxyHTTPUsernameCtrl = new wxTextCtrl; - m_ProxyHTTPUsernameCtrl->Create( itemWizardPage121, ID_PROXYHTTPUSERNAMECTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer126->Add(m_ProxyHTTPUsernameCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxyHTTPUsernameCtrl = new wxTextCtrl; + m_pProxyHTTPUsernameCtrl->Create( itemWizardPage121, ID_PROXYHTTPUSERNAMECTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer126->Add(m_pProxyHTTPUsernameCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxyHTTPPasswordStaticCtrl = new wxStaticText; - m_ProxyHTTPPasswordStaticCtrl->Create( itemWizardPage121, ID_PROXYHTTPPASSWORDSTATICCTRL, _("Password:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer126->Add(m_ProxyHTTPPasswordStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxyHTTPPasswordStaticCtrl = new wxStaticText; + m_pProxyHTTPPasswordStaticCtrl->Create( itemWizardPage121, ID_PROXYHTTPPASSWORDSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer126->Add(m_pProxyHTTPPasswordStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxyHTTPPasswordCtrl = new wxTextCtrl; - m_ProxyHTTPPasswordCtrl->Create( itemWizardPage121, ID_PROXYHTTPPASSWORDCTRL, _T(""), wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); - itemFlexGridSizer126->Add(m_ProxyHTTPPasswordCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxyHTTPPasswordCtrl = new wxTextCtrl; + m_pProxyHTTPPasswordCtrl->Create( itemWizardPage121, ID_PROXYHTTPPASSWORDCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); + itemFlexGridSizer126->Add(m_pProxyHTTPPasswordCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); #if 0 - m_ProxyHTTPAutodetectCtrl = new wxButton; - m_ProxyHTTPAutodetectCtrl->Create( itemWizardPage121, ID_PROXYHTTPAUTODETECTCTRL, _("Autodetect"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticBoxSizer125->Add(m_ProxyHTTPAutodetectCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 2); + m_pProxyHTTPAutodetectCtrl = new wxButton; + m_pProxyHTTPAutodetectCtrl->Create( itemWizardPage121, ID_PROXYHTTPAUTODETECTCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemStaticBoxSizer125->Add(m_pProxyHTTPAutodetectCtrl, 0, wxALIGN_CENTER_HORIZONTAL|wxALL, 2); #endif - wxStaticBox* itemStaticBoxSizer137Static = new wxStaticBox(itemWizardPage121, wxID_ANY, _("SOCKS proxy")); - wxStaticBoxSizer* itemStaticBoxSizer137 = new wxStaticBoxSizer(itemStaticBoxSizer137Static, wxVERTICAL); + m_pProxySOCKSDescriptionCtrl = new wxStaticBox(itemWizardPage121, wxID_ANY, wxEmptyString); + wxStaticBoxSizer* itemStaticBoxSizer137 = new wxStaticBoxSizer(m_pProxySOCKSDescriptionCtrl, wxVERTICAL); itemBoxSizer122->Add(itemStaticBoxSizer137, 0, wxGROW|wxALL, 0); wxFlexGridSizer* itemFlexGridSizer138 = new wxFlexGridSizer(3, 2, 0, 0); itemFlexGridSizer138->AddGrowableCol(1); itemStaticBoxSizer137->Add(itemFlexGridSizer138, 0, wxGROW|wxALL, 2); - m_ProxySOCKSServerStaticCtrl = new wxStaticText; - m_ProxySOCKSServerStaticCtrl->Create( itemWizardPage121, ID_PROXYSOCKSSERVERSTATICCTRL, _("Server:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer138->Add(m_ProxySOCKSServerStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxySOCKSServerStaticCtrl = new wxStaticText; + m_pProxySOCKSServerStaticCtrl->Create( itemWizardPage121, ID_PROXYSOCKSSERVERSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer138->Add(m_pProxySOCKSServerStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); wxFlexGridSizer* itemFlexGridSizer140 = new wxFlexGridSizer(1, 3, 0, 0); itemFlexGridSizer140->AddGrowableCol(0); itemFlexGridSizer138->Add(itemFlexGridSizer140, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ProxySOCKSServerCtrl = new wxTextCtrl; - m_ProxySOCKSServerCtrl->Create( itemWizardPage121, ID_PROXYSOCKSSERVERCTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer140->Add(m_ProxySOCKSServerCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxySOCKSServerCtrl = new wxTextCtrl; + m_pProxySOCKSServerCtrl->Create( itemWizardPage121, ID_PROXYSOCKSSERVERCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer140->Add(m_pProxySOCKSServerCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxySOCKSPortStaticCtrl = new wxStaticText; - m_ProxySOCKSPortStaticCtrl->Create( itemWizardPage121, ID_PROXYSOCKSPORTSTATICCTRL, _("Port:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer140->Add(m_ProxySOCKSPortStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxySOCKSPortStaticCtrl = new wxStaticText; + m_pProxySOCKSPortStaticCtrl->Create( itemWizardPage121, ID_PROXYSOCKSPORTSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer140->Add(m_pProxySOCKSPortStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxySOCKSPortCtrl = new wxTextCtrl; - m_ProxySOCKSPortCtrl->Create( itemWizardPage121, ID_PROXYSOCKSPORTCTRL, _T(""), wxDefaultPosition, wxSize(50, -1), 0 ); - itemFlexGridSizer140->Add(m_ProxySOCKSPortCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxySOCKSPortCtrl = new wxTextCtrl; + m_pProxySOCKSPortCtrl->Create( itemWizardPage121, ID_PROXYSOCKSPORTCTRL, wxEmptyString, wxDefaultPosition, wxSize(50, -1), 0 ); + itemFlexGridSizer140->Add(m_pProxySOCKSPortCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxySOCKSUsernameStaticCtrl = new wxStaticText; - m_ProxySOCKSUsernameStaticCtrl->Create( itemWizardPage121, ID_PROXYSOCKSUSERNAMESTATICCTRL, _("User Name:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer138->Add(m_ProxySOCKSUsernameStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxySOCKSUsernameStaticCtrl = new wxStaticText; + m_pProxySOCKSUsernameStaticCtrl->Create( itemWizardPage121, ID_PROXYSOCKSUSERNAMESTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer138->Add(m_pProxySOCKSUsernameStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxySOCKSUsernameCtrl = new wxTextCtrl; - m_ProxySOCKSUsernameCtrl->Create( itemWizardPage121, ID_PROXYSOCKSUSERNAMECTRL, _T(""), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer138->Add(m_ProxySOCKSUsernameCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxySOCKSUsernameCtrl = new wxTextCtrl; + m_pProxySOCKSUsernameCtrl->Create( itemWizardPage121, ID_PROXYSOCKSUSERNAMECTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer138->Add(m_pProxySOCKSUsernameCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxySOCKSPasswordStaticCtrl = new wxStaticText; - m_ProxySOCKSPasswordStaticCtrl->Create( itemWizardPage121, ID_PROXYSOCKSPASSWORDSTATICCTRL, _("Password:"), wxDefaultPosition, wxDefaultSize, 0 ); - itemFlexGridSizer138->Add(m_ProxySOCKSPasswordStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxySOCKSPasswordStaticCtrl = new wxStaticText; + m_pProxySOCKSPasswordStaticCtrl->Create( itemWizardPage121, ID_PROXYSOCKSPASSWORDSTATICCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemFlexGridSizer138->Add(m_pProxySOCKSPasswordStaticCtrl, 0, wxALIGN_RIGHT|wxALIGN_CENTER_VERTICAL|wxALL, 2); - m_ProxySOCKSPasswordCtrl = new wxTextCtrl; - m_ProxySOCKSPasswordCtrl->Create( itemWizardPage121, ID_PROXYSOCKSPASSWORDCTRL, _T(""), wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); - itemFlexGridSizer138->Add(m_ProxySOCKSPasswordCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); + m_pProxySOCKSPasswordCtrl = new wxTextCtrl; + m_pProxySOCKSPasswordCtrl->Create( itemWizardPage121, ID_PROXYSOCKSPASSWORDCTRL, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxTE_PASSWORD ); + itemFlexGridSizer138->Add(m_pProxySOCKSPasswordCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 2); // Set validators - m_ProxyHTTPServerCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxyHTTPServer) ); - m_ProxyHTTPPortCtrl->SetValidator( wxTextValidator(wxFILTER_NUMERIC, & m_strProxyHTTPPort) ); - m_ProxyHTTPUsernameCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxyHTTPUsername) ); - m_ProxyHTTPPasswordCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxyHTTPPassword) ); - m_ProxySOCKSServerCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxySOCKSServer) ); - m_ProxySOCKSPortCtrl->SetValidator( wxTextValidator(wxFILTER_NUMERIC, & m_strProxySOCKSPort) ); - m_ProxySOCKSUsernameCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxySOCKSUsername) ); - m_ProxySOCKSPasswordCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxySOCKSPassword) ); + m_pProxyHTTPServerCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxyHTTPServer) ); + m_pProxyHTTPPortCtrl->SetValidator( wxTextValidator(wxFILTER_NUMERIC, & m_strProxyHTTPPort) ); + m_pProxyHTTPUsernameCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxyHTTPUsername) ); + m_pProxyHTTPPasswordCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxyHTTPPassword) ); + m_pProxySOCKSServerCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxySOCKSServer) ); + m_pProxySOCKSPortCtrl->SetValidator( wxTextValidator(wxFILTER_NUMERIC, & m_strProxySOCKSPort) ); + m_pProxySOCKSUsernameCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxySOCKSUsername) ); + m_pProxySOCKSPasswordCtrl->SetValidator( wxTextValidator(wxFILTER_NONE, & m_strProxySOCKSPassword) ); ////@end CErrProxyPage content construction } @@ -246,7 +251,7 @@ wxWizardPageEx* CErrProxyPage::GetNext() const return PAGE_TRANSITION_NEXT(ID_COMPLETIONERRORPAGE); } else if (IS_ATTACHTOPROJECTWIZARD()) { return PAGE_TRANSITION_NEXT(ID_PROJECTPROPERTIESPAGE); - } else if (IS_ACCOUNTMANAGERATTACHWIZARD()) { + } else if (IS_ACCOUNTMANAGERWIZARD()) { return PAGE_TRANSITION_NEXT(ID_ACCOUNTMANAGERPROPERTIESPAGE); } return NULL; @@ -295,26 +300,90 @@ void CErrProxyPage::OnPageChanged( wxWizardExEvent& event ) { wxASSERT(pDoc); wxASSERT(wxDynamicCast(pDoc, CMainDocument)); + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pProxyHTTPDescriptionCtrl); + wxASSERT(m_pProxyHTTPServerStaticCtrl); + wxASSERT(m_pProxyHTTPServerCtrl); + wxASSERT(m_pProxyHTTPPortStaticCtrl); + wxASSERT(m_pProxyHTTPPortCtrl); + wxASSERT(m_pProxyHTTPUsernameStaticCtrl); + wxASSERT(m_pProxyHTTPUsernameCtrl); + wxASSERT(m_pProxyHTTPPasswordStaticCtrl); + wxASSERT(m_pProxyHTTPPasswordCtrl); +#if 0 + wxASSERT(m_pProxyHTTPAutodetectCtrl); +#endif + wxASSERT(m_pProxySOCKSDescriptionCtrl); + wxASSERT(m_pProxySOCKSServerStaticCtrl); + wxASSERT(m_pProxySOCKSServerCtrl); + wxASSERT(m_pProxySOCKSPortStaticCtrl); + wxASSERT(m_pProxySOCKSPortCtrl); + wxASSERT(m_pProxySOCKSUsernameStaticCtrl); + wxASSERT(m_pProxySOCKSUsernameCtrl); + wxASSERT(m_pProxySOCKSPasswordStaticCtrl); + wxASSERT(m_pProxySOCKSPasswordCtrl); if (event.GetDirection() == true) { - // Moving from the previous page, get state + // Moving from the previous page, update text and get state + + m_pTitleStaticCtrl->SetLabel( + _("Proxy configuration") + ); + m_pProxyHTTPDescriptionCtrl->SetLabel( + _("HTTP proxy") + ); + m_pProxyHTTPServerStaticCtrl->SetLabel( + _("Server:") + ); + m_pProxyHTTPPortStaticCtrl->SetLabel( + _("Port:") + ); + m_pProxyHTTPUsernameStaticCtrl->SetLabel( + _("User Name:") + ); + m_pProxyHTTPPasswordStaticCtrl->SetLabel( + _("Password:") + ); +#if 0 + m_pProxyHTTPAutodetectCtrl->SetLabel( + _("Autodetect") + ); +#endif + m_pProxySOCKSDescriptionCtrl->SetLabel( + _("SOCKS proxy") + ); + m_pProxySOCKSServerStaticCtrl->SetLabel( + _("Server:") + ); + m_pProxySOCKSPortStaticCtrl->SetLabel( + _("Port:") + ); + m_pProxySOCKSUsernameStaticCtrl->SetLabel( + _("User Name:") + ); + m_pProxySOCKSPasswordStaticCtrl->SetLabel( + _("Password:") + ); + pDoc->GetProxyConfiguration(); - m_ProxyHTTPServerCtrl->SetValue(pDoc->proxy_info.http_server_name.c_str()); - m_ProxyHTTPUsernameCtrl->SetValue(pDoc->proxy_info.http_user_name.c_str()); - m_ProxyHTTPPasswordCtrl->SetValue(pDoc->proxy_info.http_user_passwd.c_str()); + m_pProxyHTTPServerCtrl->SetValue(pDoc->proxy_info.http_server_name.c_str()); + m_pProxyHTTPUsernameCtrl->SetValue(pDoc->proxy_info.http_user_name.c_str()); + m_pProxyHTTPPasswordCtrl->SetValue(pDoc->proxy_info.http_user_passwd.c_str()); strBuffer.Printf(wxT("%d"), pDoc->proxy_info.http_server_port); - m_ProxyHTTPPortCtrl->SetValue(strBuffer); + m_pProxyHTTPPortCtrl->SetValue(strBuffer); - m_ProxySOCKSServerCtrl->SetValue(pDoc->proxy_info.socks_server_name.c_str()); - m_ProxySOCKSUsernameCtrl->SetValue(pDoc->proxy_info.socks5_user_name.c_str()); - m_ProxySOCKSPasswordCtrl->SetValue(pDoc->proxy_info.socks5_user_passwd.c_str()); + m_pProxySOCKSServerCtrl->SetValue(pDoc->proxy_info.socks_server_name.c_str()); + m_pProxySOCKSUsernameCtrl->SetValue(pDoc->proxy_info.socks5_user_name.c_str()); + m_pProxySOCKSPasswordCtrl->SetValue(pDoc->proxy_info.socks5_user_passwd.c_str()); strBuffer.Printf(wxT("%d"), pDoc->proxy_info.socks_server_port); - m_ProxySOCKSPortCtrl->SetValue(strBuffer); + m_pProxySOCKSPortCtrl->SetValue(strBuffer); - m_ProxyHTTPServerCtrl->SetFocus(); + m_pProxyHTTPServerCtrl->SetFocus(); } + + Fit(); } /*! @@ -331,21 +400,21 @@ void CErrProxyPage::OnPageChanging( wxWizardExEvent& event ) { if (event.GetDirection() == true) { // Moving to the next page, save state - pDoc->proxy_info.use_http_proxy = (m_ProxyHTTPServerCtrl->GetValue().Length() > 0); - pDoc->proxy_info.http_server_name = m_ProxyHTTPServerCtrl->GetValue().c_str(); - pDoc->proxy_info.http_user_name = m_ProxyHTTPUsernameCtrl->GetValue().c_str(); - pDoc->proxy_info.http_user_passwd = m_ProxyHTTPPasswordCtrl->GetValue().c_str(); + pDoc->proxy_info.use_http_proxy = (m_pProxyHTTPServerCtrl->GetValue().Length() > 0); + pDoc->proxy_info.http_server_name = m_pProxyHTTPServerCtrl->GetValue().c_str(); + pDoc->proxy_info.http_user_name = m_pProxyHTTPUsernameCtrl->GetValue().c_str(); + pDoc->proxy_info.http_user_passwd = m_pProxyHTTPPasswordCtrl->GetValue().c_str(); - strBuffer = m_ProxyHTTPPortCtrl->GetValue(); + strBuffer = m_pProxyHTTPPortCtrl->GetValue(); strBuffer.ToLong((long*)&iBuffer); pDoc->proxy_info.http_server_port = iBuffer; - pDoc->proxy_info.use_socks_proxy = (m_ProxySOCKSServerCtrl->GetValue().Length() > 0); - pDoc->proxy_info.socks_server_name = m_ProxySOCKSServerCtrl->GetValue().c_str(); - pDoc->proxy_info.socks5_user_name = m_ProxySOCKSUsernameCtrl->GetValue().c_str(); - pDoc->proxy_info.socks5_user_passwd = m_ProxySOCKSPasswordCtrl->GetValue().c_str(); + pDoc->proxy_info.use_socks_proxy = (m_pProxySOCKSServerCtrl->GetValue().Length() > 0); + pDoc->proxy_info.socks_server_name = m_pProxySOCKSServerCtrl->GetValue().c_str(); + pDoc->proxy_info.socks5_user_name = m_pProxySOCKSUsernameCtrl->GetValue().c_str(); + pDoc->proxy_info.socks5_user_passwd = m_pProxySOCKSPasswordCtrl->GetValue().c_str(); - strBuffer = m_ProxySOCKSPortCtrl->GetValue(); + strBuffer = m_pProxySOCKSPortCtrl->GetValue(); strBuffer.ToLong((long*)&iBuffer); pDoc->proxy_info.socks_server_port = iBuffer; diff --git a/clientgui/ProxyPage.h b/clientgui/ProxyPage.h index e1cc9522cf..b9df0de71e 100644 --- a/clientgui/ProxyPage.h +++ b/clientgui/ProxyPage.h @@ -101,23 +101,28 @@ public: static bool ShowToolTips(); ////@begin CErrProxyPage member variables - wxStaticText* m_ProxyHTTPServerStaticCtrl; - wxTextCtrl* m_ProxyHTTPServerCtrl; - wxStaticText* m_ProxyHTTPPortStaticCtrl; - wxTextCtrl* m_ProxyHTTPPortCtrl; - wxStaticText* m_ProxyHTTPUsernameStaticCtrl; - wxTextCtrl* m_ProxyHTTPUsernameCtrl; - wxStaticText* m_ProxyHTTPPasswordStaticCtrl; - wxTextCtrl* m_ProxyHTTPPasswordCtrl; - wxButton* m_ProxyHTTPAutodetectCtrl; - wxStaticText* m_ProxySOCKSServerStaticCtrl; - wxTextCtrl* m_ProxySOCKSServerCtrl; - wxStaticText* m_ProxySOCKSPortStaticCtrl; - wxTextCtrl* m_ProxySOCKSPortCtrl; - wxStaticText* m_ProxySOCKSUsernameStaticCtrl; - wxTextCtrl* m_ProxySOCKSUsernameCtrl; - wxStaticText* m_ProxySOCKSPasswordStaticCtrl; - wxTextCtrl* m_ProxySOCKSPasswordCtrl; + wxStaticText* m_pTitleStaticCtrl; + wxStaticBox* m_pProxyHTTPDescriptionCtrl; + wxStaticText* m_pProxyHTTPServerStaticCtrl; + wxTextCtrl* m_pProxyHTTPServerCtrl; + wxStaticText* m_pProxyHTTPPortStaticCtrl; + wxTextCtrl* m_pProxyHTTPPortCtrl; + wxStaticText* m_pProxyHTTPUsernameStaticCtrl; + wxTextCtrl* m_pProxyHTTPUsernameCtrl; + wxStaticText* m_pProxyHTTPPasswordStaticCtrl; + wxTextCtrl* m_pProxyHTTPPasswordCtrl; +#if 0 + wxButton* m_pProxyHTTPAutodetectCtrl; +#endif + wxStaticBox* m_pProxySOCKSDescriptionCtrl; + wxStaticText* m_pProxySOCKSServerStaticCtrl; + wxTextCtrl* m_pProxySOCKSServerCtrl; + wxStaticText* m_pProxySOCKSPortStaticCtrl; + wxTextCtrl* m_pProxySOCKSPortCtrl; + wxStaticText* m_pProxySOCKSUsernameStaticCtrl; + wxTextCtrl* m_pProxySOCKSUsernameCtrl; + wxStaticText* m_pProxySOCKSPasswordStaticCtrl; + wxTextCtrl* m_pProxySOCKSPasswordCtrl; wxString m_strProxyHTTPServer; wxString m_strProxyHTTPPort; wxString m_strProxyHTTPUsername; diff --git a/clientgui/UnavailablePage.cpp b/clientgui/UnavailablePage.cpp index 076c246cc8..7940265520 100644 --- a/clientgui/UnavailablePage.cpp +++ b/clientgui/UnavailablePage.cpp @@ -70,6 +70,8 @@ CErrUnavailablePage::CErrUnavailablePage( CBOINCBaseWizard* parent ) bool CErrUnavailablePage::Create( CBOINCBaseWizard* parent ) { ////@begin CErrUnavailablePage member initialisation + m_pTitleStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; ////@end CErrUnavailablePage member initialisation ////@begin CErrUnavailablePage creation @@ -95,30 +97,16 @@ void CErrUnavailablePage::CreateControls() wxBoxSizer* itemBoxSizer97 = new wxBoxSizer(wxVERTICAL); itemWizardPage96->SetSizer(itemBoxSizer97); - wxStaticText* itemStaticText98 = new wxStaticText; - wxStaticText* itemStaticText100 = new wxStaticText; - if (IS_ATTACHTOPROJECTWIZARD()) { - itemStaticText98->Create( itemWizardPage96, wxID_STATIC, _("Project temporarily unavailable"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText98->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer97->Add(itemStaticText98, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer97->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - itemBoxSizer97->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - itemStaticText100->Create( itemWizardPage96, wxID_STATIC, _("The project is temporarily unavailable.\n\nPlease try again later."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer97->Add(itemStaticText100, 0, wxALIGN_LEFT|wxALL, 5); - } - - if (IS_ACCOUNTMANAGERATTACHWIZARD()) { - itemStaticText98->Create( itemWizardPage96, wxID_STATIC, _("Account manager temporarily unavailable"), wxDefaultPosition, wxDefaultSize, 0 ); - itemStaticText98->SetFont(wxFont(10, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer97->Add(itemStaticText98, 0, wxALIGN_LEFT|wxALL, 5); - - itemBoxSizer97->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); - - itemStaticText100->Create( itemWizardPage96, wxID_STATIC, _("The account manager is temporarily unavailable.\n\nPlease try again later."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer97->Add(itemStaticText100, 0, wxALIGN_LEFT|wxALL, 5); - } + itemBoxSizer97->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage96, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer97->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); ////@end CErrUnavailablePage content construction } @@ -180,7 +168,30 @@ wxIcon CErrUnavailablePage::GetIconResource( const wxString& name ) */ void CErrUnavailablePage::OnPageChanged( wxWizardExEvent& event ) { - event.Skip(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); + + if (IS_ATTACHTOPROJECTWIZARD()) { + m_pTitleStaticCtrl->SetLabel( + _("Project temporarily unavailable") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("The project is temporarily unavailable.\n\nPlease try again later.") + ); + } else if (IS_ACCOUNTMANAGERWIZARD()) { + m_pTitleStaticCtrl->SetLabel( + _("Account manager temporarily unavailable") + ); + m_pDirectionsStaticCtrl->SetLabel( + _("The account manager is temporarily unavailable.\n\nPlease try again later.") + ); + } else { + wxASSERT(FALSE); + } + + Fit(); } /*! diff --git a/clientgui/UnavailablePage.h b/clientgui/UnavailablePage.h index d9fca86855..3ad8e60d36 100644 --- a/clientgui/UnavailablePage.h +++ b/clientgui/UnavailablePage.h @@ -74,6 +74,8 @@ public: static bool ShowToolTips(); ////@begin CErrUnavailablePage member variables + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; ////@end CErrUnavailablePage member variables }; diff --git a/clientgui/WelcomePage.cpp b/clientgui/WelcomePage.cpp index bed6a6d7ba..6c88830fb2 100644 --- a/clientgui/WelcomePage.cpp +++ b/clientgui/WelcomePage.cpp @@ -75,38 +75,22 @@ bool CWelcomePage::Create( CBOINCBaseWizard* parent ) { ////@begin CWelcomePage member initialisation + m_pTitleStaticCtrl = NULL; + m_pDescriptionStaticCtrl = NULL; + m_pDirectionsStaticCtrl = NULL; #if defined(__WXDEBUG__) - m_ErrProjectPropertiesCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrProjectCommCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrProjectPropertiesURLCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrAccountCreationDisabledCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrClientAccountCreationDisabledCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrAccountAlreadyExistsCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrProjectAlreadyAttachedCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrProjectAttachFailureCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrGoogleCommCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrYahooCommCtrl = NULL; -#endif -#if defined(__WXDEBUG__) - m_ErrNetDetectionCtrl = NULL; + m_pErrDescriptionCtrl = NULL; + m_pErrProjectPropertiesCtrl = NULL; + m_pErrProjectCommCtrl = NULL; + m_pErrProjectPropertiesURLCtrl = NULL; + m_pErrAccountCreationDisabledCtrl = NULL; + m_pErrClientAccountCreationDisabledCtrl = NULL; + m_pErrAccountAlreadyExistsCtrl = NULL; + m_pErrProjectAlreadyAttachedCtrl = NULL; + m_pErrProjectAttachFailureCtrl = NULL; + m_pErrGoogleCommCtrl = NULL; + m_pErrYahooCommCtrl = NULL; + m_pErrNetDetectionCtrl = NULL; #endif ////@end CWelcomePage member initialisation @@ -133,31 +117,20 @@ void CWelcomePage::CreateControls() wxBoxSizer* itemBoxSizer3 = new wxBoxSizer(wxVERTICAL); itemWizardPage2->SetSizer(itemBoxSizer3); - wxStaticText* m_Title = new wxStaticText; - wxStaticText* m_Description = new wxStaticText; - if (IS_ATTACHTOPROJECTWIZARD()) { - m_Title->Create( itemWizardPage2, wxID_STATIC, _("Attach to project"), wxDefaultPosition, wxDefaultSize, 0 ); - m_Title->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer3->Add(m_Title, 0, wxALIGN_LEFT|wxALL, 5); + m_pTitleStaticCtrl = new wxStaticText; + m_pTitleStaticCtrl->Create( itemWizardPage2, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxSize(355,24), 0 ); + m_pTitleStaticCtrl->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); + itemBoxSizer3->Add(m_pTitleStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); - m_Description->Create( itemWizardPage2, wxID_STATIC, _("We'll now guide you through the process of attaching to a project."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer3->Add(m_Description, 0, wxALIGN_LEFT|wxALL, 5); - } - - if (IS_ACCOUNTMANAGERATTACHWIZARD()) { - m_Title->Create( itemWizardPage2, wxID_STATIC, _("Account manager"), wxDefaultPosition, wxDefaultSize, 0 ); - m_Title->SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD, FALSE, _T("Verdana"))); - itemBoxSizer3->Add(m_Title, 0, wxALIGN_LEFT|wxALL, 5); - - m_Description->Create( itemWizardPage2, wxID_STATIC, _("We'll now guide you through the process of \nadding/updating/removing an account manager."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer3->Add(m_Description, 0, wxALIGN_LEFT|wxALL, 5); - } + m_pDescriptionStaticCtrl = new wxStaticText; + m_pDescriptionStaticCtrl->Create( itemWizardPage2, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer3->Add(m_pDescriptionStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); itemBoxSizer3->Add(5, 5, 0, wxALIGN_LEFT|wxALL, 5); #if defined(__WXDEBUG__) - wxStaticBox* itemStaticBoxSizer7Static = new wxStaticBox(itemWizardPage2, wxID_ANY, _("Debug Flags")); - wxStaticBoxSizer* itemStaticBoxSizer7 = new wxStaticBoxSizer(itemStaticBoxSizer7Static, wxVERTICAL); + m_pErrDescriptionCtrl = new wxStaticBox(itemWizardPage2, wxID_ANY, wxEmptyString); + wxStaticBoxSizer* itemStaticBoxSizer7 = new wxStaticBoxSizer(m_pErrDescriptionCtrl, wxVERTICAL); itemBoxSizer3->Add(itemStaticBoxSizer7, 0, wxGROW|wxALL, 5); wxFlexGridSizer* itemFlexGridSizer8 = new wxFlexGridSizer(-1, 2, 0, 0); @@ -165,73 +138,71 @@ void CWelcomePage::CreateControls() itemFlexGridSizer8->AddGrowableCol(1); itemStaticBoxSizer7->Add(itemFlexGridSizer8, 0, wxGROW|wxALL, 5); - m_ErrProjectPropertiesCtrl = new wxCheckBox; - m_ErrProjectPropertiesCtrl->Create( itemWizardPage2, ID_ERRPROJECTPROPERTIES, _("Project Properties Failure"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrProjectPropertiesCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrProjectPropertiesCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrProjectPropertiesCtrl = new wxCheckBox; + m_pErrProjectPropertiesCtrl->Create( itemWizardPage2, ID_ERRPROJECTPROPERTIES, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrProjectPropertiesCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrProjectPropertiesCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ErrProjectCommCtrl = new wxCheckBox; - m_ErrProjectCommCtrl->Create( itemWizardPage2, ID_ERRPROJECTCOMM, _("Project Comm Failure"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrProjectCommCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrProjectCommCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrProjectCommCtrl = new wxCheckBox; + m_pErrProjectCommCtrl->Create( itemWizardPage2, ID_ERRPROJECTCOMM, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrProjectCommCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrProjectCommCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ErrProjectPropertiesURLCtrl = new wxCheckBox; - m_ErrProjectPropertiesURLCtrl->Create( itemWizardPage2, ID_ERRPROJECTPROPERTIESURL, _("Project Properties URL Failure"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrProjectPropertiesURLCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrProjectPropertiesURLCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrProjectPropertiesURLCtrl = new wxCheckBox; + m_pErrProjectPropertiesURLCtrl->Create( itemWizardPage2, ID_ERRPROJECTPROPERTIESURL, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrProjectPropertiesURLCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrProjectPropertiesURLCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ErrAccountCreationDisabledCtrl = new wxCheckBox; - m_ErrAccountCreationDisabledCtrl->Create( itemWizardPage2, ID_ERRACCOUNTCREATIONDISABLED, _("Account Creation Disabled"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrAccountCreationDisabledCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrAccountCreationDisabledCtrl, 0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrAccountCreationDisabledCtrl = new wxCheckBox; + m_pErrAccountCreationDisabledCtrl->Create( itemWizardPage2, ID_ERRACCOUNTCREATIONDISABLED, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrAccountCreationDisabledCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrAccountCreationDisabledCtrl, 0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ErrClientAccountCreationDisabledCtrl = new wxCheckBox; - m_ErrClientAccountCreationDisabledCtrl->Create( itemWizardPage2, ID_ERRCLIENTACCOUNTCREATIONDISABLED, _("Client Account Creation Disabled"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrClientAccountCreationDisabledCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrClientAccountCreationDisabledCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrClientAccountCreationDisabledCtrl = new wxCheckBox; + m_pErrClientAccountCreationDisabledCtrl->Create( itemWizardPage2, ID_ERRCLIENTACCOUNTCREATIONDISABLED, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrClientAccountCreationDisabledCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrClientAccountCreationDisabledCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ErrAccountAlreadyExistsCtrl = new wxCheckBox; - m_ErrAccountAlreadyExistsCtrl->Create( itemWizardPage2, ID_ERRACCOUNTALREADYEXISTS, _("Account Already Exists"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrAccountAlreadyExistsCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrAccountAlreadyExistsCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrAccountAlreadyExistsCtrl = new wxCheckBox; + m_pErrAccountAlreadyExistsCtrl->Create( itemWizardPage2, ID_ERRACCOUNTALREADYEXISTS, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrAccountAlreadyExistsCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrAccountAlreadyExistsCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ErrProjectAlreadyAttachedCtrl = new wxCheckBox; - m_ErrProjectAlreadyAttachedCtrl->Create( itemWizardPage2, ID_ERRPROJECTALREADYATTACHED, _("Project Already Attached"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrProjectAlreadyAttachedCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrProjectAlreadyAttachedCtrl, 0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrProjectAlreadyAttachedCtrl = new wxCheckBox; + m_pErrProjectAlreadyAttachedCtrl->Create( itemWizardPage2, ID_ERRPROJECTALREADYATTACHED, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrProjectAlreadyAttachedCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrProjectAlreadyAttachedCtrl, 0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ErrProjectAttachFailureCtrl = new wxCheckBox; - m_ErrProjectAttachFailureCtrl->Create( itemWizardPage2, ID_ERRPROJECTATTACHFAILURE, _("Project Attach Failure"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrProjectAttachFailureCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrProjectAttachFailureCtrl, 0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrProjectAttachFailureCtrl = new wxCheckBox; + m_pErrProjectAttachFailureCtrl->Create( itemWizardPage2, ID_ERRPROJECTATTACHFAILURE, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrProjectAttachFailureCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrProjectAttachFailureCtrl, 0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ErrGoogleCommCtrl = new wxCheckBox; - m_ErrGoogleCommCtrl->Create( itemWizardPage2, ID_ERRGOOGLECOMM, _("Google Comm Failure"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrGoogleCommCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrGoogleCommCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrGoogleCommCtrl = new wxCheckBox; + m_pErrGoogleCommCtrl->Create( itemWizardPage2, ID_ERRGOOGLECOMM, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrGoogleCommCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrGoogleCommCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); itemFlexGridSizer8->Add(5, 5, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, 5); - m_ErrYahooCommCtrl = new wxCheckBox; - m_ErrYahooCommCtrl->Create( itemWizardPage2, ID_ERRYAHOOCOMM, _("Yahoo Comm Failure"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrYahooCommCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrYahooCommCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); + m_pErrYahooCommCtrl = new wxCheckBox; + m_pErrYahooCommCtrl->Create( itemWizardPage2, ID_ERRYAHOOCOMM, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrYahooCommCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrYahooCommCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); itemFlexGridSizer8->Add(5, 5, 0, wxALIGN_LEFT|wxALIGN_CENTER_VERTICAL|wxALL, 0); - m_ErrNetDetectionCtrl = new wxCheckBox; - m_ErrNetDetectionCtrl->Create( itemWizardPage2, ID_ERRNETDETECTION, _("Net Detection Failure"), wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); - m_ErrNetDetectionCtrl->SetValue(FALSE); - itemFlexGridSizer8->Add(m_ErrNetDetectionCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); - + m_pErrNetDetectionCtrl = new wxCheckBox; + m_pErrNetDetectionCtrl->Create( itemWizardPage2, ID_ERRNETDETECTION, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxCHK_2STATE ); + m_pErrNetDetectionCtrl->SetValue(FALSE); + itemFlexGridSizer8->Add(m_pErrNetDetectionCtrl, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, 0); #endif - wxStaticText* itemStaticText22 = new wxStaticText; - itemStaticText22->Create( itemWizardPage2, wxID_STATIC, _("To continue, click Next."), wxDefaultPosition, wxDefaultSize, 0 ); - itemBoxSizer3->Add(itemStaticText22, 0, wxALIGN_LEFT|wxALL, 5); + m_pDirectionsStaticCtrl = new wxStaticText; + m_pDirectionsStaticCtrl->Create( itemWizardPage2, wxID_STATIC, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); + itemBoxSizer3->Add(m_pDirectionsStaticCtrl, 0, wxALIGN_LEFT|wxALL, 5); ////@end CWelcomePage content construction - } /*! @@ -254,7 +225,7 @@ wxWizardPageEx* CWelcomePage::GetNext() const return PAGE_TRANSITION_NEXT(ID_COMPLETIONERRORPAGE); } else if (IS_ATTACHTOPROJECTWIZARD()) { return PAGE_TRANSITION_NEXT(ID_PROJECTINFOPAGE); - } else if (IS_ACCOUNTMANAGERATTACHWIZARD()) { + } else if (IS_ACCOUNTMANAGERWIZARD()) { return PAGE_TRANSITION_NEXT(ID_ACCOUNTMANAGERINFOPAGE); } return NULL; @@ -298,7 +269,89 @@ wxIcon CWelcomePage::GetIconResource( const wxString& name ) */ void CWelcomePage::OnPageChanged( wxWizardExEvent& event ) { - event.Skip(); + if (event.GetDirection() == false) return; + + wxASSERT(m_pTitleStaticCtrl); + wxASSERT(m_pDescriptionStaticCtrl); + wxASSERT(m_pDirectionsStaticCtrl); +#if defined(__WXDEBUG__) + wxASSERT(m_pErrDescriptionCtrl); + wxASSERT(m_pErrProjectPropertiesCtrl); + wxASSERT(m_pErrProjectCommCtrl); + wxASSERT(m_pErrProjectPropertiesURLCtrl); + wxASSERT(m_pErrAccountCreationDisabledCtrl); + wxASSERT(m_pErrClientAccountCreationDisabledCtrl); + wxASSERT(m_pErrAccountAlreadyExistsCtrl); + wxASSERT(m_pErrProjectAlreadyAttachedCtrl); + wxASSERT(m_pErrProjectAttachFailureCtrl); + wxASSERT(m_pErrGoogleCommCtrl); + wxASSERT(m_pErrYahooCommCtrl); + wxASSERT(m_pErrNetDetectionCtrl); +#endif + + if (IS_ATTACHTOPROJECTWIZARD()) { + m_pTitleStaticCtrl->SetLabel( + _("Attach to project") + ); + m_pDescriptionStaticCtrl->SetLabel( + _("We'll now guide you through the process of attaching to a project.") + ); + } else if (IS_ACCOUNTMANAGERWIZARD()) { + m_pTitleStaticCtrl->SetLabel( + _("Account manager") + ); + m_pDescriptionStaticCtrl->SetLabel( + _("We'll now guide you through the process of adding an account\n" + "manager.") + ); + } else { + wxASSERT(FALSE); + } + +#if defined(__WXDEBUG__) + m_pErrDescriptionCtrl->SetLabel( + _("Debug Flags") + ); + m_pErrProjectPropertiesCtrl->SetLabel( + _("Project Properties Failure") + ); + m_pErrProjectCommCtrl->SetLabel( + _("Project Comm Failure") + ); + m_pErrProjectPropertiesURLCtrl->SetLabel( + _("Project Properties URL Failure") + ); + m_pErrAccountCreationDisabledCtrl->SetLabel( + _("Account Creation Disabled") + ); + m_pErrClientAccountCreationDisabledCtrl->SetLabel( + _("Client Account Creation Disabled") + ); + m_pErrAccountAlreadyExistsCtrl->SetLabel( + _("Account Already Exists") + ); + m_pErrProjectAlreadyAttachedCtrl->SetLabel( + _("Project Already Attached") + ); + m_pErrProjectAttachFailureCtrl->SetLabel( + _("Project Attach Failure") + ); + m_pErrGoogleCommCtrl->SetLabel( + _("Google Comm Failure") + ); + m_pErrYahooCommCtrl->SetLabel( + _("Yahoo Comm Failure") + ); + m_pErrNetDetectionCtrl->SetLabel( + _("Net Detection Failure") + ); +#endif + + m_pDirectionsStaticCtrl->SetLabel( + _("To continue, click Next.") + ); + + GetSizer()->Fit(this); } /*! @@ -311,48 +364,39 @@ void CWelcomePage::OnPageChanging( wxWizardExEvent& event ) { unsigned long ulFlags = 0; #if defined(__WXDEBUG__) - if (m_ErrProjectPropertiesCtrl->GetValue()) + if (m_pErrProjectPropertiesCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRPROJECTPROPERTIES; -#endif -#if defined(__WXDEBUG__) - if (m_ErrProjectPropertiesURLCtrl->GetValue()) + } + if (m_pErrProjectPropertiesURLCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRPROJECTPROPERTIESURL; -#endif -#if defined(__WXDEBUG__) - if (m_ErrProjectCommCtrl->GetValue()) + } + if (m_pErrProjectCommCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRPROJECTCOMM; -#endif -#if defined(__WXDEBUG__) - if (m_ErrGoogleCommCtrl->GetValue()) + } + if (m_pErrGoogleCommCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRGOOGLECOMM; -#endif -#if defined(__WXDEBUG__) - if (m_ErrYahooCommCtrl->GetValue()) + } + if (m_pErrYahooCommCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRYAHOOCOMM; -#endif -#if defined(__WXDEBUG__) - if (m_ErrAccountAlreadyExistsCtrl->GetValue()) + } + if (m_pErrAccountAlreadyExistsCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRACCOUNTALREADYEXISTS; -#endif -#if defined(__WXDEBUG__) - if (m_ErrAccountCreationDisabledCtrl->GetValue()) + } + if (m_pErrAccountCreationDisabledCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRACCOUNTCREATIONDISABLED; -#endif -#if defined(__WXDEBUG__) - if (m_ErrClientAccountCreationDisabledCtrl->GetValue()) + } + if (m_pErrClientAccountCreationDisabledCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRCLIENTACCOUNTCREATIONDISABLED; -#endif -#if defined(__WXDEBUG__) - if (m_ErrProjectAttachFailureCtrl->GetValue()) + } + if (m_pErrProjectAttachFailureCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRPROJECTATTACH; -#endif -#if defined(__WXDEBUG__) - if (m_ErrProjectAlreadyAttachedCtrl->GetValue()) + } + if (m_pErrProjectAlreadyAttachedCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRPROJECTALREADYATTACHED; -#endif -#if defined(__WXDEBUG__) - if (m_ErrNetDetectionCtrl->GetValue()) + } + if (m_pErrNetDetectionCtrl->GetValue()) { ulFlags |= WIZDEBUG_ERRNETDETECTION; + } #endif PROCESS_DEBUG_FLAG( ulFlags ); diff --git a/clientgui/WelcomePage.h b/clientgui/WelcomePage.h index 9a40576373..8fe62d1470 100644 --- a/clientgui/WelcomePage.h +++ b/clientgui/WelcomePage.h @@ -77,41 +77,24 @@ public: static bool ShowToolTips(); ////@begin CWelcomePage member variables + wxStaticText* m_pTitleStaticCtrl; + wxStaticText* m_pDescriptionStaticCtrl; + wxStaticText* m_pDirectionsStaticCtrl; #if defined(__WXDEBUG__) - wxCheckBox* m_ErrProjectPropertiesCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrProjectCommCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrProjectPropertiesURLCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrAccountCreationDisabledCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrClientAccountCreationDisabledCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrAccountAlreadyExistsCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrProjectAlreadyAttachedCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrProjectAttachFailureCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrGoogleCommCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrYahooCommCtrl; -#endif -#if defined(__WXDEBUG__) - wxCheckBox* m_ErrNetDetectionCtrl; + wxStaticBox* m_pErrDescriptionCtrl; + wxCheckBox* m_pErrProjectPropertiesCtrl; + wxCheckBox* m_pErrProjectCommCtrl; + wxCheckBox* m_pErrProjectPropertiesURLCtrl; + wxCheckBox* m_pErrAccountCreationDisabledCtrl; + wxCheckBox* m_pErrClientAccountCreationDisabledCtrl; + wxCheckBox* m_pErrAccountAlreadyExistsCtrl; + wxCheckBox* m_pErrProjectAlreadyAttachedCtrl; + wxCheckBox* m_pErrProjectAttachFailureCtrl; + wxCheckBox* m_pErrGoogleCommCtrl; + wxCheckBox* m_pErrYahooCommCtrl; + wxCheckBox* m_pErrNetDetectionCtrl; #endif ////@end CWelcomePage member variables - int iWizardID; }; #endif // _WIZ_WELCOMEPAGE_H_ diff --git a/clientgui/WizardAccountManager.cpp b/clientgui/WizardAccountManager.cpp index d4ffd0c526..99f1267ebd 100644 --- a/clientgui/WizardAccountManager.cpp +++ b/clientgui/WizardAccountManager.cpp @@ -113,9 +113,9 @@ bool CWizardAccountManager::Create( wxWindow* parent, wxWindowID id, const wxPoi // Wizard Detection IsAttachToProjectWizard = false; - IsAccountManagerAttachWizard = true; - IsAccountManagerUpdateWizard = true; - IsAccountManagerRemoveWizard = true; + IsAccountManagerWizard = true; + IsAccountManagerUpdateWizard = false; + IsAccountManagerRemoveWizard = false; // Global wizard status project_config.clear(); @@ -270,21 +270,14 @@ bool CWizardAccountManager::Run() { } if ( ami.acct_mgr_url.size() && !ami.have_credentials && m_AccountManagerStatusPage) { - m_AccountManagerStatusPage->m_AcctManagerUpdateCtrl->SetValue(true); - m_AccountManagerStatusPage->m_AcctManagerRemoveCtrl->SetValue(false); - IsAccountManagerAttachWizard = false; + m_AccountManagerStatusPage->m_pAcctManagerUpdateCtrl->SetValue(true); + m_AccountManagerStatusPage->m_pAcctManagerRemoveCtrl->SetValue(false); IsAccountManagerUpdateWizard = true; IsAccountManagerRemoveWizard = false; return RunWizard(m_AccountInfoPage); } else if ( ami.acct_mgr_url.size() && m_AccountManagerStatusPage) { - IsAccountManagerAttachWizard = false; - IsAccountManagerUpdateWizard = true; - IsAccountManagerRemoveWizard = true; return RunWizard(m_AccountManagerStatusPage); } else if (m_WelcomePage) { - IsAccountManagerAttachWizard = true; - IsAccountManagerUpdateWizard = false; - IsAccountManagerRemoveWizard = false; return RunWizard(m_WelcomePage); } @@ -477,19 +470,19 @@ void CWizardAccountManager::_ProcessCancelEvent( wxWizardExEvent& event ) { // Page specific rules - Disable the validator(s) if (wxYES == iRetVal) { if (page == m_AccountManagerInfoPage) { - m_AccountManagerInfoPage->m_AccountManagerUrlCtrl->SetValidator(wxDefaultValidator); + m_AccountManagerInfoPage->m_pProjectUrlCtrl->SetValidator(wxDefaultValidator); } else if (page == m_AccountInfoPage) { - m_AccountInfoPage->m_AccountEmailAddressCtrl->SetValidator(wxDefaultValidator); - m_AccountInfoPage->m_AccountPasswordCtrl->SetValidator(wxDefaultValidator); + m_AccountInfoPage->m_pAccountEmailAddressCtrl->SetValidator(wxDefaultValidator); + m_AccountInfoPage->m_pAccountPasswordCtrl->SetValidator(wxDefaultValidator); } else if (page == m_ErrProxyPage) { - m_ErrProxyPage->m_ProxyHTTPServerCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxyHTTPPortCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxyHTTPUsernameCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxyHTTPPasswordCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxySOCKSServerCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxySOCKSPortCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxySOCKSUsernameCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxySOCKSPasswordCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxyHTTPServerCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxyHTTPPortCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxyHTTPUsernameCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxyHTTPPasswordCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxySOCKSServerCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxySOCKSPortCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxySOCKSUsernameCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxySOCKSPasswordCtrl->SetValidator(wxDefaultValidator); } } diff --git a/clientgui/WizardAttachProject.cpp b/clientgui/WizardAttachProject.cpp index 73b36cfc84..d892f69131 100644 --- a/clientgui/WizardAttachProject.cpp +++ b/clientgui/WizardAttachProject.cpp @@ -116,7 +116,7 @@ bool CWizardAttachProject::Create( wxWindow* parent, wxWindowID id, const wxPoin // Wizard Detection IsAttachToProjectWizard = true; - IsAccountManagerAttachWizard = false; + IsAccountManagerWizard = false; IsAccountManagerUpdateWizard = false; IsAccountManagerRemoveWizard = false; @@ -461,22 +461,22 @@ void CWizardAttachProject::_ProcessCancelEvent( wxWizardExEvent& event ) { // Page specific rules - Disable the validator(s) if (wxYES == iRetVal) { if (page == m_ProjectInfoPage) { - m_ProjectInfoPage->m_ProjectUrlCtrl->SetValidator(wxDefaultValidator); + m_ProjectInfoPage->m_pProjectUrlCtrl->SetValidator(wxDefaultValidator); } else if (page == m_AccountKeyPage) { - m_AccountKeyPage->m_AccountKeyCtrl->SetValidator(wxDefaultValidator); + m_AccountKeyPage->m_pAccountKeyCtrl->SetValidator(wxDefaultValidator); } else if (page == m_AccountInfoPage) { - m_AccountInfoPage->m_AccountEmailAddressCtrl->SetValidator(wxDefaultValidator); - m_AccountInfoPage->m_AccountPasswordCtrl->SetValidator(wxDefaultValidator); - m_AccountInfoPage->m_AccountConfirmPasswordCtrl->SetValidator(wxDefaultValidator); + m_AccountInfoPage->m_pAccountEmailAddressCtrl->SetValidator(wxDefaultValidator); + m_AccountInfoPage->m_pAccountPasswordCtrl->SetValidator(wxDefaultValidator); + m_AccountInfoPage->m_pAccountConfirmPasswordCtrl->SetValidator(wxDefaultValidator); } else if (page == m_ErrProxyPage) { - m_ErrProxyPage->m_ProxyHTTPServerCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxyHTTPPortCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxyHTTPUsernameCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxyHTTPPasswordCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxySOCKSServerCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxySOCKSPortCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxySOCKSUsernameCtrl->SetValidator(wxDefaultValidator); - m_ErrProxyPage->m_ProxySOCKSPasswordCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxyHTTPServerCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxyHTTPPortCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxyHTTPUsernameCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxyHTTPPasswordCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxySOCKSServerCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxySOCKSPortCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxySOCKSUsernameCtrl->SetValidator(wxDefaultValidator); + m_ErrProxyPage->m_pProxySOCKSPasswordCtrl->SetValidator(wxDefaultValidator); } }