diff options
| -rw-r--r-- | engines/sci/engine/kgraphics.cpp | 6 | ||||
| -rw-r--r-- | engines/sci/engine/klists.cpp | 5 | 
2 files changed, 9 insertions, 2 deletions
diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp index ec8e0dbf1b..5b483eb4a2 100644 --- a/engines/sci/engine/kgraphics.cpp +++ b/engines/sci/engine/kgraphics.cpp @@ -950,8 +950,8 @@ reg_t kDrawControl(EngineState *s, int argc, reg_t *argv) {  		}  	}  	if (objName == "savedHeros") { -		// Import of QfG character files dialog is shown -		// display additional popup information before letting user use it +		// Import of QfG character files dialog is shown. +		// display additional popup information before letting user use it.  		reg_t changeDirButton = s->_segMan->findObjectByName("changeDirItem");  		if (!changeDirButton.isNull()) {  			// check if checkDirButton is still enabled, in that case we are called the first time during that room @@ -964,6 +964,8 @@ reg_t kDrawControl(EngineState *s, int argc, reg_t *argv) {  						"for Quest for Glory 2. Example: 'qfg2-thief.sav'.");  			}  		} + +		// For the SCI32 version of this, check kListAt().  		s->_chosenQfGImportItem = readSelectorValue(s->_segMan, controlObject, SELECTOR(mark));  	} diff --git a/engines/sci/engine/klists.cpp b/engines/sci/engine/klists.cpp index 15d18eb4bb..342fa95eda 100644 --- a/engines/sci/engine/klists.cpp +++ b/engines/sci/engine/klists.cpp @@ -506,6 +506,11 @@ reg_t kListAt(EngineState *s, int argc, reg_t *argv) {  		curIndex++;  	} +	// Update the virtual file selected in the character import screen of QFG4. +	// For the SCI0-SCI1.1 version of this, check kDrawControl(). +	if (g_sci->inQfGImportRoom() && !strcmp(s->_segMan->getObjectName(curObject), "SelectorDText")) +		s->_chosenQfGImportItem = listIndex; +  	return curObject;  }  | 
