From 2c8946f392f08b05c023b5ed3a92319ca2401dae Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Sat, 21 Aug 2010 11:11:54 +0000 Subject: SCI: add support for Control-C in earlier SCI games, too svn-id: r52254 --- engines/sci/graphics/controls.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'engines/sci') diff --git a/engines/sci/graphics/controls.cpp b/engines/sci/graphics/controls.cpp index 6cdf2e4e9d..f917f8291c 100644 --- a/engines/sci/graphics/controls.cpp +++ b/engines/sci/graphics/controls.cpp @@ -197,7 +197,7 @@ void GfxControls::kernelTexteditChange(reg_t controlObject, reg_t eventObject) { cursorPos++; textChanged = true; } break; - case 3: // a bit odd, but this is what is returned when Control - C is pressed + case 3: // returned in SCI1 late and newer when Control - C is pressed if (modifiers & SCI_KEYMOD_CTRL) { // Control-C erases the whole line cursorPos = 0; text.clear(); @@ -205,7 +205,12 @@ void GfxControls::kernelTexteditChange(reg_t controlObject, reg_t eventObject) { } break; default: - if (eventKey > 31 && eventKey < 256 && textSize < maxChars) { + if ((modifiers & SCI_KEYMOD_CTRL) && eventKey == 99) { + // Control-C in earlier SCI games (SCI0 - SCI1 middle) + // Control-C erases the whole line + cursorPos = 0; text.clear(); + textChanged = true; + } else if (eventKey > 31 && eventKey < 256 && textSize < maxChars) { // insert pressed character textAddChar = true; textChanged = true; -- cgit v1.2.3