Merge pull request #21625 from hrydgard/soft-keyboard-work

Soft keyboard work, checkboxes to enable/disable control input sources
This commit is contained in:
Henrik Rydgård authored and GitHub committed 2026-05-01 22:19:29 +02:00
commit a83487b2cb
58 files changed
+305 -72

No files matched your search

+3
View File
@@ -40,6 +40,9 @@ public:
void SetWrapText(bool wrapText) {
wrapText_ = wrapText;
}
void SetDetailsText(std::string_view detailsText) {
detailsText_ = detailsText;
}
void GetContentDimensionsBySpec(const UIContext &dc, UI::MeasureSpec horiz, UI::MeasureSpec vert, float &w, float &h) const override;
void Draw(UIContext &dc) override;
+23 -15
View File
@@ -833,7 +833,7 @@ std::string PopupTextInputChoice::ValueText(bool *shadow) const {
}
}
ViewGroup *CreateSoftKeyboard(TextEdit *edit, bool *upperCase) {
ViewGroup *CreateSoftKeyboard(TextEdit *edit, SoftKeyboardState *state) {
ScrollView *scrollView = new ScrollView(ORIENT_HORIZONTAL, new LinearLayoutParams(FILL_PARENT, WRAP_CONTENT));
LinearLayout *keyboard = scrollView->Add(new LinearLayout(ORIENT_VERTICAL, new LinearLayoutParams(WRAP_CONTENT, WRAP_CONTENT)));
@@ -841,17 +841,20 @@ ViewGroup *CreateSoftKeyboard(TextEdit *edit, bool *upperCase) {
static struct {
std::string_view v; const char *tag;
} kbRows[] = {
{"1234567890-=", "A"},
{"qwertyuiop'[]", "L"},
{"asdfghjkl()", "L"},
{"1234567890-_", "A"},
{"qwertyuiop", "L"},
{"asdfghjkl", "L"},
{"zxcvbnm,.", "L"},
{"QWERTYUIOP'[]", "U"},
{"ASDFGHJKL()", "U"},
{"QWERTYUIOP", "U"},
{"ASDFGHJKL", "U"},
{"ZXCVBNM,.", "U"},
{"@#$_&()/-+_", "S"},
{"*\"':;!?[]", "S"},
{"={}~<>|", "S"},
{"", "A"},
};
static const float space[] = {
0.0f, 10.0f, 20.0f, 30.0f, 10.0f, 20.0f, 30.0f, 30.0f,
0.0f, 10.0f, 20.0f, 30.0f, 10.0f, 20.0f, 30.0f, 10.0f, 20.0f, 30.0f, 30.0f,
};
static_assert(ARRAY_SIZE(kbRows) == ARRAY_SIZE(space));
@@ -871,8 +874,9 @@ ViewGroup *CreateSoftKeyboard(TextEdit *edit, bool *upperCase) {
bool visible = false;
switch (kbRows[i].tag[0]) {
case 'L': visible = !(*upperCase); break;
case 'U': visible = *upperCase; break;
case 'L': visible = (*state == SoftKeyboardState::Lower); break;
case 'U': visible = (*state == SoftKeyboardState::Upper); break;
case 'S': visible = (*state == SoftKeyboardState::Symbols); break;
case 'A': visible = true; break;
default: visible = false; break;
}
@@ -885,16 +889,20 @@ ViewGroup *CreateSoftKeyboard(TextEdit *edit, bool *upperCase) {
edit->Backspace();
});
break;
case 7:
case 10:
// Special keys.
row->Add(new Button("Aa", new LinearLayoutParams(80.0f, 50.0f)))->OnClick.Add([keyboard, upperCase](EventParams &) {
*upperCase = !(*upperCase);
row->Add(new Button("Aa", new LinearLayoutParams(80.0f, 50.0f)))->OnClick.Add([keyboard, state](EventParams &) {
*state = (SoftKeyboardState)((int)*state + 1);
if (*state == SoftKeyboardState::MAX) {
*state = SoftKeyboardState::Upper;
}
// Work through visibility.
for (int i = 0; i < keyboard->GetNumSubviews(); i++) {
LinearLayout *row = (LinearLayout *)keyboard->GetViewByIndex(i);
switch (row->Tag()[0]) {
case 'L': row->SetVisibility(*upperCase ? V_GONE : V_VISIBLE); break;
case 'U': row->SetVisibility(*upperCase ? V_VISIBLE : V_GONE); break;
case 'L': row->SetVisibility((*state == SoftKeyboardState::Lower) ? V_VISIBLE : V_GONE); break;
case 'U': row->SetVisibility((*state == SoftKeyboardState::Upper) ? V_VISIBLE : V_GONE); break;
case 'S': row->SetVisibility((*state == SoftKeyboardState::Symbols) ? V_VISIBLE : V_GONE); break;
case 'A': row->SetVisibility(V_VISIBLE); break;
default: row->SetVisibility(V_GONE); break;
}
@@ -930,7 +938,7 @@ void TextEditPopupScreen::CreatePopupContents(UI::ViewGroup *parent) {
parent->Add(new Spacer(8.0f));
keyboard_ = parent->Add(CreateSoftKeyboard(edit_, &upperCase_));
keyboard_ = parent->Add(CreateSoftKeyboard(edit_, &kbState_));
if (System_GetPropertyBool(SYSPROP_HAS_KEYBOARD)) {
keyboard_->SetVisibility(V_GONE);
lin->Add(new Spacer(5.0f));
+9 -2
View File
@@ -222,7 +222,14 @@ private:
bool liveUpdate_;
};
ViewGroup *CreateSoftKeyboard(TextEdit *edit, bool *upperCase);
enum class SoftKeyboardState {
Upper = 0,
Lower,
Symbols,
MAX,
};
ViewGroup *CreateSoftKeyboard(TextEdit *edit, SoftKeyboardState *state);
class TextEditPopupScreen : public PopupScreen {
public:
@@ -249,7 +256,7 @@ private:
std::string textEditValue_;
std::string placeholder_;
int maxLen_;
bool upperCase_ = false;
SoftKeyboardState kbState_{};
bool passwordMasking_ = false;
};
+6
View File
@@ -1038,6 +1038,12 @@ static const ConfigSetting controlSettings[] = {
ConfigSetting("SystemControls", SETTING(g_Config, bSystemControls), true, CfgFlag::DEFAULT),
ConfigSetting("RapidFileInterval", SETTING(g_Config, iRapidFireInterval), 5, CfgFlag::DEFAULT),
#if PPSSPP_PLATFORM(WINDOWS)
ConfigSetting("AllowHIDInput", SETTING(g_Config, bAllowHIDInput), true, CfgFlag::DEFAULT),
ConfigSetting("AllowXInput", SETTING(g_Config, bAllowXInput), true, CfgFlag::DEFAULT),
ConfigSetting("AllowDInput", SETTING(g_Config, bAllowDInput), true, CfgFlag::DEFAULT),
#endif
};
static const std::vector<std::string_view> emptyList;
+5
View File
@@ -532,6 +532,11 @@ public:
float fMouseSmoothing;
int iMouseWheelUpDelayMs;
// Crude Windows controller filter.
bool bAllowHIDInput;
bool bAllowXInput;
bool bAllowDInput;
bool bSystemControls;
int iRapidFireInterval;
+61 -28
View File
@@ -101,10 +101,8 @@ void CwCheatScreen::CreateSettingsViews(UI::ViewGroup *leftColumn) {
std::string title = StringFromFormat(cw->T_cstr("Import from %s"), "PSP/Cheats/cheat.db");
leftColumn->Add(new Choice(title.c_str()))->OnClick.Handle(this, &CwCheatScreen::OnImportCheat);
leftColumn->Add(new Choice(title))->OnClick.Handle(this, &CwCheatScreen::OnImportCheat);
leftColumn->Add(new Choice(mm->T("Browse"), ImageID("I_FOLDER_OPEN")))->OnClick.Handle(this, &CwCheatScreen::OnImportBrowse);
errorMessageView_ = leftColumn->Add(new TextView(di->T("LoadingFailed")));
errorMessageView_->SetVisibility(V_GONE);
leftColumn->Add(new ItemHeader(di->T("Options")));
#if !defined(MOBILE_DEVICE)
@@ -127,7 +125,14 @@ void CwCheatScreen::CreateContentViews(UI::ViewGroup *parent) {
LinearLayout *rightColumn = new LinearLayoutList(ORIENT_VERTICAL, new LinearLayoutParams(200, FILL_PARENT));
rightColumn->SetSpacing(0.0f);
rightScroll->Add(rightColumn);
if (!errorMessage_.empty()) {
rightColumn->Add(new NoticeView(errorLevel_, errorMessage_, errorDetails_));
rightColumn->Add(new Spacer(8.0f));
}
rightColumn->Add(new ItemHeader(cw->T("Cheats")));
bool prevIsTitle = false;
for (size_t i = 0; i < fileInfo_.size(); ++i) {
std::string_view text;
@@ -231,30 +236,61 @@ static char *GetLineNoNewline(char *temp, int sz, FILE *fp) {
return line;
}
void CwCheatScreen::OnImportBrowse(UI::EventParams &params) {
System_BrowseForFile(GetRequesterToken(), "Open cheat DB file", BrowseFileType::DB, [&](const std::string &value, int) {
Path path(value);
INFO_LOG(Log::System, "Attempting to load cheats from: '%s'", path.ToVisualString().c_str());
if (ImportCheats(path)) {
g_Config.bReloadCheats = true;
} else {
// Show an error message?
}
RecreateViews();
});
}
void CwCheatScreen::OnImportCheat(UI::EventParams &params) {
if (!ImportCheats(GetGlobalCheatFilePath())) {
void CwCheatScreen::ImportAndReport(const Path &cheatFile) {
int cheatCount = 0;
if (!ImportCheats(cheatFile, &cheatCount)) {
// Show an error message?
errorMessageView_->SetVisibility(UI::V_VISIBLE);
if (File::Exists(cheatFile)) {
auto er = GetI18NCategory(I18NCat::ERRORS);
errorMessage_ = ApplySafeSubstitutions(er->T("File not found: %1"), "");
errorLevel_ = NoticeLevel::WARN;
} else {
auto di = GetI18NCategory(I18NCat::DIALOG);
errorMessage_ = di->T("LoadingFailed");
errorLevel_ = NoticeLevel::ERROR;
}
errorDetails_ = GetFriendlyPath(cheatFile);
} else if (cheatCount == 0) {
auto cw = GetI18NCategory(I18NCat::CWCHEATS);
// Show an error message?
errorLevel_ = NoticeLevel::INFO;
errorMessage_ = cw->T("No cheats found for this game");
errorDetails_.clear();
} else {
auto cw = GetI18NCategory(I18NCat::CWCHEATS);
// Show a success message?
errorLevel_ = NoticeLevel::SUCCESS;
errorMessage_ = ApplySafeSubstitutions(cw->T("Added %1 cheats for this game"), cheatCount);
errorDetails_ = GetFriendlyPath(cheatFile);
}
g_Config.bReloadCheats = true;
RecreateViews();
}
bool CwCheatScreen::ImportCheats(const Path & cheatFile) {
void CwCheatScreen::OnImportBrowse(UI::EventParams &params) {
System_BrowseForFile(GetRequesterToken(), "Open cheat DB file", BrowseFileType::DB, [&](const std::string &value, int) {
if (value.empty()) {
return;
}
Path path(value);
INFO_LOG(Log::System, "Attempting to load cheats from: '%s'", path.ToVisualString().c_str());
int cheatsFound = 0;
ImportAndReport(path);
});
}
void CwCheatScreen::OnImportCheat(UI::EventParams &params) {
const Path importPath = GetGlobalCheatFilePath();
ImportAndReport(importPath);
}
bool CwCheatScreen::ImportCheats(const Path &cheatFile, int *cheatsFound) {
FILE *in = File::OpenCFile(cheatFile, "rt");
if (!in) {
WARN_LOG(Log::Common, "Unable to open %s\n", cheatFile.c_str());
return false;
}
if (gameID_.length() != 9 || !engine_) {
WARN_LOG(Log::Common, "CWCHEAT: Incorrect ID(%s) - can't import cheats.", gameID_.c_str());
return false;
@@ -262,12 +298,6 @@ bool CwCheatScreen::ImportCheats(const Path & cheatFile) {
std::string gameID = StringFromFormat("_S %s-%s", gameID_.substr(0, 4).c_str(), gameID_.substr(4).c_str());
FILE *in = File::OpenCFile(cheatFile, "rt");
if (!in) {
WARN_LOG(Log::Common, "Unable to open %s\n", cheatFile.c_str());
return false;
}
std::vector<std::string> title;
std::vector<std::string> newList;
@@ -275,6 +305,7 @@ bool CwCheatScreen::ImportCheats(const Path & cheatFile) {
bool parseGameEntry = false;
bool parseCheatEntry = false;
(*cheatsFound) = 0;
while (in && !feof(in)) {
char *line = GetLineNoNewline(linebuf, sizeof(linebuf), in);
@@ -304,6 +335,7 @@ bool CwCheatScreen::ImportCheats(const Path & cheatFile) {
title.push_back(line);
} else if (parseCheatEntry && ((line[0] == '_' && (line[1] == 'C' || line[1] == 'L')) || line[0] == '/' || line[0] == '#')) {
newList.push_back(line);
(*cheatsFound)++;
}
}
fclose(in);
@@ -320,8 +352,9 @@ bool CwCheatScreen::ImportCheats(const Path & cheatFile) {
}
FILE *append = File::OpenCFile(engine_->CheatFilename(), "at");
if (!append)
if (!append) {
return false;
}
if (title2.size() == 0 || title2[0] != '_' || title2[1] != 'S') {
for (int i = (int)title.size(); i > 0; i--) {
+8 -3
View File
@@ -28,6 +28,7 @@
struct CheatFileInfo;
class CWCheatEngine;
class NoticeView;
class CwCheatScreen : public UITwoPaneBaseDialogScreen {
public:
@@ -55,17 +56,21 @@ protected:
private:
void OnCheckBox(int index);
bool ImportCheats(const Path &cheatFile);
bool ImportCheats(const Path &cheatFile, int *cheatsFound);
void ImportAndReport(const Path &cheatFile);
enum { INDEX_ALL = -1 };
bool HasCheatWithName(const std::string &name);
bool RebuildCheatFile(int index);
UI::TextView *errorMessageView_ = nullptr;
CWCheatEngine *engine_ = nullptr;
std::vector<CheatFileInfo> fileInfo_;
std::string gameID_;
int fileCheckCounter_ = 0;
uint64_t fileCheckHash_ = 0;
std::string errorMessage_;
NoticeLevel errorLevel_ = NoticeLevel::ERROR;
std::string errorDetails_;
};
+7
View File
@@ -917,6 +917,13 @@ void GameSettingsScreen::CreateControlsSettings(UI::ViewGroup *controlsSettings)
disableDiags->SetEnabledPtr(&g_Config.bShowTouchControls);
}
#if PPSSPP_PLATFORM(WINDOWS)
controlsSettings->Add(new ItemHeader(co->T("Control input sources")));
controlsSettings->Add(new CheckBox(&g_Config.bAllowHIDInput, co->T("HID input")));
controlsSettings->Add(new CheckBox(&g_Config.bAllowXInput, co->T("XInput")));
controlsSettings->Add(new CheckBox(&g_Config.bAllowDInput, co->T("DirectInput")));
#endif
if (deviceType != DEVICE_TYPE_VR) {
controlsSettings->Add(new ItemHeader(co->T("Keyboard", "Keyboard Control Settings")));
#if defined(USING_WIN_UI)
+1
View File
@@ -151,6 +151,7 @@ static const ImageMeta g_uiImageIDs[] = {
{"I_FOLDER_UPLOAD", false},
{"I_FILE", false},
{"I_FILE_COPY", false},
{"I_FILE_PASTE", false},
{"I_WEB_BROWSER", false},
{"I_WIFI", false},
{"I_LOGO_X", false},
+17 -10
View File
@@ -32,6 +32,7 @@
#include "Common/StringUtils.h"
#include "Common/System/NativeApp.h"
#include "Core/KeyMap.h"
#include "Core/Config.h"
#include "Windows/DinputDevice.h"
#include "Windows/Hid/HidInputDevice.h"
@@ -234,7 +235,7 @@ void DinputDevice::ReleaseAllKeys() {
}
void SendNativeAxis(InputDeviceID deviceId, int value, int &lastValue, InputAxis axisId) {
if (value != lastValue) {
if (value != lastValue && g_Config.bAllowDInput) {
AxisInput axis;
axis.deviceId = deviceId;
axis.axisId = axisId;
@@ -297,6 +298,8 @@ int DinputDevice::UpdateState() {
}
void DinputDevice::ApplyButtons(DIJOYSTATE2 &state) {
const bool sendInput = g_Config.bAllowDInput;
BYTE *buttons = state.rgbButtons;
u32 downMask = 0x80;
@@ -306,11 +309,13 @@ void DinputDevice::ApplyButtons(DIJOYSTATE2 &state) {
}
bool down = (state.rgbButtons[i] & downMask) == downMask;
KeyInput key;
key.deviceId = DEVICE_ID_PAD_0 + pDevNum;
key.flags = down ? KeyInputFlags::DOWN : KeyInputFlags::UP;
key.keyCode = dinput_buttons[i];
NativeKey(key);
if (sendInput) {
KeyInput key;
key.deviceId = DEVICE_ID_PAD_0 + pDevNum;
key.flags = down ? KeyInputFlags::DOWN : KeyInputFlags::UP;
key.keyCode = dinput_buttons[i];
NativeKey(key);
}
lastButtons_[i] = state.rgbButtons[i];
}
@@ -343,10 +348,12 @@ void DinputDevice::ApplyButtons(DIJOYSTATE2 &state) {
}
}
NativeKey(dpad[0]);
NativeKey(dpad[1]);
NativeKey(dpad[2]);
NativeKey(dpad[3]);
if (sendInput) {
NativeKey(dpad[0]);
NativeKey(dpad[1]);
NativeKey(dpad[2]);
NativeKey(dpad[3]);
}
lastPOV_[0] = LOWORD(state.rgdwPOV[0]);
}
+8 -5
View File
@@ -20,6 +20,7 @@
#include "Common/System/NativeApp.h"
#include "Common/System/OSD.h"
#include "Core/KeyMap.h"
#include "Core/Config.h"
struct HidStickMapping {
HidStickAxis stickAxis;
@@ -235,6 +236,8 @@ int HidInputDevice::UpdateState() {
}
}
const bool sendInput = g_Config.bAllowHIDInput;
if (controller_) {
HIDControllerState state{};
bool result = false;
@@ -258,14 +261,14 @@ int HidInputDevice::UpdateState() {
for (u32 i = 0; i < buttonMappingsSize; i++) {
const ButtonInputMapping &mapping = buttonMappings[i];
if (downMask & mapping.button) {
if ((downMask & mapping.button) && sendInput) {
KeyInput key;
key.deviceId = deviceID;
key.flags = KeyInputFlags::DOWN;
key.keyCode = mapping.keyCode;
NativeKey(key);
}
if (upMask & mapping.button) {
if ((upMask & mapping.button) && sendInput) {
KeyInput key;
key.deviceId = deviceID;
key.flags = KeyInputFlags::UP;
@@ -275,7 +278,7 @@ int HidInputDevice::UpdateState() {
}
for (const auto &mapping : g_psStickMappings) {
if (state.stickAxes[mapping.stickAxis] != prevState_.stickAxes[mapping.stickAxis]) {
if (state.stickAxes[mapping.stickAxis] != prevState_.stickAxes[mapping.stickAxis] && sendInput) {
AxisInput axis;
axis.deviceId = deviceID;
axis.axisId = mapping.inputAxis;
@@ -285,7 +288,7 @@ int HidInputDevice::UpdateState() {
}
for (const auto &mapping : g_psTriggerMappings) {
if (state.triggerAxes[mapping.triggerAxis] != prevState_.triggerAxes[mapping.triggerAxis]) {
if (state.triggerAxes[mapping.triggerAxis] != prevState_.triggerAxes[mapping.triggerAxis] && sendInput) {
AxisInput axis;
axis.deviceId = deviceID;
axis.axisId = mapping.inputAxis;
@@ -294,7 +297,7 @@ int HidInputDevice::UpdateState() {
}
}
if (state.accValid) {
if (state.accValid && sendInput) {
NativeAccelerometer(state.accelerometer[0], state.accelerometer[1], state.accelerometer[2]);
}
+7 -3
View File
@@ -232,7 +232,11 @@ void XinputDevice::ReleaseAllKeys(int pad) {
}
void XinputDevice::UpdatePad(int pad, const XINPUT_STATE &state, XINPUT_VIBRATION &vibration) {
ApplyButtons(pad, state);
const bool sendInput = g_Config.bAllowXInput;
if (sendInput) {
ApplyButtons(pad, state);
}
ApplyVibration(pad, vibration);
AxisInput axis[6];
@@ -256,12 +260,13 @@ void XinputDevice::UpdatePad(int pad, const XINPUT_STATE &state, XINPUT_VIBRATIO
sendAxis(JOYSTICK_AXIS_LTRIGGER, (float)state.Gamepad.bLeftTrigger / 255.0f, 4);
sendAxis(JOYSTICK_AXIS_RTRIGGER, (float)state.Gamepad.bRightTrigger / 255.0f, 5);
if (axisCount) {
if (axisCount && sendInput) {
NativeAxis(axis, axisCount);
}
padData_[pad].prevState = state;
padData_[pad].checkDelayUpdates = 0;
padData_[pad].prevButtons = state.Gamepad.wButtons;
}
void XinputDevice::ApplyButtons(int pad, const XINPUT_STATE &state) {
@@ -269,7 +274,6 @@ void XinputDevice::ApplyButtons(int pad, const XINPUT_STATE &state) {
const u32 downMask = buttons & (~padData_[pad].prevButtons);
const u32 upMask = (~buttons) & padData_[pad].prevButtons;
padData_[pad].prevButtons = buttons;
for (int i = 0; i < ARRAY_SIZE(xinput_ctrl_map); i++) {
if (downMask & xinput_ctrl_map[i].from) {
+3
View File
@@ -127,6 +127,7 @@ Circular deadzone = منطقة الحساسيه الدائرية
Circular stick input = ادخال العصا الدائرية
Classic = ‎كلاسيكي
Confine Mouse = ‎حجز مؤشر الماوس في حدود نافذة البرنامج
Control input sources = تحكم في مصادر الإدخال # AI translated
Control mapping = ‎تعديل ازرار التحكم
Custom touch button setup = اعدادات مفاتيح مخصصة
Customize = تخصيص
@@ -202,10 +203,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = تمت إضافة %1 غش لهذه اللعبة # AI translated
Cheats = ‎الغش
Edit Cheat File = ‎عدل ملف الغش
Import Cheats = ‎إستورد من cheat.db
Import from %s = ‎إستورد من %s
No new cheats found for this game = لم يتم العثور على خدع جديدة لهذه اللعبة # AI translated
Refresh interval = ‎معدل التحديث
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Dairəvi ölü bölgə
Circular stick input = Dairəvi çubuq girişi
Classic = Klassik
Confine Mouse = Siçanı pəncərə/görüntü içində tut
Control input sources = Daxil etmə mənbələrinə nəzarət # AI translated
Control mapping = Yönəltmə xəritələnişi
Custom touch button setup = Özəl toxunuşlu düymə quruluşu
Customize = Özəlləşdir # Customize Touch Controls = Toxunuşlu yönəltmə düzənini düzəlt...
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = %1 kod oyuna əlavə edildi # AI translated
Cheats = Hiylələr
Edit Cheat File = Hiylə faylını düzəlt
Import Cheats = Cheat.db'dən götür
Import from %s = %s yerindən götür
No new cheats found for this game = Bu oyun üçün yeni hilelər tapılmadı # AI translated
Refresh interval = Yeniləniş aralığı
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Кругавая мёртвая зона
Circular stick input = Кругавы ўвод джойсцікам
Classic = Класічны
Confine Mouse = Trap mouse within window/display area
Control input sources = Кіраванне ўваходнымі крыніцамі # AI translated
Control mapping = Control mapping
Custom touch button setup = Налада карыстальніцкіх клавіш
Customize = Наладзіць
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Дададзена %1 чыт для гэтай гульні # AI translated
Cheats = Чыты
Edit Cheat File = Рэдагаваць файл чытаў
Import Cheats = Імпарт з cheat.db
Import from %s = Імпарт з %s
No new cheats found for this game = Новых читов для гэтай гульні не знойдзена # AI translated
Refresh interval = Інтэрвал абнаўлення
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Класик
Confine Mouse = Trap mouse within window/display area
Control input sources = Контрол на входящите източници # AI translated
Control mapping = Избиране на контроли
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Добавени са %1 чийтове за тази игра # AI translated
Cheats = Чийтове
Edit Cheat File = Редактиране на чийтове файл
Import Cheats = Внеси от cheat.db
Import from %s = Внеси от %s
No new cheats found for this game = Не са намерени нови чийтове за тази игра # AI translated
Refresh interval = Интервал на обновяване
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Zona inactiva circular
Circular stick input = Entrada de stick circular
Classic = Clàssic
Confine Mouse = Fixar el ratolí a l'àrea de la finestra/pantalla
Control input sources = Controla les fonts d'entrada # AI translated
Control mapping = Assignar botons
Custom touch button setup = Ajust de tecla personalitzada
Customize = Personalitzar
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = S'han afegit %1 trucs per a aquest joc # AI translated
Cheats = Trucs
Edit Cheat File = Editar el fitxer de trucs
Import Cheats = Importar «cheat.db»
Import from %s = Importar %s
No new cheats found for this game = No s'han trobat nous trucs per a aquest joc # AI translated
Refresh interval = Freqüència de refrescament
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Klasický
Confine Mouse = Trap mouse within window/display area
Control input sources = Ovládat vstupní zdroje # AI translated
Control mapping = Mapování ovládání
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Přidáno %1 cheatů pro tuto hru # AI translated
Cheats = Cheaty
Edit Cheat File = Upravit soubor s cheaty
Import Cheats = Importovat z cheat.db
Import from %s = Importovat z %s
No new cheats found for this game = Nebyly nalezeny žádné nové cheaty pro tuto hru # AI translated
Refresh interval = Frekvence obnoveni
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Klassisk
Confine Mouse = Begræns mus indenfor vindue/skærmområde
Control input sources = Kontroller inputkilder # AI translated
Control mapping = Ændre tasteplaceringen
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Tilføjet %1 snyd til dette spil # AI translated
Cheats = Snyd
Edit Cheat File = Editer snydefil
Import Cheats = Import from cheat.db
Import from %s = Importer fra %s
No new cheats found for this game = Ingen nye cheats fundet til dette spil # AI translated
Refresh interval = Opdateringsinterval
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Kreisförmige Totzone
Circular stick input = Kreisförmige Stick-Eingabe
Classic = Klassisch
Confine Mouse = Maus im Fenster-/Anzeigebereich einfangen
Control input sources = Eingabequellen steuern # AI translated
Control mapping = Tastenbelegung ändern
Custom touch button setup = Benutzerdefinierte Tasteneinstellung
Customize = Anpassen
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Es wurden %1 Cheats für dieses Spiel hinzugefügt # AI translated
Cheats = Cheats
Edit Cheat File = Cheat-Datei ändern
Import Cheats = Cheats importieren (aus cheat.db)
Import from %s = Importieren von %s
No new cheats found for this game = Keine neuen Cheats für dieses Spiel gefunden # AI translated
Refresh interval = Aktualisierungsintervall
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Classic
Confine Mouse = Trap mouse within window/display area
Control input sources = Mengontrol sumber input # AI translated
Control mapping = Atoro'i tombolna
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Ditambahkan %1 cheat untuk game ini # AI translated
Cheats = Cheat
Edit Cheat File = Edit cheat file
Import Cheats = Patamanni cheat.db
Import from %s = Patamanni %s
No new cheats found for this game = Tidak ada cheat baru ditemukan untuk permainan ini # AI translated
Refresh interval = Refresh interval
[DesktopUI]
+3
View File
@@ -143,6 +143,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Classic
Confine Mouse = Trap mouse within window/display area
Control input sources = Control input sources
Control mapping = Control mapping
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -218,10 +219,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Added %1 cheats for this game
Cheats = Cheats
Edit Cheat File = Edit cheat file
Import Cheats = Import from cheat.db
Import from %s = Import from %s
No new cheats found for this game = No new cheats found for this game
Refresh interval = Refresh interval
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Zona muerta circular
Circular stick input = Entrada de stick circular
Classic = Clásico
Confine Mouse = Parar ratón dentro del área de la ventana/pantalla
Control input sources = Controlar fuentes de entrada # AI translated
Control mapping = Asignar botones
Custom touch button setup = Configurar tecla personalizada
Customize = Personalizar
@@ -195,10 +196,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Añadidos %1 trucos para este juego # AI translated
Cheats = Trucos
Edit Cheat File = Editar archivo de trucos
Import Cheats = Importar archivo cheat.db
Import from %s = Importar desde %s
No new cheats found for this game = No se han encontrado nuevos trucos para este juego # AI translated
Refresh interval = Frecuencia de actualización
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone o Zona Inactiva circular
Circular stick input = Entrada del stick circular
Classic = Clásico
Confine Mouse = Fijar el ratón al área de la ventana/pantalla
Control input sources = Controlar fuentes de entrada # AI translated
Control mapping = Asignar botones / Mapeo de botones
Custom touch button setup = Configurar teclas personalizadas
Customize = Personalizar
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Se añadieron %1 trucos para este juego # AI translated
Cheats = Trucos
Edit Cheat File = Editar archivo de trucos
Import Cheats = Importar archivo cheat.db
Import from %s = Importar desde %s
No new cheats found for this game = No se encontraron nuevos trucos para este juego # AI translated
Refresh interval = Frecuencia de actualización
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = کلاسیک
Confine Mouse = ‎محدود کردن موس به ناحیه درون پنجره
Control input sources = کنترل منابع ورودی # AI translated
Control mapping = ‎تنظیمات کنترلر
Custom touch button setup = شخصی سازی تنظیمات کلید
Customize = شخصی‌سازی
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = به این بازی %1 تقلب اضافه شد # AI translated
Cheats = ‎کد‌های تقلب
Edit Cheat File = ‎ویرایش فایل کد‌ها
Import Cheats = ‎cheat.db وارد کردن از
Import from %s = وارد کردن از %s
No new cheats found for this game = هیچ تقلب جدیدی برای این بازی یافت نشد # AI translated
Refresh interval = دورهٔ تازه‌سازی
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Klassinen
Confine Mouse = Kaappaa hiiri ikkunan/näytön sisälle
Control input sources = Ohjaa syöttölähteitä # AI translated
Control mapping = Ohjauksen kartoitus
Custom touch button setup = Custom touch button setup
Customize = Mukauta
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Lisätty %1 koodia tälle pelille # AI translated
Cheats = Huijaukset
Edit Cheat File = Muokkaa huijaustiedostoa
Import Cheats = Tuo huijauksia
Import from %s = %s
No new cheats found for this game = Tätä peliä varten ei löytynyt uusia huijauksia # AI translated
Refresh interval = Ruudunpäivitysnopeus
[DesktopUI]
+3
View File
@@ -143,6 +143,7 @@ Circular deadzone = Zone morte circulaire
Circular stick input = Entrée du stick circulaire
Classic = Classique
Confine Mouse = Capturer la souris dans la fenêtre/zone d'affichage
Control input sources = Contrôler les sources d'entrée # AI translated
Control mapping = Réassignation des touches
Custom touch button setup = Configuration personnalisée des boutons tactiles
Customize = Personnaliser
@@ -218,10 +219,12 @@ X = Axe X
Y = Axe Y
[CwCheats]
Added %1 cheats for this game = Ajout de %1 astuces pour ce jeu # AI translated
Cheats = Codes de triche
Edit Cheat File = Modifier le fichier de triche
Import Cheats = Importer des codes de triche
Import from %s = Importer de %s
No new cheats found for this game = Aucun nouveau cheat trouvé pour ce jeu # AI translated
Refresh interval = Taux de rafraîchissement
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Clásico
Confine Mouse = Trap mouse within window/display area
Control input sources = Controla as fontes de entrada # AI translated
Control mapping = Asignar botóns
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Engadidos %1 trucos para este xogo # AI translated
Cheats = Trucos
Edit Cheat File = Editar arquivo de trucos
Import Cheats = Importar cheat.db
Import from %s = Importar %s
No new cheats found for this game = Non se atoparon novos trucos para este xogo # AI translated
Refresh interval = Frecuencia de actualización
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Κλασικό
Confine Mouse = Εγκλωβισμός ποντικιού μέσα στην περιοχή παραθύρου/οθόνης
Control input sources = Έλεγχος πηγών εισόδου # AI translated
Control mapping = Χαρτογράφηση κουμπιών
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Προστέθηκαν %1 cheats για αυτό το παιχνίδι # AI translated
Cheats = Κωδικοί
Edit Cheat File = Επεξεργασία αρχείου κωδικών
Import Cheats = Εισαγωγή από cheat.db
Import from %s = Εισαγωγή από %s
No new cheats found for this game = Δεν βρέθηκαν νέοι κωδικοί για αυτό το παιχνίδι # AI translated
Refresh interval = Ρυθμός ανανέωσης
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Classic
Confine Mouse = Trap mouse within window/display area
Control input sources = שלוט במקורות קלט # AI translated
Control mapping = מיפוי מקשים
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = הוספו %1 קודי רמאות למשחק הזה # AI translated
Cheats = Cheats
Edit Cheat File = Edit cheat file
Import Cheats = Import from cheat.db
Import from %s = Import from %s
No new cheats found for this game = לא נמצאו קודים חדשים למשחק זה # AI translated
Refresh interval = Refresh interval
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Classic
Confine Mouse = Trap mouse within window/display area
Control input sources = שלוט במקורות קלט # AI translated
Control mapping = םישקמ יופימ
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = המשחק הזה קיבל %1 קודי רמאות # AI translated
Cheats = Cheats
Edit Cheat File = Edit cheat file
Import Cheats = Import from cheat.db
Import from %s = Import from %s
No new cheats found for this game = המשחק הזה הוא ללא קודים חדשים # AI translated
Refresh interval = Refresh interval
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Klasično
Confine Mouse = Zaključaj miš u window/display području
Control input sources = Kontrolirajte izvore unosa # AI translated
Control mapping = Namještanje kontrola
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Dodano %1 varanja za ovu igru # AI translated
Cheats = Šifre
Edit Cheat File = Izmijeni cheat datoteku
Import Cheats = Uvezi iz cheat.db
Import from %s = Uvezi iz %s
No new cheats found for this game = Nisu pronađeni novi trikovi za ovu igru # AI translated
Refresh interval = Brzina osvježavanja
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Kör alakú holtzóna
Circular stick input = Kör alakú bemenet
Classic = Klasszikus
Confine Mouse = Egérkurzor rögzítése az ablakhoz
Control input sources = Bemeneti források vezérlése # AI translated
Control mapping = Gombok beállítása
Custom touch button setup = Saját gomb beállítása
Customize = Testreszab
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = %1 csalást adtunk hozzá ehhez a játékhoz # AI translated
Cheats = Csalások
Edit Cheat File = Csalás fájl szerkesztése
Import Cheats = Importálás cheat.db-ből
Import from %s = Importálás innen: %s
No new cheats found for this game = Nincs új csalás található ehhez a játékhoz # AI translated
Refresh interval = Frissítési gyakoriság
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Zona mati melingkar
Circular stick input = Masukan stik melingkar
Classic = Klasik
Confine Mouse = Kunci mouse di area layar
Control input sources = Kontrol sumber input # AI translated
Control mapping = Pemetaan kontrol
Custom touch button setup = Pengaturan kunci kustom
Customize = Kustomisasi
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Ditambahkan %1 cheat untuk permainan ini # AI translated
Cheats = Cheat
Edit Cheat File = Edit berkas cheat
Import Cheats = Impor dari cheat.db
Import from %s = Impor dari %s
No new cheats found for this game = Tidak ada cheat baru yang ditemukan untuk game ini # AI translated
Refresh interval = Interval penyegaran
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Raggio circolare di base
Circular stick input = Input circolare levetta
Classic = Classico
Confine Mouse = Confina il mouse all'interno dell'area della finestra
Control input sources = Controlla le sorgenti di input # AI translated
Control mapping = Mappatura dei Controlli
Custom touch button setup = Impostazioni tasto personalizz.
Customize = Personalizza
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Aggiunti %1 trucchi per questo gioco # AI translated
Cheats = Trucchi
Edit Cheat File = Modifica file Trucchi
Import Cheats = Importa da cheat.db
Import from %s = Importa da %s
No new cheats found for this game = Non sono stati trovati nuovi trucchi per questo gioco # AI translated
Refresh interval = Frequenza di Aggiornamento
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = 環状デッドゾーン
Circular stick input = 環状スティック入力
Classic = クラシック
Confine Mouse = ウィンドウ/表示領域内でマウスをトラップする
Control input sources = 入力ソースを制御 # AI translated
Control mapping = キーマッピング(入力ボタン設定)
Custom touch button setup = カスタムキーの設定
Customize = カスタマイズ
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = このゲームに%1 チートが追加されました # AI translated
Cheats = チート
Edit Cheat File = チートファイルを編集する
Import Cheats = cheat.dbからインポートする
Import from %s = %sからインポートする
No new cheats found for this game = このゲームの新しいチートは見つかりませんでした # AI translated
Refresh interval = リフレッシュレート
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Klasik
Confine Mouse = Trap mouse within window/display area
Control input sources = Ngontrol sumber input # AI translated
Control mapping = Pemetaan Kontrol
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Dianyari %1 curang kanggo game iki # AI translated
Cheats = Mbeling
Edit Cheat File = Sunting berkas mbeling
Import Cheats = Import from cheat.db
Import from %s = Njokot soko %s
No new cheats found for this game = Ora ana cheat anyar sing ditemokake kanggo game iki # AI translated
Refresh interval = Restar rate
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = 원형 하단 반경
Circular stick input = 원형 스틱 입력
Classic = 클래식
Confine Mouse = 창/표시 영역 내에서 마우스 트랩
Control input sources = 입력 소스 제어 # AI translated
Control mapping = 제어 맵핑
Custom touch button setup = 커스텀 키 설정
Customize = 맞춤설정
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = 이 게임에 %1 치트가 추가되었습니다 # AI translated
Cheats = 치트
Edit Cheat File = 치트 파일 수정
Import Cheats = cheat.db에서 가져오기
Import from %s = %s에서 가져오기
No new cheats found for this game = 이 게임에 대한 새로운 치트를 찾을 수 없습니다 # AI translated
Refresh interval = 주사율
[DesktopUI]
+3
View File
@@ -132,6 +132,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = کلاسیک
Confine Mouse = Trap mouse within window/display area
Control input sources = Kontrolka çavkanên têkevin # AI translated
Control mapping = Control mapping
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -207,10 +208,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Lihevhatin %1 tîkîne ji bo vê lîstikê # AI translated
Cheats = Cheats
Edit Cheat File = Edit cheat file
Import Cheats = Import from cheat.db
Import from %s = Import from %s
No new cheats found for this game = Çalakî nû nehat dîtin ji bo vê lîstikê # AI translated
Refresh interval = Refresh interval
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = ແບບດັ້ງເດີມ
Confine Mouse = ຈຳກັດເມົ້າໃນໜ້າຕ່າງ/ພື້ນທີ່ສະແດງຜົນ
Control input sources = ຄວບຄຸມແหลວນສູງໃສ່ # AI translated
Control mapping = ປ່ຽນແປງຄ່າຄວບຄຸມ
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = ເພີ່ມເຂົ້າແບບ %1 ສໍາລັບເກมນີ້ # AI translated
Cheats = ການໃຊ້ສູດໂກງ
Edit Cheat File = ປັບແຕ່ງໄຟລ໌ສູດໂກງ
Import Cheats = Import from cheat.db
Import from %s = ນຳເຂົ້າຈາກໄຟລ໌ສູດໂກງ %s
No new cheats found for this game = ບໍ່ມີຄວາມສາມາດໃໝ່ສໍາລັບເກມນີ້ # AI translated
Refresh interval = ອັດຕາການຟື້ນຟູ
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Klasikinis
Confine Mouse = Trap mouse within window/display area
Control input sources = Valdyti įvesties šaltinius # AI translated
Control mapping = Valdymo mygtukų nustatymai
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Pridėta %1 sukčiavimų šiai žaidimui # AI translated
Cheats = Kodai
Edit Cheat File = Redaguoti kodų failą
Import Cheats = Importuoti iš cheat.db
Import from %s = Importuoti iš %s
No new cheats found for this game = Šiai žaidimui naujų apgavysčių nerasta # AI translated
Refresh interval = Atsinaujinimo dažnis
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Klasik
Confine Mouse = Trap mouse within window/display area
Control input sources = Kawal sumber input # AI translated
Control mapping = Pemetaan kawalan
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Ditambahkan %1 helah untuk permainan ini # AI translated
Cheats = Cheat
Edit Cheat File = Ubah cheat file
Import Cheats = Import dari cheat.db
Import from %s = Import dari %s
No new cheats found for this game = Tiada cheat baru ditemui untuk permainan ini # AI translated
Refresh interval = Refresh interval
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Klassiek
Confine Mouse = Muis binnen venster/weergavegebied vastzetten
Control input sources = Beheer invoerbronnen # AI translated
Control mapping = Besturing toewijzen
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Toegevoegd %1 cheats voor dit spel # AI translated
Cheats = Cheats
Edit Cheat File = Cheatbestand bewerken
Import Cheats = Importeren van cheat.db
Import from %s = Importeren van %s
No new cheats found for this game = Geen nieuwe cheats gevonden voor dit spel # AI translated
Refresh interval = Vernieuwingsfrequentie
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Classic
Confine Mouse = Trap mouse within window/display area
Control input sources = Kontroller inngangskilder # AI translated
Control mapping = Control mapping
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Lagt til %1 jukse for dette spillet # AI translated
Cheats = Cheats
Edit Cheat File = Edit cheat file
Import Cheats = Import from cheat.db
Import from %s = Import from %s
No new cheats found for this game = Ingen nye jukser funnet for dette spillet # AI translated
Refresh interval = Refresh interval
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Okrągły promień dolny
Circular stick input = Okrągły odczyt analoga
Classic = Klasyczny
Confine Mouse = Zablokuj myszkę w oknie
Control input sources = Kontroluj źródła wejściowe # AI translated
Control mapping = Mapowanie przycisków
Custom touch button setup = Niestandardowe Ustawienia Klawiszy
Customize = Ustawienia Niestandardowe
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Dodano %1 cheatów do tej gry # AI translated
Cheats = Kody
Edit Cheat File = Edytuj plik kodów
Import Cheats = Importuj z pliku cheat.db
Import from %s = Importuj z pliku %s
No new cheats found for this game = Nie znaleziono nowych cheatów dla tej gry # AI translated
Refresh interval = Szybkość odświeżania
[DesktopUI]
+3
View File
@@ -143,6 +143,7 @@ Circular deadzone = Zona morta circular
Circular stick input = Entrada circular do direcional
Classic = Clássico
Confine Mouse = Travar o mouse dentro da janela/tela
Control input sources = Controlar fontes de entrada # AI translated
Control mapping = Mapeamento dos controles
Custom touch button setup = Configuração personalizada do toque dos botões
Customize = Personalizar
@@ -218,10 +219,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Adicionados %1 cheats para este jogo # AI translated
Cheats = Trapaças
Edit Cheat File = Editar arquivo de trapaças
Import Cheats = Importar do cheat.db
Import from %s = Importar do %s
No new cheats found for this game = Nenhum novo cheat encontrado para este jogo # AI translated
Refresh interval = Intervalo da atualização
[DesktopUI]
+3
View File
@@ -143,6 +143,7 @@ Circular deadzone = Zona morta circular
Circular stick input = Input circular do direcional
Classic = Clássico
Confine Mouse = Isolar o rato dentro da janela / área de exibição
Control input sources = Controlar fontes de entrada # AI translated
Control mapping = Mapeamento de controlos
Custom touch button setup = Definição personalizada de teclas
Customize = Personalizar
@@ -218,10 +219,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Adicionados %1 cheats para este jogo # AI translated
Cheats = Cheats
Edit Cheat File = Editar ficheiro de Cheats
Import Cheats = Importar de cheat.db
Import from %s = Importar de %s
No new cheats found for this game = Não foram encontrados novos cheats para este jogo # AI translated
Refresh interval = Taxa de atualização
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Clasic
Confine Mouse = Trap mouse within window/display area
Control input sources = Controlează sursele de input # AI translated
Control mapping = Editare controale
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,11 +195,13 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Adăugate %1 cheats pentru acest joc # AI translated
Cheats = Trișare
Edit Cheat File = Editare fișier trișare
Import Cheats = Importă din cheat.db
#Import %s = Importă din %s
Import from %s = Import from %s
No new cheats found for this game = Nu au fost găsite cheat-uri noi pentru acest joc # AI translated
Refresh interval = Rată de împrospatare
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Круговая мёртвая зона
Circular stick input = Круговой ввод стика
Classic = Классический
Confine Mouse = Не давать мыши выходить за пределы окна
Control input sources = Управление источниками ввода # AI translated
Control mapping = Назначение кнопок
Custom touch button setup = Настройка кастомных кнопок
Customize = Настроить
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Добавлено %1 читов для этой игры # AI translated
Cheats = Читы
Edit Cheat File = Изменить файл чита
Import Cheats = Импортировать из cheat.db
Import from %s = Импортировать из %s
No new cheats found for this game = Не найдено новых читов для этой игры # AI translated
Refresh interval = Интервал обновления
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Cirkulär dödzon
Circular stick input = Cirkulär analog inmatning
Classic = Klassisk
Confine Mouse = Stäng in muspekaren i fönstret
Control input sources = Kontrollera ingångskällor # AI translated
Control mapping = Kontrollmappning
Custom touch button setup = Anpassa touch-knappar
Customize = Anpassa
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Lade till %1 fusk för det här spelet # AI translated
Cheats = Fusk
Edit Cheat File = Redigera fuskfil
Import Cheats = Importera från cheat.db
Import from %s = Importera från %s
No new cheats found for this game = Inga nya fusk hittades för det här spelet # AI translated
Refresh interval = Uppdateringsintervall
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Pabilog na deadzone
Circular stick input = Input ng pabilog na stick
Classic = Klasiko
Confine Mouse = I-trap ang mouse sa loob ng window/display area
Control input sources = Назорати манбаъҳои воридот # AI translated
Control mapping = Pagtakda ng Kontrol
Custom touch button setup = Magtakda ng pasadyang pag-aayos sa pindutan
Customize = I-customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Эҳтимолҳои %1 барои ин бозӣ илова карда шуданд # AI translated
Cheats = Mga Daya
Edit Cheat File = I-edit ang Cheat File
Import Cheats = I-import ang mga daya mula sa cheat.db
Import from %s = I-Import ang mga daya mula sa %s
No new cheats found for this game = Барои ин бозӣ хардӣ нави пайдо нашуд # AI translated
Refresh interval = Pagitan ng pag-refresh
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = รัศมีต่ำสุดของการหมุ
Circular stick input = ค่านำเข้าการหมุนปุ่ม
Classic = แบบดั้งเดิม
Confine Mouse = จำกัดเม้าส์ภายในหน้าต่าง/พื้นที่แสดงผล
Control input sources = ควบคุมแหล่งข้อมูลเข้า # AI translated
Control mapping = เปลี่ยนแปลงค่าการควบคุม
Custom touch button setup = ติดตั้งปุ่มคอมโบปรับแต่ง
Customize = ปรับแต่ง
@@ -194,10 +195,12 @@ X = แกน X
Y = แกน Y
[CwCheats]
Added %1 cheats for this game = เพิ่ม %1 โกงสำหรับเกมนี้ # AI translated
Cheats = การใช้สูตรโกง
Edit Cheat File = ปรับแต่งไฟล์สูตรโกง
Import Cheats = นำเข้าจากไฟล์สูตรโกง
Import from %s = นำเข้าจาก %s
No new cheats found for this game = ไม่พบโกงใหม่สำหรับเกมนี้ # AI translated
Refresh interval = ช่วงเวลารีเฟรชสูตร
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Dairesel ölü bölge
Circular stick input = Dairesel çubuk girişi
Classic = Klasik
Confine Mouse = Fareyi Sınırlandır
Control input sources = Kontrol giriş kaynakları # AI translated
Control mapping = Kontrolleri Ayarla
Custom touch button setup = Özel Tuş Ayarı
Customize = Özelleştir
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Bu oyun için %1 hile eklendi # AI translated
Cheats = Hileler
Edit Cheat File = Hile Dosyası Düzenle
Import Cheats = Hileleri İçe Aktar
Import from %s = Şuradan Aktar %s
No new cheats found for this game = Bu oyun için yeni hile bulunamadı # AI translated
Refresh interval = Yenileme Aralığı
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Кругова мертва зона
Circular stick input = Введення круглого стіка
Classic = Класичний
Confine Mouse = Не давати миші виходити за межі екрану
Control input sources = Керування джерелами введення # AI translated
Control mapping = Призначення кнопок
Custom touch button setup = Індивідуальне налаштування клавіші
Customize = Кастомізувати
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Додано %1 читів для цієї гри # AI translated
Cheats = Чіт-коди
Edit Cheat File = Змінити файл чіт-коду
Import Cheats = Імпортувати з cheat.db
Import from %s = Імпортувати з %s
No new cheats found for this game = Нових чітів для цієї гри не знайдено # AI translated
Refresh interval = Частота оновлення
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = Circular deadzone
Circular stick input = Circular stick input
Classic = Cổ điển
Confine Mouse = hiển thị chuột
Control input sources = Kiểm soát nguồn nhập # AI translated
Control mapping = Chỉnh nút
Custom touch button setup = Custom touch button setup
Customize = Customize
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = Đã thêm %1 mã gian lận cho trò chơi này # AI translated
Cheats = Cheats
Edit Cheat File = Sửa mục cheat
Import Cheats = Nhập mã từ cheat.db
Import from %s = Nhập mã từ %s
No new cheats found for this game = Không tìm thấy mã gian lận mới cho trò chơi này # AI translated
Refresh interval = Tần số làm mới
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = 环形死区
Circular stick input = 环形摇杆输入
Classic = 经典款式
Confine Mouse = 限制鼠标在窗口内
Control input sources = 控制输入源 # AI translated
Control mapping = 按键映射
Custom touch button setup = 自定义键位设置
Customize = 自定义…
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = 为此游戏添加了 %1 作弊码 # AI translated
Cheats = 金手指
Edit Cheat File = 编辑金手指文件
Import Cheats = 从cheat.db导入
Import from %s = 从%s导入
No new cheats found for this game = 未找到此游戏的新作弊 # AI translated
Refresh interval = 刷新间隔
[DesktopUI]
+3
View File
@@ -119,6 +119,7 @@ Circular deadzone = 圓形死區
Circular stick input = 圓形搖桿輸入
Classic = 傳統
Confine Mouse = 在視窗/顯示區域內截獲滑鼠
Control input sources = 控制輸入來源 # AI translated
Control mapping = 控制對應
Custom touch button setup = 自訂按鍵設定
Customize = 自訂
@@ -194,10 +195,12 @@ X = X
Y = Y
[CwCheats]
Added %1 cheats for this game = 為此遊戲添加了 %1 作弊碼 # AI translated
Cheats = 密技
Edit Cheat File = 編輯密技檔案
Import Cheats = 從 cheat.db 匯入
Import from %s = 從 %s 匯入
No new cheats found for this game = 未找到此遊戲的新作弊 # AI translated
Refresh interval = 重新整理間隔
[DesktopUI]
+15 -6
View File
@@ -23,9 +23,9 @@
inkscape:pagecheckerboard="true"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="px"
inkscape:zoom="2"
inkscape:cx="245.5"
inkscape:cy="307.75"
inkscape:zoom="5.6568542"
inkscape:cx="272.05933"
inkscape:cy="562.76861"
inkscape:window-width="3840"
inkscape:window-height="2071"
inkscape:window-x="-9"
@@ -1022,10 +1022,10 @@
sodipodi:nodetypes="ccccccccccccccccccccccccccccc" /><path
id="I_FILE"
style="color:#000000;fill:#ffffff;stroke-miterlimit:4.8;-inkscape-stroke:none"
d="m 17.197914,145.52082 v 10.86134 h 8.347291 v -7.85739 l -2.925399,-3.00395 z m 0.740008,0.74207 h 4.109309 v 2.89285 h 2.757974 v 6.48642 h -6.867283 z m 4.849834,0.49299 1.61592,1.65778 h -1.61592 z m -3.549138,3.50521 -0.0036,0.74208 4.325838,0.0238 0.004,-0.7426 z m 0,1.6366 -0.0036,0.7426 4.325838,0.0232 0.004,-0.74207 z m 0,1.70739 -0.0057,0.74207 3.087666,0.0232 0.0062,-0.74208 z" /><path
d="m 14.022914,145.52082 v 10.86134 h 8.347291 v -7.85739 l -2.925399,-3.00395 z m 0.740008,0.74207 h 4.109309 v 2.89285 h 2.757974 v 6.48642 h -6.867283 z m 4.849834,0.49299 1.61592,1.65778 h -1.61592 z m -3.549138,3.50521 -0.0036,0.74208 4.325838,0.0238 0.004,-0.7426 z m 0,1.6366 -0.0036,0.7426 4.325838,0.0232 0.004,-0.74207 z m 0,1.70739 -0.0057,0.74207 3.087666,0.0232 0.0062,-0.74208 z" /><path
id="I_FILE_COPY"
style="color:#000000;fill:#ffffff;stroke-width:0.898414;stroke-miterlimit:4.8;-inkscape-stroke:none"
d="m 34.989592,145.52081 v 1.64899 h -1.91668 v 9.75806 h 7.49928 v -1.64899 h 1.91668 v -7.05952 l -2.62826,-2.69854 z m 0.66508,0.66663 h 3.69176 v 2.5988 h 2.47788 v 5.82755 h -6.16964 z m 4.35683,0.44286 1.452111,1.48932 h -1.452111 z m -6.27351,1.20613 h 1.2516 v 7.44244 h 4.91804 v 0.98392 h -6.16964 z m 3.08508,1.94303 -0.004,0.66663 3.88658,0.0212 0.004,-0.66715 z m 0,1.4702 -0.004,0.66714 3.88658,0.0212 0.004,-0.66663 z m 0,1.53427 -0.005,0.66663 2.77399,0.0207 0.005,-0.66663 z" /><g
d="m 27.58126,145.52081 v 1.64899 h -1.91668 v 9.75806 h 7.49928 v -1.64899 h 1.91668 v -7.05952 l -2.62826,-2.69854 z m 0.66508,0.66663 h 3.69176 v 2.5988 h 2.47788 v 5.82755 h -6.16964 z m 4.35683,0.44286 1.452111,1.48932 H 32.60317 Z m -6.27351,1.20613 h 1.2516 v 7.44244 h 4.91804 v 0.98392 h -6.16964 z m 3.08508,1.94303 -0.004,0.66663 3.88658,0.0212 0.004,-0.66715 z m 0,1.4702 -0.004,0.66714 3.88658,0.0212 0.004,-0.66663 z m 0,1.53427 -0.005,0.66663 2.77399,0.0207 0.005,-0.66663 z" /><g
id="I_WEB_BROWSER"
transform="matrix(0.02185176,0,0,0.02185176,1.3338424,90.592909)"
style="fill:#ffffff;fill-opacity:1">
@@ -1568,7 +1568,16 @@
id="path97" /></g><path
id="rect8"
style="fill:#ffffff;stroke-width:2.0069"
d="m 153.47141,289.76429 h 2.55931 v 11.37002 h -2.55931 z" /></g></g><style
d="m 153.47141,289.76429 h 2.55931 v 11.37002 h -2.55931 z" /></g><g
id="g3"
transform="matrix(0.63803159,0,0,0.63803159,35.189582,144.23096)"><path
d="m 2.513663,19.0876 h 3.9114471 v -1 H 3.513663 V 4.5498022 h 1.2483801 v 2 H 14.762044 v -2 h 1.24838 v 3.699784 h 0.4 c 0.218953,0.0052 0.429987,0.08293 0.6,0.221 v -4.920784 h -2.24838 v -1 h -3 c 0,-2.66666568 -4.0000009,-2.66666568 -4.0000009,0 h -3 v 1 H 2.513663 Z M 5.7620431,3.5498022 h 2.9999998 v -1.385 c 0,-0.339265 0.274736,-0.6144483 0.614,-0.6149999 h 0.7710001 c 0.339655,0 0.615001,0.2753447 0.615001,0.6149999 v 1.385 h 3 v 2 H 5.7620431 Z M 9.9693869,16.227989 h 6.5118791 v 1 H 9.9693869 Z M 7.4251101,8.5498022 V 21.802503 H 18.481266 V 11.81287 l -3.6,-3.2630678 z M 17.481266,20.802503 H 8.4251099 V 9.5498022 h 5.3671711 v 3.3520528 h 3.688985 z m 0,-8.900648 H 14.792281 V 9.5498022 h -10e-4 l 2.69,2.3530678 z M 9.9693869,14.08328 h 6.5118791 v 1 H 9.9693869 Z m 0,4.237581 h 4.5118791 v 1 H 9.9693869 Z"
id="I_FILE_PASTE"
style="fill:#ffffff;fill-opacity:1"
sodipodi:nodetypes="ccccccccccccccccccccccccscssccccccccccccccccccccccccccccccccccccccc" /><path
fill="none"
d="M 0,0 H 24 V 24 H 0 Z"
id="path2-9" /></g></g><style
type="text/css"
id="style1">
.st0{fill:#000000;}

Before

Width:  |  Height:  |  Size: 156 KiB

After

Width:  |  Height:  |  Size: 157 KiB