2004-05-17 22:15:10 +00:00
|
|
|
// $Id$
|
|
|
|
//
|
|
|
|
// The contents of this file are subject to the BOINC Public License
|
|
|
|
// Version 1.0 (the "License"); you may not use this file except in
|
|
|
|
// compliance with the License. You may obtain a copy of the License at
|
|
|
|
// http://boinc.berkeley.edu/license_1.0.txt
|
|
|
|
//
|
|
|
|
// Software distributed under the License is distributed on an "AS IS"
|
|
|
|
// basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
|
|
|
|
// License for the specific language governing rights and limitations
|
|
|
|
// under the License.
|
|
|
|
//
|
|
|
|
// The Original Code is the Berkeley Open Infrastructure for Network Computing.
|
|
|
|
//
|
|
|
|
// The Initial Developer of the Original Code is the SETI@home project.
|
|
|
|
// Portions created by the SETI@home project are Copyright (C) 2002
|
|
|
|
// University of California at Berkeley. All Rights Reserved.
|
|
|
|
//
|
|
|
|
// Contributor(s):
|
|
|
|
//
|
|
|
|
// Revision History:
|
|
|
|
//
|
|
|
|
|
2004-09-21 01:30:29 +00:00
|
|
|
#ifndef _VIEWPROJECTS_H_
|
|
|
|
#define _VIEWPROJECTS_H_
|
2004-05-17 22:15:10 +00:00
|
|
|
|
|
|
|
#if defined(__GNUG__) && !defined(__APPLE__)
|
2004-09-21 01:30:29 +00:00
|
|
|
#pragma interface "ViewProjects.cpp"
|
2004-05-17 22:15:10 +00:00
|
|
|
#endif
|
|
|
|
|
|
|
|
|
2004-09-21 01:30:29 +00:00
|
|
|
#include "BOINCBaseView.h"
|
|
|
|
|
2004-12-02 07:43:47 +00:00
|
|
|
|
|
|
|
class CProject : public wxObject
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
CProject();
|
|
|
|
~CProject();
|
|
|
|
|
|
|
|
wxInt32 GetProjectName( wxString& strProjectName );
|
|
|
|
wxInt32 GetAccountName( wxString& strAccountName );
|
|
|
|
wxInt32 GetTeamName( wxString& strTeamName );
|
|
|
|
wxInt32 GetTotalCredit( wxString& strTotalCredit );
|
|
|
|
wxInt32 GetAVGCredit( wxString& strAVGCredit );
|
|
|
|
wxInt32 GetResourceShare( wxString& strResourceShare );
|
|
|
|
wxInt32 GetStatus( wxString& strStatus );
|
|
|
|
|
|
|
|
wxInt32 SetProjectName( wxString& strProjectName );
|
|
|
|
wxInt32 SetAccountName( wxString& strAccountName );
|
|
|
|
wxInt32 SetTeamName( wxString& strTeamName );
|
|
|
|
wxInt32 SetTotalCredit( wxString& strTotalCredit );
|
|
|
|
wxInt32 SetAVGCredit( wxString& strAVGCredit );
|
|
|
|
wxInt32 SetResourceShare( wxString& strResourceShare );
|
|
|
|
wxInt32 SetStatus( wxString& strStatus );
|
|
|
|
|
|
|
|
protected:
|
|
|
|
wxString m_strProjectName;
|
|
|
|
wxString m_strAccountName;
|
|
|
|
wxString m_strTeamName;
|
|
|
|
wxString m_strTotalCredit;
|
|
|
|
wxString m_strAVGCredit;
|
|
|
|
wxString m_strResourceShare;
|
|
|
|
wxString m_strStatus;
|
|
|
|
};
|
|
|
|
|
|
|
|
WX_DECLARE_OBJARRAY( CProject, CProjectCache );
|
|
|
|
|
|
|
|
|
2004-09-21 01:30:29 +00:00
|
|
|
class CViewProjects : public CBOINCBaseView
|
2004-05-17 22:15:10 +00:00
|
|
|
{
|
2004-09-21 01:30:29 +00:00
|
|
|
DECLARE_DYNAMIC_CLASS( CViewProjects )
|
2004-05-17 22:15:10 +00:00
|
|
|
|
|
|
|
public:
|
2004-09-21 01:30:29 +00:00
|
|
|
CViewProjects();
|
|
|
|
CViewProjects(wxNotebook* pNotebook);
|
|
|
|
|
|
|
|
~CViewProjects();
|
|
|
|
|
|
|
|
virtual wxString GetViewName();
|
|
|
|
virtual char** GetViewIcon();
|
2004-05-17 22:15:10 +00:00
|
|
|
|
2004-12-02 07:43:47 +00:00
|
|
|
protected:
|
2004-09-21 01:30:29 +00:00
|
|
|
|
2004-09-23 08:28:50 +00:00
|
|
|
bool m_bTaskHeaderHidden;
|
2004-10-09 03:05:01 +00:00
|
|
|
bool m_bTaskAttachHidden;
|
|
|
|
bool m_bTaskDetachHidden;
|
|
|
|
bool m_bTaskResetHidden;
|
|
|
|
bool m_bTaskSuspendHidden;
|
|
|
|
bool m_bTaskResumeHidden;
|
|
|
|
bool m_bTaskUpdateHidden;
|
2004-09-22 21:53:07 +00:00
|
|
|
|
2004-09-23 08:28:50 +00:00
|
|
|
bool m_bWebsiteHeaderHidden;
|
2004-09-24 02:01:53 +00:00
|
|
|
bool m_bWebsiteBOINCHidden;
|
|
|
|
bool m_bWebsiteProjectHidden;
|
2004-09-22 21:53:07 +00:00
|
|
|
|
2004-09-23 08:28:50 +00:00
|
|
|
bool m_bTipsHeaderHidden;
|
2004-09-22 21:53:07 +00:00
|
|
|
|
2004-09-24 02:01:53 +00:00
|
|
|
bool m_bItemSelected;
|
2004-09-22 21:53:07 +00:00
|
|
|
|
2004-12-02 07:43:47 +00:00
|
|
|
CProjectCache m_ProjectCache;
|
|
|
|
|
|
|
|
virtual wxInt32 GetDocCount();
|
|
|
|
|
|
|
|
virtual wxString OnListGetItemText( long item, long column ) const;
|
|
|
|
|
|
|
|
virtual wxString OnDocGetItemText( long item, long column ) const;
|
|
|
|
|
|
|
|
virtual void OnTaskLinkClicked( const wxHtmlLinkInfo& link );
|
|
|
|
virtual void OnTaskCellMouseHover( wxHtmlCell* cell, wxCoord x, wxCoord y );
|
|
|
|
|
|
|
|
virtual wxInt32 AddCacheElement();
|
|
|
|
virtual wxInt32 EmptyCache();
|
|
|
|
virtual wxInt32 GetCacheCount();
|
|
|
|
virtual wxInt32 RemoveCacheElement();
|
|
|
|
virtual wxInt32 UpdateCache( long item, long column, wxString& strNewData );
|
|
|
|
|
2004-09-24 02:01:53 +00:00
|
|
|
virtual void UpdateSelection();
|
2004-09-23 08:28:50 +00:00
|
|
|
virtual void UpdateTaskPane();
|
2004-09-24 22:19:02 +00:00
|
|
|
|
2004-10-05 02:55:26 +00:00
|
|
|
wxInt32 FormatProjectName( wxInt32 item, wxString& strBuffer ) const;
|
|
|
|
wxInt32 FormatAccountName( wxInt32 item, wxString& strBuffer ) const;
|
|
|
|
wxInt32 FormatTeamName( wxInt32 item, wxString& strBuffer ) const;
|
|
|
|
wxInt32 FormatTotalCredit( wxInt32 item, wxString& strBuffer ) const;
|
|
|
|
wxInt32 FormatAVGCredit( wxInt32 item, wxString& strBuffer ) const;
|
|
|
|
wxInt32 FormatResourceShare( wxInt32 item, wxString& strBuffer ) const;
|
|
|
|
wxInt32 FormatStatus( wxInt32 item, wxString& strBuffer ) const;
|
|
|
|
|
2004-10-09 03:05:01 +00:00
|
|
|
bool IsWebsiteLink( const wxString& strLink );
|
|
|
|
wxInt32 ConvertWebsiteIndexToLink( wxInt32 iProjectIndex, wxInt32 iWebsiteIndex, wxString& strLink );
|
|
|
|
wxInt32 ConvertLinkToWebsiteIndex( const wxString& strLink, wxInt32& iProjectIndex, wxInt32& iWebsiteIndex );
|
|
|
|
void ExecuteLink( const wxString& strLink );
|
|
|
|
|
2004-05-17 22:15:10 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|