Ejemplo n.º 1
0
bool VirtualKeyboard::loadKeyboardPack(const String &packName) {
	_kbdGUI->initSize(_system->getOverlayWidth(), _system->getOverlayHeight());

	delete _fileArchive;
	_fileArchive = 0;
	_loaded = false;

	bool opened = false;
	if (ConfMan.hasKey("vkeybdpath"))
		opened = openPack(packName, FSNode(ConfMan.get("vkeybdpath")));
	else if (ConfMan.hasKey("extrapath"))
		opened = openPack(packName, FSNode(ConfMan.get("extrapath")));

	// fallback to the current dir
	if (!opened)
		opened = openPack(packName, FSNode("."));

	if (opened) {
		_parser->setParseMode(VirtualKeyboardParser::kParseFull);
		_loaded = _parser->parse();

		if (_loaded) {
			printf("Keyboard pack '%s' loaded successfully!\n", packName.c_str());
		} else {
			warning("Error parsing the keyboard pack '%s'", packName.c_str());

			delete _fileArchive;
			_fileArchive = 0;
		}
	} else {
		warning("Keyboard pack not found");
	}

	return _loaded;
}
Ejemplo n.º 2
0
bool VirtualKeyboard::loadKeyboardPack(const std::string &packName)
{
  _kbdGUI->initSize(GetMainWindow().GetWidth(), GetMainWindow().GetHeight());

  _loaded = false;

  bool opened = false;
  opened = openPack(packName, Config::GetConstInstance()->GetDataDir() + "/vkeyb");

  // fallback to the current dir
  if (!opened)
    opened = openPack(packName, ".");

  if (opened) {
    _parser->setParseMode(VirtualKeyboardParser::kParseFull);
    _loaded = _parser->parse();

    if (_loaded) {
      printf("Keyboard pack '%s' loaded successfully\n", packName.c_str());
    } else {
      printf("Error parsing the keyboard pack '%s\n'", packName.c_str());
    }
  } else {
    printf("Keyboard pack not found\n");
  }

  return _loaded;
}