Merge topic 'ccmake-portability'

7046eedd ccmake: Use more-portable call to set_field_buffer (#15740)
da1a02f7 ccmake: Avoid using non-portable 'curcol' field (#15739)
6c442e5a ccmake: Pass format string to 'printw' (#15738)
This commit is contained in:
Brad King 2015-09-16 08:47:21 -04:00 committed by CMake Topic Stage
commit 0ec6201547
4 changed files with 27 additions and 25 deletions

View File

@ -80,12 +80,13 @@ void cmCursesLongMessageForm::UpdateStatusBar()
sprintf(version+sideSpace, "%s", vertmp);
version[width] = '\0';
char fmt_s[] = "%s";
curses_move(y-4,0);
attron(A_STANDOUT);
printw(bar);
printw(fmt_s, bar);
attroff(A_STANDOUT);
curses_move(y-3,0);
printw(version);
printw(fmt_s, version);
pos_form_cursor(this->Form);
}
@ -101,8 +102,9 @@ void cmCursesLongMessageForm::PrintKeys()
char firstLine[512];
sprintf(firstLine, "Press [e] to exit help");
char fmt_s[] = "%s";
curses_move(y-2,0);
printw(firstLine);
printw(fmt_s, firstLine);
pos_form_cursor(this->Form);
}

View File

@ -451,24 +451,25 @@ void cmCursesMainForm::PrintKeys(int process /* = 0 */)
}
curses_move(y-4,0);
char fmt_s[] = "%s";
char fmt[512] = "Press [enter] to edit option";
if ( process )
{
strcpy(fmt, " ");
}
printw(fmt);
printw(fmt_s, fmt);
curses_move(y-3,0);
printw(firstLine);
printw(fmt_s, firstLine);
curses_move(y-2,0);
printw(secondLine);
printw(fmt_s, secondLine);
curses_move(y-1,0);
printw(thirdLine);
printw(fmt_s, thirdLine);
if (cw)
{
sprintf(firstLine, "Page %d of %d", cw->GetPage(), this->NumberOfPages);
curses_move(0,65-static_cast<unsigned int>(strlen(firstLine))-1);
printw(firstLine);
printw(fmt_s, firstLine);
}
// }
@ -612,13 +613,13 @@ void cmCursesMainForm::UpdateStatusBar(const char* message)
version[width] = '\0';
// Now print both lines
char fmt_s[] = "%s";
curses_move(y-5,0);
attron(A_STANDOUT);
char format[] = "%s";
printw(format, bar);
printw(fmt_s, bar);
attroff(A_STANDOUT);
curses_move(y-4,0);
printw(version);
printw(fmt_s, version);
pos_form_cursor(this->Form);
}

View File

@ -168,17 +168,16 @@ bool cmCursesStringWidget::HandleInput(int& key, cmCursesMainForm* fm,
else if ( key == 127 ||
key == KEY_BACKSPACE )
{
if ( form->curcol > 0 )
{
FIELD *cur = current_field(form);
form_driver(form, REQ_DEL_PREV);
}
if (current_field(form) != cur)
{
set_current_field(form, cur);
}
}
else if ( key == ctrl('d') ||key == KEY_DC )
{
if ( form->curcol >= 0 )
{
form_driver(form, REQ_DEL_CHAR);
}
form_driver(form, REQ_DEL_CHAR);
}
else
{
@ -221,6 +220,7 @@ bool cmCursesStringWidget::PrintKeys()
}
if (this->InEdit)
{
char fmt_s[] = "%s";
char firstLine[512];
// Clean the toolbar
for(int i=0; i<512; i++)
@ -229,17 +229,16 @@ bool cmCursesStringWidget::PrintKeys()
}
firstLine[511] = '\0';
curses_move(y-4,0);
printw(firstLine);
printw(fmt_s, firstLine);
curses_move(y-3,0);
printw(firstLine);
printw(fmt_s, firstLine);
curses_move(y-2,0);
printw(firstLine);
printw(fmt_s, firstLine);
curses_move(y-1,0);
printw(firstLine);
printw(fmt_s, firstLine);
sprintf(firstLine, "Editing option, press [enter] to leave edit.");
curses_move(y-3,0);
printw(firstLine);
printw(fmt_s, "Editing option, press [enter] to leave edit.");
return true;
}
else

View File

@ -49,7 +49,7 @@ void cmCursesWidget::Move(int x, int y, bool isNewPage)
void cmCursesWidget::SetValue(const std::string& value)
{
this->Value = value;
set_field_buffer(this->Field, 0, value.c_str());
set_field_buffer(this->Field, 0, const_cast<char *>(value.c_str()));
}
const char* cmCursesWidget::GetValue()