- MGR: Add OpenCL icon to the ProjectInfo wizard page.

clientgui/
        ProjectInfoPage.cpp, .h
    clientgui/res/
        openclicon.xpm
    clientgui/res/templates/
        openclicon.png
    lib/
        diagnostics.cpp

svn path=/trunk/boinc/; revision=25676
This commit is contained in:
Rom Walton 2012-05-15 16:42:39 +00:00
parent 71e93caf85
commit bd8cee05e6
6 changed files with 164 additions and 3 deletions

View File

@ -3850,3 +3850,15 @@ David 14 May 2012
sched/
plan_class_space.cpp,h
Rom 15 May 2012
- MGR: Add OpenCL icon to the ProjectInfo wizard page.
clientgui/
ProjectInfoPage.cpp, .h
clientgui/res/
openclicon.xpm
clientgui/res/templates/
openclicon.png
lib/
diagnostics.cpp

View File

@ -44,6 +44,7 @@
#include "res/linuxicon.xpm"
#include "res/atiicon.xpm"
#include "res/nvidiaicon.xpm"
#include "res/openclicon.xpm"
#include "res/multicore.xpm"
#include "res/blankicon.xpm"
@ -62,6 +63,7 @@ class CProjectInfo : public wxObject
m_bProjectSupportsLinux = false;
m_bProjectSupportsCUDA = false;
m_bProjectSupportsCAL = false;
m_bProjectSupportsOpenCL = false;
m_bProjectSupportsMulticore = false;
}
@ -78,6 +80,7 @@ public:
bool m_bProjectSupportsLinux;
bool m_bProjectSupportsCUDA;
bool m_bProjectSupportsCAL;
bool m_bProjectSupportsOpenCL;
bool m_bProjectSupportsMulticore;
};
@ -163,6 +166,7 @@ bool CProjectInfoPage::Create( CBOINCBaseWizard* parent )
m_pProjectDetailsSupportedPlatformLinuxCtrl = NULL;
m_pProjectDetailsSupportedPlatformATICtrl = NULL;
m_pProjectDetailsSupportedPlatformNvidiaCtrl = NULL;
m_pProjectDetailsSupportedPlatformOpenCLCtrl = NULL;
m_pProjectDetailsSupportedPlatformMultiCoreCtrl = NULL;
m_pProjectDetailsSupportedPlatformBlankCtrl = NULL;
m_pProjectURLStaticCtrl = NULL;
@ -310,6 +314,9 @@ void CProjectInfoPage::CreateControls()
m_pProjectDetailsSupportedPlatformNvidiaCtrl = new wxStaticBitmap( itemWizardPage23, wxID_STATIC, GetBitmapResource(wxT("nvidiaicon.xpm")), wxDefaultPosition, wxSize(16,16), 0 );
itemBoxSizer26->Add(m_pProjectDetailsSupportedPlatformNvidiaCtrl, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5);
m_pProjectDetailsSupportedPlatformOpenCLCtrl = new wxStaticBitmap( itemWizardPage23, wxID_STATIC, GetBitmapResource(wxT("openclicon.xpm")), wxDefaultPosition, wxSize(16,16), 0 );
itemBoxSizer26->Add(m_pProjectDetailsSupportedPlatformOpenCLCtrl, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5);
m_pProjectDetailsSupportedPlatformMultiCoreCtrl = new wxStaticBitmap( itemWizardPage23, wxID_STATIC, GetBitmapResource(wxT("multicore.xpm")), wxDefaultPosition, wxSize(16,16), 0 );
itemBoxSizer26->Add(m_pProjectDetailsSupportedPlatformMultiCoreCtrl, 0, wxALIGN_CENTER_VERTICAL|wxLEFT|wxRIGHT|wxTOP, 5);
@ -406,6 +413,11 @@ wxBitmap CProjectInfoPage::GetBitmapResource( const wxString& name )
wxBitmap bitmap(nvidiaicon_xpm);
return bitmap;
}
else if (name == wxT("openclicon.xpm"))
{
wxBitmap bitmap(openclicon_xpm);
return bitmap;
}
else if (name == wxT("multicore.xpm"))
{
wxBitmap bitmap(multicore_xpm);
@ -498,12 +510,14 @@ void CProjectInfoPage::OnProjectSelected( wxCommandEvent& WXUNUSED(event) ) {
m_pProjectDetailsSupportedPlatformLinuxCtrl->Hide();
m_pProjectDetailsSupportedPlatformATICtrl->Hide();
m_pProjectDetailsSupportedPlatformNvidiaCtrl->Hide();
m_pProjectDetailsSupportedPlatformOpenCLCtrl->Hide();
m_pProjectDetailsSupportedPlatformMultiCoreCtrl->Hide();
if (pProjectInfo->m_bProjectSupportsWindows) m_pProjectDetailsSupportedPlatformWindowsCtrl->Show();
if (pProjectInfo->m_bProjectSupportsMac) m_pProjectDetailsSupportedPlatformMacCtrl->Show();
if (pProjectInfo->m_bProjectSupportsLinux) m_pProjectDetailsSupportedPlatformLinuxCtrl->Show();
if (pProjectInfo->m_bProjectSupportsCAL) m_pProjectDetailsSupportedPlatformATICtrl->Show();
if (pProjectInfo->m_bProjectSupportsCUDA) m_pProjectDetailsSupportedPlatformNvidiaCtrl->Show();
if (pProjectInfo->m_bProjectSupportsOpenCL) m_pProjectDetailsSupportedPlatformOpenCLCtrl->Show();
if (pProjectInfo->m_bProjectSupportsMulticore) m_pProjectDetailsSupportedPlatformMultiCoreCtrl->Show();
// Populate non-control data for use in other places of the wizard
@ -568,6 +582,7 @@ void CProjectInfoPage::OnPageChanged( wxWizardExEvent& event ) {
wxASSERT(m_pProjectDetailsSupportedPlatformLinuxCtrl);
wxASSERT(m_pProjectDetailsSupportedPlatformATICtrl);
wxASSERT(m_pProjectDetailsSupportedPlatformNvidiaCtrl);
wxASSERT(m_pProjectDetailsSupportedPlatformOpenCLCtrl);
wxASSERT(m_pProjectDetailsSupportedPlatformMultiCoreCtrl);
wxASSERT(m_pProjectURLStaticCtrl);
wxASSERT(m_pProjectURLCtrl);
@ -698,6 +713,11 @@ void CProjectInfoPage::OnPageChanged( wxWizardExEvent& event ) {
if (!pDoc->state.have_ati) continue;
}
if (strProjectPlatform.Find(_T("[opencl")) != wxNOT_FOUND) {
pProjectInfo->m_bProjectSupportsOpenCL = true;
if (!pDoc->state.have_ati) continue;
}
if (strProjectPlatform.Find(_T("[mt")) != wxNOT_FOUND) {
pProjectInfo->m_bProjectSupportsMulticore = true;
if (pDoc->state.host_info.p_ncpus < 4) continue;
@ -717,12 +737,13 @@ void CProjectInfoPage::OnPageChanged( wxWizardExEvent& event ) {
wxLogTrace(
wxT("Function Status"),
wxT("CProjectInfoPage::OnPageChanged - Windows: '%d', Mac: '%d', Linux: '%d', Nvidia: '%d', ATI: '%d', Multicore: '%d', Platform: '%d'"),
wxT("CProjectInfoPage::OnPageChanged - Windows: '%d', Mac: '%d', Linux: '%d', Nvidia: '%d', ATI: '%d', OpenCL: '%d', Multicore: '%d', Platform: '%d'"),
pProjectInfo->m_bProjectSupportsWindows,
pProjectInfo->m_bProjectSupportsMac,
pProjectInfo->m_bProjectSupportsLinux,
pProjectInfo->m_bProjectSupportsCUDA,
pProjectInfo->m_bProjectSupportsCAL,
pProjectInfo->m_bProjectSupportsOpenCL,
pProjectInfo->m_bProjectSupportsMulticore,
pProjectInfo->m_bSupportedPlatformFound
);

View File

@ -129,6 +129,7 @@ public:
wxStaticBitmap* m_pProjectDetailsSupportedPlatformATICtrl;
wxStaticBitmap* m_pProjectDetailsSupportedPlatformNvidiaCtrl;
wxStaticBitmap* m_pProjectDetailsSupportedPlatformMultiCoreCtrl;
wxStaticBitmap* m_pProjectDetailsSupportedPlatformOpenCLCtrl;
wxStaticBitmap* m_pProjectDetailsSupportedPlatformBlankCtrl;
wxStaticText* m_pProjectURLStaticCtrl;
wxTextCtrl* m_pProjectURLCtrl;

View File

@ -0,0 +1,127 @@
// This file is part of BOINC.
// http://boinc.berkeley.edu
//
/* XPM */
static char *openclicon_xpm[] = {
/* columns rows colors chars-per-pixel */
"16 16 101 2",
" c Black",
"_ c #DEDDDD",
"' c #EC2E2D",
"s c #F1D346",
"m c #F6D134",
"8 c #F1C721",
"6 c #D8DF30",
"H c #E24C37",
"o. c #F0807E",
". c #FFFFFF",
"F c #BF8E77",
"x c #E7F5ED",
"^ c #A8D5BB",
"K c #F4D5D4",
"z c #71C694",
"O c #CAE4D6",
"P c #4AAD73",
"W c #EB322C",
"p c #CFDB37",
"t c #14A850",
"l c #74C494",
"d c #F7C31F",
"1 c #14A54F",
"g c #EA974C",
"$. c #EAEAEA",
"+. c #F28E8D",
"n c #F5E791",
"7 c #F0E69C",
"- c #95C540",
"X c #FEFDFC",
"] c #EB5857",
"~ c #91C9A8",
"y c #8DD2A1",
"@ c #E1EFE8",
"b c #FAFADA",
"4 c #BEDE8F",
"+ c #79B98E",
"N c #C07143",
"e c #47B173",
"C c #F0F5F3",
"= c #ADD89E",
", c #F5F9F7",
"a c #EDEA7C",
"! c #EE8887",
"R c #DE5748",
"J c #E93D29",
") c #ADACAC",
"i c #CBE192",
".. c #E4E4E3",
"# c #FDFEFC",
"U c #E4E4E4",
"L c #89CCA5",
"$ c #FDFEFD",
"w c #FDFEFE",
"@. c #F2A2A0",
"Z c #59BB81",
"> c #F3E7D5",
"B c #EFB89C",
"O. c #EF8684",
"2 c #83CF95",
"f c #F0A128",
"& c #8AD0A5",
"E c #EC382A",
": c #D3E093",
"( c #D6D6D5",
"S c #F4F4EF",
"v c #FEFFFD",
"q c #FEFFFE",
"D c #B39F78",
"j c #FEFFFF",
"< c #8ACDA7",
"V c #E8B7B1",
"[ c #88D0A6",
"A c #7CC89B",
"Q c #EC2F2D",
"M c #CA9E49",
"o c #E4F2ED",
"r c #7AC89A",
"Y c #AAAAAA",
"5 c #C2D635",
"I c #FAFCFB",
"9 c #EBC368",
"X. c #F5BAB9",
"* c #41B04E",
"h c #FAF6F5",
"k c #90C9A6",
"} c #FDFDFD",
"3 c #6BBE43",
"u c #8FCD73",
"0 c #F8F0EC",
" . c None",
"T c #D3D1CF",
"/ c #F6F6F6",
"` c #EE6F6D",
"% c #C6E5D4",
"#. c #D1D1D1",
"; c #A6C93C",
"c c #FEFEFE",
"G c #E29689",
"{ c #BDE4CE",
"| c #CACAC8",
/* pixels */
". . . . . . . . . . . . . . . . ",
". . . . . . . . . . . . . . . . ",
". . . . . . . . . . . . . . . . ",
". . . . . X o O + @ # . . . . . ",
". . . $ % & * = - ; : > # . . . ",
". . , < 1 2 3 4 5 6 7 8 9 0 q . ",
". w e r t y u i p a s d f g h . ",
"j k l z x c q v b n m M N B V . ",
"C Z A w . . . . . S D F G H J K ",
"L P I . . . . c U Y T R E W Q ! ",
"~ ^ c . . . / ( ) _ w ` ' Q Q ] ",
"[ { . . . } | .... . X.o.O.+.@.",
". . . . . . #.$.. . . . . . . . ",
". . . . . . . . . . . . . . . . ",
". . . . . . . . . . . . . . . . ",
". . . . . . . . . . . . . . . . "
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 617 B

View File

@ -645,6 +645,7 @@ void boinc_trace(const char *pszFormat, ...) {
static char szBuffer[4096];
static char szDate[64];
static char szTime[64];
int n;
// Trace messages should only be reported if running as a standalone
// application or told too.
@ -661,7 +662,6 @@ void boinc_trace(const char *pszFormat, ...) {
#else
time_t t;
char *theCR;
int n;
time(&t);
strcpy(szTime, asctime(localtime(&t)));
@ -679,7 +679,7 @@ void boinc_trace(const char *pszFormat, ...) {
va_end(ptr);
#if defined(_WIN32) && defined(_DEBUG)
_CrtDbgReport(_CRT_WARN, NULL, NULL, NULL, "[%s %s] TRACE [%d]: %s", szDate, szTime, GetCurrentThreadId(), szBuffer);
n = _CrtDbgReport(_CRT_WARN, NULL, NULL, NULL, "[%s %s] TRACE [%d]: %s", szDate, szTime, GetCurrentThreadId(), szBuffer);
#else
if (flags & BOINC_DIAG_TRACETOSTDERR) {
#ifdef _WIN32