*/
void Con_DrawInput (void)
{
+ int y;
+ int i;
char editlinecopy[257], *text;
if (!key_consoleactive)
// use strlen of edit_line instead of key_linepos to allow editing
// of early characters w/o erasing
+ y = strlen(text);
+
+// fill out remainder with spaces
+ for (i = y; i < 256; i++)
+ text[i] = ' ';
+
// add the cursor frame
if ((int)(realtime*con_cursorspeed) & 1) // cursor is visible
text[key_linepos] = 11 + 130 * key_insert; // either solid or triangle facing right
- text[key_linepos + 1] = 0;
+// text[key_linepos + 1] = 0;
// prestep if horizontally scrolling
if (key_linepos >= con_linewidth)
DrawQ_String(0, con_vislines - 16, text, con_linewidth, 8, 8, 1, 1, 1, 1, 0);
// remove cursor
- key_lines[edit_line][key_linepos] = 0;
+// key_lines[edit_line][key_linepos] = 0;
}
consolekeys[K_DOWNARROW] = true; consolekeys[K_KP_DOWNARROW] = true;
consolekeys[K_BACKSPACE] = true;
consolekeys[K_DEL] = true; consolekeys[K_KP_DEL] = true;
+ consolekeys[K_INS] = true; consolekeys[K_KP_INS] = true;
consolekeys[K_HOME] = true; consolekeys[K_KP_HOME] = true;
consolekeys[K_END] = true; consolekeys[K_KP_END] = true;
consolekeys[K_PGUP] = true; consolekeys[K_KP_PGUP] = true;
consolekeys[K_SHIFT] = true;
consolekeys[K_MWHEELUP] = true;
consolekeys[K_MWHEELDOWN] = true;
+ consolekeys[K_KP_PLUS] = true;
+ consolekeys[K_KP_MINUS] = true;
+ consolekeys[K_KP_DIVIDE] = true;
+ consolekeys[K_KP_MULTIPLY] = true;
consolekeys['`'] = false;
consolekeys['~'] = false;