2006-07-05 21:36:56 +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 _SIMPLEFRAME_H_
|
|
|
|
#define _SIMPLEFRAME_H_
|
|
|
|
|
2006-07-11 23:19:53 +00:00
|
|
|
class CViewTabPage;
|
2006-07-20 17:57:23 +00:00
|
|
|
class ImageLoader;
|
|
|
|
|
2006-07-05 21:36:56 +00:00
|
|
|
|
|
|
|
// Define a new frame
|
|
|
|
class CSimpleFrame : public CBOINCBaseFrame
|
|
|
|
{
|
|
|
|
DECLARE_DYNAMIC_CLASS(CSimpleFrame)
|
|
|
|
|
|
|
|
public:
|
|
|
|
CSimpleFrame();
|
|
|
|
CSimpleFrame(wxString title, wxIcon* icon);
|
|
|
|
|
|
|
|
~CSimpleFrame();
|
|
|
|
|
|
|
|
|
2006-07-18 21:08:36 +00:00
|
|
|
int clientRunMode;
|
2006-07-05 21:36:56 +00:00
|
|
|
// Images
|
|
|
|
wxImage *g_icoSleepWU;
|
|
|
|
wxImage *g_icoWorkWU;
|
|
|
|
//
|
|
|
|
ImageLoader *i_prjIcnP1;
|
|
|
|
wxWindow *w_iconP1;
|
|
|
|
///
|
|
|
|
ImageLoader *i_prjIcnP2;
|
|
|
|
wxWindow *w_iconP2;
|
|
|
|
// Flat Neotebook
|
2006-07-11 23:19:53 +00:00
|
|
|
std::vector<CViewTabPage*> m_windows; // vector of all window tabs created for notebook
|
2006-07-05 21:36:56 +00:00
|
|
|
wxFlatNotebookImageList m_ImageList;
|
|
|
|
wxFlatNotebook *wrkUnitNB;
|
2006-07-11 23:19:53 +00:00
|
|
|
wxBitmap const sleepWUico;
|
2006-07-05 21:36:56 +00:00
|
|
|
wxBitmap const workWUico;
|
|
|
|
////// Skin variables //////
|
|
|
|
//XML doc
|
|
|
|
wxXmlDocument *skinXML;
|
|
|
|
//Skin Class
|
|
|
|
SkinClass *appSkin;
|
2006-07-12 00:19:20 +00:00
|
|
|
wxString skinName;
|
2006-07-05 21:36:56 +00:00
|
|
|
wxString skinPath;
|
2006-07-18 21:08:36 +00:00
|
|
|
wxString skinFoldPath;
|
2006-07-05 21:36:56 +00:00
|
|
|
// My projects area
|
2006-07-11 23:19:53 +00:00
|
|
|
std::vector<StatImageLoader*> m_statProjects; // vector of all project icons created for GUI
|
|
|
|
|
2006-07-18 21:08:36 +00:00
|
|
|
wxImage *g_statIcn;
|
2006-07-05 21:36:56 +00:00
|
|
|
//
|
2006-07-17 22:34:45 +00:00
|
|
|
wxImage *g_statIcnDefault;
|
2006-07-05 21:36:56 +00:00
|
|
|
//
|
2006-07-17 22:34:45 +00:00
|
|
|
|
2006-07-05 21:36:56 +00:00
|
|
|
// arrows
|
|
|
|
wxImage *g_arwLeft;
|
|
|
|
wxImage *g_arwRight;
|
|
|
|
wxImage *g_arwLeftClick;
|
|
|
|
wxImage *g_arwRightClick;
|
|
|
|
wxBitmap btmpArwL;
|
|
|
|
wxBitmap btmpArwR;
|
|
|
|
wxBitmap btmpArwLC;
|
|
|
|
wxBitmap btmpArwRC;
|
|
|
|
wxBitmapButton *btnArwLeft;
|
|
|
|
wxBitmapButton *btnArwRight;
|
2006-07-10 13:41:10 +00:00
|
|
|
//Collapse button
|
2006-07-05 21:36:56 +00:00
|
|
|
bool midAppCollapsed;
|
|
|
|
bool btmAppCollapsed;
|
2006-07-10 13:41:10 +00:00
|
|
|
//Expand button
|
2006-07-05 21:36:56 +00:00
|
|
|
wxImage *g_expand;
|
|
|
|
wxImage *g_expandClick;
|
|
|
|
wxBitmap btmpExp;
|
|
|
|
wxBitmap btmpExpClick;
|
2006-07-10 13:41:10 +00:00
|
|
|
wxBitmapButton *btnExpand;
|
2006-07-05 21:36:56 +00:00
|
|
|
////////////////////////////
|
|
|
|
wxStaticText *st9c;
|
|
|
|
wxWindow *w11c;
|
|
|
|
wxStaticText *st22c;
|
|
|
|
wxStaticText *st23c;
|
|
|
|
wxStaticText *stMyProj;
|
|
|
|
wxStaticText *st27c;
|
|
|
|
wxStaticLine *lnMyProjTop;
|
|
|
|
wxStaticBitmap *bm29c;
|
|
|
|
wxGauge *gaugeProjP1;
|
|
|
|
wxBitmapButton *btnPreferences;
|
2006-07-10 13:41:10 +00:00
|
|
|
wxBitmapButton *btnAddProj;
|
2006-07-05 21:36:56 +00:00
|
|
|
wxStaticBitmap *icnProjWork;
|
|
|
|
wxStaticBitmap *bm39c;
|
|
|
|
wxGauge *gaugeProjP2;
|
|
|
|
wxStaticText *st41c;
|
|
|
|
wxStaticBitmap *icnProjSleep;
|
|
|
|
wxBitmapButton *btnPause;
|
2006-07-18 21:08:36 +00:00
|
|
|
wxBitmapButton *btnResume;
|
2006-07-05 21:36:56 +00:00
|
|
|
wxBitmapButton *btnMessages;
|
|
|
|
wxBitmapButton *btnAdvancedView;
|
|
|
|
wxStaticLine *lnMyProjBtm;
|
|
|
|
bool clientGUIInitialized;
|
|
|
|
|
|
|
|
void InitEmptyState();
|
|
|
|
void InitSimpleClient();
|
2006-07-10 17:47:21 +00:00
|
|
|
void UpdateClientGUI();
|
2006-07-05 21:36:56 +00:00
|
|
|
int LoadSkinXML();
|
|
|
|
void LoadSkinImages();
|
|
|
|
void ReskinAppGUI();
|
|
|
|
void initAfter();
|
|
|
|
void MoveControlsUp();
|
|
|
|
void MoveControlsDown();
|
|
|
|
//////////
|
|
|
|
wxFlexGridSizer *mainSizer;
|
|
|
|
wxSize wxNotebookSize;
|
|
|
|
//////////
|
|
|
|
wxBitmap *CSimpleFrameImg0;
|
|
|
|
wxBitmap *bm13cImg0;
|
|
|
|
wxBitmap *btmpBtnPrefL;
|
|
|
|
wxBitmap *btmpBtnAttProjL;
|
|
|
|
wxBitmap *btmpIcnWorking;
|
|
|
|
wxBitmap *bm39cImg0;
|
|
|
|
wxBitmap *btmpBtnPauseL;
|
2006-07-18 21:08:36 +00:00
|
|
|
wxBitmap *btmpBtnResumeL;
|
2006-07-05 21:36:56 +00:00
|
|
|
wxBitmap *btmpMessagesBtnL;
|
|
|
|
wxBitmap *btmpBtnAdvViewL;
|
|
|
|
wxBitmap *btmpIcnSleeping;
|
|
|
|
wxBitmap fileImgBuf[11];
|
2006-07-11 23:19:53 +00:00
|
|
|
|
2006-07-05 21:36:56 +00:00
|
|
|
#if 0
|
|
|
|
wxAnimationPlayer& GetPlayer() { return m_player; }
|
|
|
|
wxAnimationBase& GetAnimation() { return m_animation; }
|
|
|
|
#endif
|
|
|
|
|
|
|
|
wxTimer* m_pFrameRenderTimer;
|
|
|
|
|
|
|
|
DECLARE_EVENT_TABLE()
|
|
|
|
|
|
|
|
protected:
|
|
|
|
void OnEraseBackground(wxEraseEvent& event);
|
|
|
|
void OnBtnClick(wxCommandEvent& event);
|
2006-07-10 13:41:10 +00:00
|
|
|
void OnConnect(CFrameEvent& event );
|
2006-07-18 21:08:36 +00:00
|
|
|
void OnProjectsAttachToProject();
|
2006-07-10 13:41:10 +00:00
|
|
|
void OnFrameRender(wxTimerEvent& event );
|
|
|
|
void OnPageChanged(wxFlatNotebookEvent& event);
|
2006-07-11 23:19:53 +00:00
|
|
|
void DrawBackImg(wxEraseEvent& event,wxWindow *win,wxBitmap & bitMap,int opz);
|
2006-07-05 21:36:56 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|