mirror of
https://github.com/libretro/ppsspp.git
synced 2024-11-23 16:19:44 +00:00
Rebase
This commit is contained in:
parent
59c9f4cfe9
commit
761186ec4c
103
UI/CwCheatScreen.cpp
Normal file
103
UI/CwCheatScreen.cpp
Normal file
@ -0,0 +1,103 @@
|
||||
// Copyright (c) 2012- PPSSPP Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0 or later versions.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official git repository and contact information can be found at
|
||||
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
|
||||
|
||||
#include "android/app-android.h"
|
||||
#include "base/logging.h"
|
||||
|
||||
#include "gfx_es2/glsl_program.h"
|
||||
#include "gfx_es2/gl_state.h"
|
||||
#include "gfx_es2/fbo.h"
|
||||
|
||||
#include "input/input_state.h"
|
||||
#include "ui/ui.h"
|
||||
#include "i18n/i18n.h"
|
||||
|
||||
#include "Common/KeyMap.h"
|
||||
|
||||
#include "Core/Config.h"
|
||||
#include "Core/CoreTiming.h"
|
||||
#include "Core/CoreParameter.h"
|
||||
#include "Core/Core.h"
|
||||
#include "Core/Host.h"
|
||||
#include "Core/System.h"
|
||||
#include "GPU/GPUState.h"
|
||||
#include "GPU/GPUInterface.h"
|
||||
#include "Core/HLE/sceCtrl.h"
|
||||
#include "Core/HLE/sceDisplay.h"
|
||||
#include "Core/Debugger/SymbolMap.h"
|
||||
|
||||
#include "UI/OnScreenDisplay.h"
|
||||
#include "UI/ui_atlas.h"
|
||||
#include "UI/GamepadEmu.h"
|
||||
#include "UI/UIShader.h"
|
||||
|
||||
#include "UI/MainScreen.h"
|
||||
#include "UI/EmuScreen.h"
|
||||
#include "UI/GameInfoCache.h"
|
||||
#include "UI/MiscScreens.h"
|
||||
#include "UI/CwCheatScreen.h"
|
||||
|
||||
|
||||
extern void DrawBackground(float alpha);
|
||||
static CWCheatEngine *cheatEngine2;
|
||||
|
||||
std::vector<std::string> CwCheatScreen::CreateCodeList() {
|
||||
std::vector<std::string> cheatList, formattedList;
|
||||
cheatEngine2 = new CWCheatEngine();
|
||||
cheatList = cheatEngine2->GetCodesList();
|
||||
|
||||
for (size_t i = 0; i < cheatList.size(); i++) {
|
||||
if (cheatList[i].substr(0, 3) == "_C1") {
|
||||
formattedList.push_back(cheatList[i].substr(3));
|
||||
enableCheat[i] = true;
|
||||
}
|
||||
if (cheatList[i].substr(0, 3) == "_C0") {
|
||||
formattedList.push_back(cheatList[i].substr(3));
|
||||
enableCheat[i] = false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return formattedList;
|
||||
}
|
||||
void CwCheatScreen::CreateViews() {
|
||||
using namespace UI;
|
||||
std::vector<std::string> formattedList;
|
||||
I18NCategory *k = GetI18NCategory("CwCheats");
|
||||
formattedList = CreateCodeList();
|
||||
root_ = new LinearLayout(ORIENT_HORIZONTAL);
|
||||
|
||||
LinearLayout *leftColumn = new LinearLayout(ORIENT_VERTICAL, new LinearLayoutParams(200, FILL_PARENT));
|
||||
leftColumn->Add(new Choice(k->T("Back")))->OnClick.Handle<UIScreen>(this, &UIScreen::OnBack);
|
||||
|
||||
|
||||
ScrollView *rightScroll = new ScrollView(ORIENT_VERTICAL, new LinearLayoutParams(1.0f));
|
||||
rightScroll->SetScrollToTop(false);
|
||||
LinearLayout *rightColumn = new LinearLayout(ORIENT_VERTICAL, new LinearLayoutParams(1.0f));
|
||||
rightScroll->Add(rightColumn);
|
||||
|
||||
root_->Add(leftColumn);
|
||||
root_->Add(rightScroll);
|
||||
rightColumn->Add(new ItemHeader(k->T("Cheats")));
|
||||
for (size_t i = 0; i < formattedList.size(); i++) {
|
||||
const char * name = formattedList[i].c_str();
|
||||
rightColumn->Add(new CheckBox(&enableCheat[i], k->T(name)))->OnClick.Handle(this, &CwCheatScreen::OnCheckBox);;
|
||||
}
|
||||
}
|
||||
UI::EventReturn CwCheatScreen::OnCheckBox(UI::EventParams ¶ms) {
|
||||
return UI::EVENT_DONE;
|
||||
}
|
35
UI/CwCheatScreen.h
Normal file
35
UI/CwCheatScreen.h
Normal file
@ -0,0 +1,35 @@
|
||||
// Copyright (c) 2013- PPSSPP Project.
|
||||
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU General Public License as published by
|
||||
// the Free Software Foundation, version 2.0 or later versions.
|
||||
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU General Public License 2.0 for more details.
|
||||
|
||||
// A copy of the GPL 2.0 should have been included with the program.
|
||||
// If not, see http://www.gnu.org/licenses/
|
||||
|
||||
// Official git repository and contact information can be found at
|
||||
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
|
||||
|
||||
#include "base/functional.h"
|
||||
#include "ui/view.h"
|
||||
#include "ui/ui_screen.h"
|
||||
#include "../Core/CwCheat.h"
|
||||
#include "UI/MiscScreens.h"
|
||||
|
||||
class CwCheatScreen : public UIDialogScreenWithBackground {
|
||||
public:
|
||||
CwCheatScreen() {}
|
||||
std::vector<std::string> CreateCodeList();
|
||||
protected:
|
||||
virtual void CreateViews();
|
||||
|
||||
private:
|
||||
UI::EventReturn OnCheckBox(UI::EventParams ¶ms);
|
||||
bool enableCheat [64];
|
||||
|
||||
};
|
@ -32,6 +32,7 @@
|
||||
#include "UI/GameScreen.h"
|
||||
#include "UI/GameInfoCache.h"
|
||||
#include "UI/GameSettingsScreen.h"
|
||||
#include "UI/CwCheatScreen.h"
|
||||
#include "UI/MiscScreens.h"
|
||||
#include "UI/ui_atlas.h"
|
||||
#include "Core/Config.h"
|
||||
@ -685,6 +686,7 @@ void GamePauseScreen::CreateViews() {
|
||||
|
||||
rightColumnItems->Add(new Choice(i->T("Continue")))->OnClick.Handle(this, &GamePauseScreen::OnContinue);
|
||||
rightColumnItems->Add(new Choice(i->T("Game Settings")))->OnClick.Handle(this, &GamePauseScreen::OnGameSettings);
|
||||
rightColumnItems->Add(new Choice(i->T("Cheats")))->OnClick.Handle(this, &GamePauseScreen::OnCwCheat);
|
||||
rightColumnItems->Add(new Choice(i->T("Exit to menu")))->OnClick.Handle(this, &GamePauseScreen::OnExitToMenu);
|
||||
|
||||
UI::EventParams e;
|
||||
@ -727,3 +729,7 @@ UI::EventReturn GamePauseScreen::OnSaveState(UI::EventParams &e) {
|
||||
screenManager()->finishDialog(this, DR_CANCEL);
|
||||
return UI::EVENT_DONE;
|
||||
}
|
||||
UI::EventReturn GamePauseScreen::OnCwCheat(UI::EventParams &e) {
|
||||
screenManager()->push(new CwCheatScreen());
|
||||
return UI::EVENT_DONE;
|
||||
}
|
||||
|
@ -69,6 +69,7 @@ private:
|
||||
UI::EventReturn OnLoadState(UI::EventParams &e);
|
||||
|
||||
UI::EventReturn OnStateSelected(UI::EventParams &e);
|
||||
UI::EventReturn OnCwCheat(UI::EventParams &e);
|
||||
|
||||
std::string gamePath_;
|
||||
|
||||
|
@ -20,6 +20,7 @@
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="ControlMappingScreen.cpp" />
|
||||
<ClCompile Include="CwCheatScreen.cpp" />
|
||||
<ClCompile Include="EmuScreen.cpp" />
|
||||
<ClCompile Include="GameInfoCache.cpp" />
|
||||
<ClCompile Include="GamepadEmu.cpp" />
|
||||
@ -40,7 +41,7 @@
|
||||
<ClInclude Include="GamepadEmu.h" />
|
||||
<ClInclude Include="GameScreen.h" />
|
||||
<ClInclude Include="GameSettingsScreen.h" />
|
||||
<ClInclude Include="Header.h" />
|
||||
<ClInclude Include="CwCheatScreen.h" />
|
||||
<ClInclude Include="MainScreen.h" />
|
||||
<ClInclude Include="MiscScreens.h" />
|
||||
<ClInclude Include="OnScreenDisplay.h" />
|
||||
|
@ -720,7 +720,9 @@ namespace MainWindow
|
||||
case ID_EMULATION_RESET:
|
||||
NativeMessageReceived("reset", "");
|
||||
break;
|
||||
|
||||
case ID_CHEAT:
|
||||
NativeMessageReceived("reset", "");
|
||||
break;
|
||||
case ID_EMULATION_SPEEDLIMIT:
|
||||
g_Config.bSpeedLimit = !g_Config.bSpeedLimit;
|
||||
break;
|
||||
@ -1408,12 +1410,14 @@ namespace MainWindow
|
||||
EnableMenuItem(menu, ID_TOGGLE_PAUSE, ingameEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_STOP, ingameEnable);
|
||||
EnableMenuItem(menu, ID_EMULATION_RESET, ingameEnable);
|
||||
EnableMenuItem(menu, ID_CHEAT, ingameEnable);
|
||||
|
||||
UINT menuEnable = globalUIState == UISTATE_MENU ? MF_ENABLED : MF_GRAYED;
|
||||
EnableMenuItem(menu, ID_FILE_SAVESTATEFILE, !menuEnable);
|
||||
EnableMenuItem(menu, ID_FILE_LOADSTATEFILE, !menuEnable);
|
||||
EnableMenuItem(menu, ID_FILE_QUICKSAVESTATE, !menuEnable);
|
||||
EnableMenuItem(menu, ID_FILE_QUICKLOADSTATE, !menuEnable);
|
||||
EnableMenuItem(menu, ID_CHEAT, !menuEnable);
|
||||
EnableMenuItem(menu, ID_CPU_DYNAREC, menuEnable);
|
||||
EnableMenuItem(menu, ID_CPU_INTERPRETER, menuEnable);
|
||||
EnableMenuItem(menu, ID_CPU_MULTITHREADED, menuEnable);
|
||||
|
2
lang
2
lang
@ -1 +1 @@
|
||||
Subproject commit 25865bf06478f8937c02d5de54b9a9384063a971
|
||||
Subproject commit e03a5a7fee7661d8d1949398c302770517d997ad
|
2
native
2
native
@ -1 +1 @@
|
||||
Subproject commit 2bf829cdc18148388ed9ce73a8dc0f88736ddb16
|
||||
Subproject commit e2301a5a75943059771320c364d77e135330d341
|
Loading…
Reference in New Issue
Block a user