2005-09-26 11:29:28 +00:00
|
|
|
// Berkeley Open Infrastructure for Network Computing
|
|
|
|
// http://boinc.berkeley.edu
|
|
|
|
// Copyright (C) 2005 University of California
|
|
|
|
//
|
|
|
|
// This is free software; you can redistribute it and/or
|
|
|
|
// modify it under the terms of the GNU Lesser General Public
|
|
|
|
// License as published by the Free Software Foundation;
|
|
|
|
// either version 2.1 of the License, or (at your option) any later version.
|
|
|
|
//
|
|
|
|
// This software is distributed in the hope that it will be useful,
|
|
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
// See the GNU Lesser General Public License for more details.
|
|
|
|
//
|
|
|
|
// To view the GNU Lesser General Public License visit
|
|
|
|
// http://www.gnu.org/copyleft/lesser.html
|
|
|
|
// or write to the Free Software Foundation, Inc.,
|
|
|
|
// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
|
|
//
|
|
|
|
#ifndef _WIZ_BOINCBASEWIZARD_H_
|
|
|
|
#define _WIZ_BOINCBASEWIZARD_H_
|
|
|
|
|
|
|
|
#if defined(__GNUG__) && !defined(__APPLE__)
|
|
|
|
#pragma interface "BOINCBaseWizard.cpp"
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/*!
|
|
|
|
* CBOINCBaseWizard class declaration
|
|
|
|
*/
|
|
|
|
|
|
|
|
class CBOINCBaseWizard: public wxWizardEx
|
|
|
|
{
|
|
|
|
DECLARE_DYNAMIC_CLASS( CBOINCBaseWizard )
|
|
|
|
|
|
|
|
public:
|
|
|
|
/// Constructors
|
|
|
|
CBOINCBaseWizard();
|
|
|
|
CBOINCBaseWizard(wxWindow *parent,
|
|
|
|
int id = wxID_ANY,
|
|
|
|
const wxString& title = wxEmptyString,
|
|
|
|
const wxBitmap& bitmap = wxNullBitmap,
|
|
|
|
const wxPoint& pos = wxDefaultPosition,
|
|
|
|
long style = wxDEFAULT_DIALOG_STYLE);
|
|
|
|
|
|
|
|
/// Diagnostics functions
|
|
|
|
virtual void SetDiagFlags( unsigned long ulFlags );
|
|
|
|
virtual bool IsDiagFlagsSet( unsigned long ulFlags );
|
|
|
|
unsigned long m_ulDiagFlags;
|
|
|
|
|
|
|
|
/// Track page transitions
|
|
|
|
wxWizardPageEx* PopPageTransition();
|
|
|
|
virtual wxWizardPageEx* _PopPageTransition();
|
|
|
|
wxWizardPageEx* PushPageTransition( wxWizardPageEx* pCurrentPage, unsigned long ulPageID );
|
|
|
|
virtual wxWizardPageEx* _PushPageTransition( wxWizardPageEx* pCurrentPage, unsigned long ulPageID );
|
|
|
|
std::stack<wxWizardPageEx*> m_PageTransition;
|
|
|
|
|
|
|
|
/// Cancel Event Infrastructure
|
2005-09-27 03:17:49 +00:00
|
|
|
bool IsCancelInProgress() const;
|
2005-09-26 11:29:28 +00:00
|
|
|
void ProcessCancelEvent( wxWizardExEvent& event );
|
|
|
|
virtual void _ProcessCancelEvent( wxWizardExEvent& event );
|
|
|
|
bool m_bCancelInProgress;
|
|
|
|
|
|
|
|
/// Button State Infrastructure
|
2005-09-27 03:17:49 +00:00
|
|
|
wxButton* GetNextButton() const;
|
2005-09-26 11:29:28 +00:00
|
|
|
void SimulateNextButton();
|
|
|
|
void EnableNextButton();
|
|
|
|
void DisableNextButton();
|
2005-09-27 03:17:49 +00:00
|
|
|
wxButton* GetBackButton() const;
|
2005-09-26 11:29:28 +00:00
|
|
|
void SimulateBackButton();
|
|
|
|
void EnableBackButton();
|
|
|
|
void DisableBackButton();
|
|
|
|
|
|
|
|
/// Wizard Detection
|
|
|
|
bool IsAttachToProjectWizard;
|
2006-01-27 00:34:53 +00:00
|
|
|
bool IsAccountManagerWizard;
|
2006-01-25 11:58:02 +00:00
|
|
|
bool IsAccountManagerUpdateWizard;
|
|
|
|
bool IsAccountManagerRemoveWizard;
|
2005-09-26 11:29:28 +00:00
|
|
|
|
|
|
|
/// Global Wizard Status
|
|
|
|
PROJECT_CONFIG project_config;
|
|
|
|
ACCOUNT_IN account_in;
|
|
|
|
ACCOUNT_OUT account_out;
|
|
|
|
bool account_created_successfully;
|
|
|
|
bool attached_to_project_successfully;
|
2006-10-13 17:02:28 +00:00
|
|
|
bool close_when_completed;
|
2006-01-15 12:10:42 +00:00
|
|
|
wxString project_name;
|
2005-09-26 11:29:28 +00:00
|
|
|
wxString project_url;
|
|
|
|
wxString project_authenticator;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // _WIZ_BOINCBASEWIZARD_H_
|