Refactored verbosity handling with new setter&getter

git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6494 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
anders_k 2014-06-15 19:12:12 +00:00
parent 401dbe8aed
commit d91176ba49
4 changed files with 45 additions and 40 deletions

View file

@ -109,15 +109,11 @@ CEXEBuild::CEXEBuild() :
m_exehead(0),
m_exehead_size(0)
{
linecnt = 0;
curlinereader = 0;
curfilename = 0;
display_errors=1;
display_warnings=1;
display_info=1;
display_script=0;
set_verbosity(3);
curlinereader=0;
curfilename=0;
linecnt=0;
cur_ifblock=NULL;
last_line_had_slash=0;
inside_comment=false;
@ -3346,6 +3342,38 @@ bool IsStringASCII(const TCHAR* s)
}
*/
int CEXEBuild::get_verbosity() const
{
int v = 0;
if (display_errors)
{
v++;
if (display_warnings)
{
v++;
if (display_info)
{
v++;
if (display_script)
{
v++;
}
}
}
}
return v;
}
void CEXEBuild::set_verbosity(int lvl)
{
display_errors = lvl > 0;
display_warnings = lvl > 1;
display_info = lvl > 2;
display_script = lvl > 3;
extern int g_display_errors;
g_display_errors = display_errors;
}
void CEXEBuild::warning(const TCHAR *s, ...)
{
ExpandoString<TCHAR, NSIS_MAX_STRLEN + 100> buf;