MGR: display MSG_USER_ERROR messages in red, all others in black; Auto-scroll messages only if already at bottom of list.

svn path=/trunk/boinc/; revision=14519
This commit is contained in:
Charlie Fenton 2008-01-10 11:28:11 +00:00
parent 22a7caa863
commit 3389b45fd0
6 changed files with 49 additions and 29 deletions

View File

@ -270,3 +270,14 @@ David Jan 9 2008
client/
cs_account.C
hostinfo_unix.C
Charlie Jan 10 2008
- MGR: display MSG_USER_ERROR messages in red, all others in black
in both SimpleGUI and Advanced GUI message dialogs; eliminate
unused FormatPriority method.
NOTE: this may need to be fixed in CViewMessagesGrid class
if we implement that in teh future.
clientgui/
sg_DlgMessages.cpp,h
ViewMessages.cpp

View File

@ -273,7 +273,6 @@ wxString CViewMessages::OnListGetItemText(long item, long column) const {
wxListItemAttr* CViewMessages::OnListGetItemAttr(long item) const {
wxListItemAttr* pAttribute = NULL;
MESSAGE* message = wxGetApp().GetDocument()->message(item);
wxString strBuffer = wxEmptyString;
if (message) {
switch(message->priority) {
@ -290,6 +289,15 @@ wxListItemAttr* CViewMessages::OnListGetItemAttr(long item) const {
bool CViewMessages::EnsureLastItemVisible() {
int numVisible = m_pListPane->GetCountPerPage();
// Auto-scroll only if already at bottom of list
if ((m_iPreviousDocCount > numVisible)
&& ((m_pListPane->GetTopItem() + numVisible) < (m_iPreviousDocCount-1))
) {
return false;
}
return true;
}

View File

@ -566,14 +566,16 @@ wxString CPanelMessages::OnListGetItemText(long item, long column) const {
wxListItemAttr* CPanelMessages::OnListGetItemAttr(long item) const {
wxListItemAttr* pAttribute = NULL;
wxString strBuffer = wxEmptyString;
MESSAGE* message = wxGetApp().GetDocument()->message(item);
FormatPriority(item, strBuffer);
if (wxT("E") == strBuffer) {
pAttribute = m_pMessageErrorAttr;
} else {
pAttribute = m_pMessageInfoAttr;
if (message) {
switch(message->priority) {
case MSG_USER_ERROR:
pAttribute = m_pMessageErrorAttr;
break;
default:
break;
}
}
return pAttribute;
@ -582,6 +584,15 @@ wxListItemAttr* CPanelMessages::OnListGetItemAttr(long item) const {
bool CPanelMessages::EnsureLastItemVisible() {
int numVisible = m_pList->GetCountPerPage();
// Auto-scroll only if already at bottom of list
if ((m_iPreviousDocCount > numVisible)
&& ((m_pList->GetTopItem() + numVisible) < (m_iPreviousDocCount-1))
) {
return false;
}
return true;
}
@ -597,24 +608,6 @@ wxInt32 CPanelMessages::FormatProjectName(wxInt32 item, wxString& strBuffer) con
}
wxInt32 CPanelMessages::FormatPriority(wxInt32 item, wxString& strBuffer) const {
MESSAGE* message = wxGetApp().GetDocument()->message(item);
if (message) {
switch(message->priority) {
case MSG_INFO:
strBuffer = wxT("I");
break;
default:
strBuffer = wxT("E");
break;
}
}
return 0;
}
wxInt32 CPanelMessages::FormatTime(wxInt32 item, wxString& strBuffer) const {
wxDateTime dtBuffer;
MESSAGE* message = wxGetApp().GetDocument()->message(item);

View File

@ -135,7 +135,6 @@ private:
bool EnsureLastItemVisible();
wxInt32 FormatProjectName( wxInt32 item, wxString& strBuffer ) const;
wxInt32 FormatPriority( wxInt32 item, wxString& strBuffer ) const;
wxInt32 FormatTime( wxInt32 item, wxString& strBuffer ) const;
wxInt32 FormatMessage( wxInt32 item, wxString& strBuffer ) const;

View File

@ -22,7 +22,7 @@
#
##
# Script for building Macintosh BOINC Manager, Core Client and libraries
# by Charlie Fenton 12/19/07
# by Charlie Fenton 1/8/08
# with thanks to Reinhard Prix for his assistance
##

View File

@ -11,7 +11,7 @@
\b0\fs24 \cf0 \
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\qc
\cf0 Written by Charlie Fenton\
Last updated 12/17/07\
Last updated 1/9/08\
\pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural
\cf0 \
This document applies to BOINC version 6.1.0 and later. It has instructions for building BOINC for Macintosh OSX, plus information for building science project applications to run under BOINC on Macintosh OSX. \
@ -225,6 +225,15 @@ Note: this script builds curl first, followed by jpeg and finally wxMac. If you
\
[5] Build BOINC as follows:\
\
\pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural\pardirnatural
\cf0 BOINC itself is built using the
\b boinc.xcodeproj
\b0 file. You can either build directly in XCode
\b
\b0 (more information below) or run the
\b BuildMacBOINC.sh
\b0 script:\
\
\pard\pardeftab720\ql\qnatural
\f1\fs26 \cf0 cd \{path\}/BOINC_dev/boinc/mac_build/\