Add tags to all our UI screens. Useful to debug UI problems.

This commit is contained in:
Henrik Rydgård 2022-09-16 10:14:00 +02:00
parent ca2962beab
commit 9f3851678e
29 changed files with 152 additions and 54 deletions

View file

@ -71,7 +71,7 @@ public:
// what screen it is. // what screen it is.
virtual void *dialogData() { return 0; } virtual void *dialogData() { return 0; }
virtual std::string tag() const { return std::string(""); } virtual const char *tag() const = 0;
virtual bool isTransparent() const { return false; } virtual bool isTransparent() const { return false; }
virtual bool isTopLevel() const { return false; } virtual bool isTopLevel() const { return false; }

View file

@ -136,7 +136,7 @@ public:
void SetHiddenChoices(std::set<int> hidden) { void SetHiddenChoices(std::set<int> hidden) {
hidden_ = hidden; hidden_ = hidden;
} }
virtual std::string tag() const override { return std::string("listpopup"); } const char *tag() const override { return "listpopup"; }
UI::Event OnChoice; UI::Event OnChoice;
@ -187,6 +187,8 @@ public:
disabled_ = *value_ < 0; disabled_ = *value_ < 0;
} }
const char *tag() const { return "SliderPopup"; }
Event OnChange; Event OnChange;
private: private:
@ -214,6 +216,8 @@ public:
: PopupScreen(title, "OK", "Cancel"), units_(units), value_(value), originalValue_(*value), minValue_(minValue), maxValue_(maxValue), step_(step), changing_(false), liveUpdate_(liveUpdate) {} : PopupScreen(title, "OK", "Cancel"), units_(units), value_(value), originalValue_(*value), minValue_(minValue), maxValue_(maxValue), step_(step), changing_(false), liveUpdate_(liveUpdate) {}
void CreatePopupContents(UI::ViewGroup *parent) override; void CreatePopupContents(UI::ViewGroup *parent) override;
const char *tag() const { return "SliderFloatPopup"; }
Event OnChange; Event OnChange;
private: private:
@ -241,6 +245,8 @@ public:
: PopupScreen(title, "OK", "Cancel"), value_(value), placeholder_(placeholder), maxLen_(maxLen) {} : PopupScreen(title, "OK", "Cancel"), value_(value), placeholder_(placeholder), maxLen_(maxLen) {}
virtual void CreatePopupContents(ViewGroup *parent) override; virtual void CreatePopupContents(ViewGroup *parent) override;
const char *tag() const { return "TextEditPopup"; }
Event OnChange; Event OnChange;
private: private:

View file

@ -56,6 +56,8 @@ public:
parent->Add(scroll); parent->Add(scroll);
} }
const char *tag() const override { return "ButtonShape"; }
private: private:
int *setting_; int *setting_;
}; };
@ -84,6 +86,8 @@ public:
parent->Add(scroll); parent->Add(scroll);
} }
const char *tag() const override { return "ButtonIcon"; }
private: private:
int *setting_; int *setting_;
}; };

View file

@ -28,6 +28,8 @@ class ComboKeyScreen : public UIDialogScreenWithBackground {
public: public:
ComboKeyScreen(int id): id_(id) {} ComboKeyScreen(int id): id_(id) {}
const char *tag() const override { return "ComboKey"; }
void CreateViews() override; void CreateViews() override;
void onFinish(DialogResult result) override; void onFinish(DialogResult result) override;

View file

@ -35,7 +35,7 @@ class SingleControlMapper;
class ControlMappingScreen : public UIDialogScreenWithBackground { class ControlMappingScreen : public UIDialogScreenWithBackground {
public: public:
ControlMappingScreen() {} ControlMappingScreen() {}
std::string tag() const override { return "control mapping"; } const char *tag() const override { return "ControlMapping"; }
protected: protected:
void CreateViews() override; void CreateViews() override;
@ -47,7 +47,7 @@ private:
UI::EventReturn OnAutoConfigure(UI::EventParams &params); UI::EventReturn OnAutoConfigure(UI::EventParams &params);
UI::EventReturn OnVisualizeMapping(UI::EventParams &params); UI::EventReturn OnVisualizeMapping(UI::EventParams &params);
virtual void dialogFinished(const Screen *dialog, DialogResult result) override; void dialogFinished(const Screen *dialog, DialogResult result) override;
UI::ScrollView *rightScroll_; UI::ScrollView *rightScroll_;
std::vector<SingleControlMapper *> mappers_; std::vector<SingleControlMapper *> mappers_;
@ -61,17 +61,19 @@ public:
pspBtn_ = btn; pspBtn_ = btn;
} }
virtual bool key(const KeyInput &key) override; const char *tag() const override { return "KeyMappingNewKey"; }
virtual bool axis(const AxisInput &axis) override;
bool key(const KeyInput &key) override;
bool axis(const AxisInput &axis) override;
void SetDelay(float t); void SetDelay(float t);
protected: protected:
void CreatePopupContents(UI::ViewGroup *parent) override; void CreatePopupContents(UI::ViewGroup *parent) override;
virtual bool FillVertical() const override { return false; } bool FillVertical() const override { return false; }
virtual bool ShowButtons() const override { return true; } bool ShowButtons() const override { return true; }
virtual void OnCompleted(DialogResult result) override {} void OnCompleted(DialogResult result) override {}
private: private:
int pspBtn_; int pspBtn_;
@ -87,6 +89,8 @@ public:
pspBtn_ = btn; pspBtn_ = btn;
} }
const char *tag() const override { return "KeyMappingNewMouseKey"; }
bool key(const KeyInput &key) override; bool key(const KeyInput &key) override;
bool axis(const AxisInput &axis) override; bool axis(const AxisInput &axis) override;
@ -114,6 +118,8 @@ public:
void update() override; void update() override;
const char *tag() const override { return "AnalogSetup"; }
protected: protected:
void CreateViews() override; void CreateViews() override;
@ -144,6 +150,8 @@ public:
bool key(const KeyInput &key) override; bool key(const KeyInput &key) override;
bool axis(const AxisInput &axis) override; bool axis(const AxisInput &axis) override;
const char *tag() const override { return "TouchTest"; }
protected: protected:
struct TrackedTouch { struct TrackedTouch {
int id; int id;
@ -171,6 +179,8 @@ class VisualMappingScreen : public UIDialogScreenWithBackground {
public: public:
VisualMappingScreen() {} VisualMappingScreen() {}
const char *tag() const override { return "VisualMapping"; }
protected: protected:
void CreateViews() override; void CreateViews() override;

View file

@ -41,6 +41,8 @@ public:
void update() override; void update() override;
void onFinish(DialogResult result) override; void onFinish(DialogResult result) override;
const char *tag() const override { return "CwCheat"; }
protected: protected:
void CreateViews() override; void CreateViews() override;

View file

@ -85,7 +85,7 @@ static const char *logLevelList[] = {
"Verb." "Verb."
}; };
void DevMenu::CreatePopupContents(UI::ViewGroup *parent) { void DevMenuScreen::CreatePopupContents(UI::ViewGroup *parent) {
using namespace UI; using namespace UI;
auto dev = GetI18NCategory("Developer"); auto dev = GetI18NCategory("Developer");
auto sy = GetI18NCategory("System"); auto sy = GetI18NCategory("System");
@ -94,25 +94,25 @@ void DevMenu::CreatePopupContents(UI::ViewGroup *parent) {
LinearLayout *items = new LinearLayout(ORIENT_VERTICAL); LinearLayout *items = new LinearLayout(ORIENT_VERTICAL);
#if !defined(MOBILE_DEVICE) #if !defined(MOBILE_DEVICE)
items->Add(new Choice(dev->T("Log View")))->OnClick.Handle(this, &DevMenu::OnLogView); items->Add(new Choice(dev->T("Log View")))->OnClick.Handle(this, &DevMenuScreen::OnLogView);
#endif #endif
items->Add(new Choice(dev->T("Logging Channels")))->OnClick.Handle(this, &DevMenu::OnLogConfig); items->Add(new Choice(dev->T("Logging Channels")))->OnClick.Handle(this, &DevMenuScreen::OnLogConfig);
items->Add(new Choice(sy->T("Developer Tools")))->OnClick.Handle(this, &DevMenu::OnDeveloperTools); items->Add(new Choice(sy->T("Developer Tools")))->OnClick.Handle(this, &DevMenuScreen::OnDeveloperTools);
items->Add(new Choice(dev->T("Jit Compare")))->OnClick.Handle(this, &DevMenu::OnJitCompare); items->Add(new Choice(dev->T("Jit Compare")))->OnClick.Handle(this, &DevMenuScreen::OnJitCompare);
items->Add(new Choice(dev->T("Shader Viewer")))->OnClick.Handle(this, &DevMenu::OnShaderView); items->Add(new Choice(dev->T("Shader Viewer")))->OnClick.Handle(this, &DevMenuScreen::OnShaderView);
if (g_Config.iGPUBackend == (int)GPUBackend::VULKAN) { if (g_Config.iGPUBackend == (int)GPUBackend::VULKAN) {
// TODO: Make a new allocator visualizer for VMA. // TODO: Make a new allocator visualizer for VMA.
// items->Add(new CheckBox(&g_Config.bShowAllocatorDebug, dev->T("Allocator Viewer"))); // items->Add(new CheckBox(&g_Config.bShowAllocatorDebug, dev->T("Allocator Viewer")));
items->Add(new CheckBox(&g_Config.bShowGpuProfile, dev->T("GPU Profile"))); items->Add(new CheckBox(&g_Config.bShowGpuProfile, dev->T("GPU Profile")));
} }
items->Add(new Choice(dev->T("Toggle Freeze")))->OnClick.Handle(this, &DevMenu::OnFreezeFrame); items->Add(new Choice(dev->T("Toggle Freeze")))->OnClick.Handle(this, &DevMenuScreen::OnFreezeFrame);
items->Add(new Choice(dev->T("Dump Frame GPU Commands")))->OnClick.Handle(this, &DevMenu::OnDumpFrame); items->Add(new Choice(dev->T("Dump Frame GPU Commands")))->OnClick.Handle(this, &DevMenuScreen::OnDumpFrame);
items->Add(new Choice(dev->T("Toggle Audio Debug")))->OnClick.Handle(this, &DevMenu::OnToggleAudioDebug); items->Add(new Choice(dev->T("Toggle Audio Debug")))->OnClick.Handle(this, &DevMenuScreen::OnToggleAudioDebug);
#ifdef USE_PROFILER #ifdef USE_PROFILER
items->Add(new CheckBox(&g_Config.bShowFrameProfiler, dev->T("Frame Profiler"), "")); items->Add(new CheckBox(&g_Config.bShowFrameProfiler, dev->T("Frame Profiler"), ""));
#endif #endif
items->Add(new CheckBox(&g_Config.bDrawFrameGraph, dev->T("Draw Frametimes Graph"))); items->Add(new CheckBox(&g_Config.bDrawFrameGraph, dev->T("Draw Frametimes Graph")));
items->Add(new Choice(dev->T("Reset limited logging")))->OnClick.Handle(this, &DevMenu::OnResetLimitedLogging); items->Add(new Choice(dev->T("Reset limited logging")))->OnClick.Handle(this, &DevMenuScreen::OnResetLimitedLogging);
scroll->Add(items); scroll->Add(items);
parent->Add(scroll); parent->Add(scroll);
@ -123,48 +123,48 @@ void DevMenu::CreatePopupContents(UI::ViewGroup *parent) {
} }
} }
UI::EventReturn DevMenu::OnToggleAudioDebug(UI::EventParams &e) { UI::EventReturn DevMenuScreen::OnToggleAudioDebug(UI::EventParams &e) {
g_Config.bShowAudioDebug = !g_Config.bShowAudioDebug; g_Config.bShowAudioDebug = !g_Config.bShowAudioDebug;
return UI::EVENT_DONE; return UI::EVENT_DONE;
} }
UI::EventReturn DevMenu::OnResetLimitedLogging(UI::EventParams &e) { UI::EventReturn DevMenuScreen::OnResetLimitedLogging(UI::EventParams &e) {
Reporting::ResetCounts(); Reporting::ResetCounts();
return UI::EVENT_DONE; return UI::EVENT_DONE;
} }
UI::EventReturn DevMenu::OnLogView(UI::EventParams &e) { UI::EventReturn DevMenuScreen::OnLogView(UI::EventParams &e) {
UpdateUIState(UISTATE_PAUSEMENU); UpdateUIState(UISTATE_PAUSEMENU);
screenManager()->push(new LogScreen()); screenManager()->push(new LogScreen());
return UI::EVENT_DONE; return UI::EVENT_DONE;
} }
UI::EventReturn DevMenu::OnLogConfig(UI::EventParams &e) { UI::EventReturn DevMenuScreen::OnLogConfig(UI::EventParams &e) {
UpdateUIState(UISTATE_PAUSEMENU); UpdateUIState(UISTATE_PAUSEMENU);
screenManager()->push(new LogConfigScreen()); screenManager()->push(new LogConfigScreen());
return UI::EVENT_DONE; return UI::EVENT_DONE;
} }
UI::EventReturn DevMenu::OnDeveloperTools(UI::EventParams &e) { UI::EventReturn DevMenuScreen::OnDeveloperTools(UI::EventParams &e) {
UpdateUIState(UISTATE_PAUSEMENU); UpdateUIState(UISTATE_PAUSEMENU);
screenManager()->push(new DeveloperToolsScreen()); screenManager()->push(new DeveloperToolsScreen());
return UI::EVENT_DONE; return UI::EVENT_DONE;
} }
UI::EventReturn DevMenu::OnJitCompare(UI::EventParams &e) { UI::EventReturn DevMenuScreen::OnJitCompare(UI::EventParams &e) {
UpdateUIState(UISTATE_PAUSEMENU); UpdateUIState(UISTATE_PAUSEMENU);
screenManager()->push(new JitCompareScreen()); screenManager()->push(new JitCompareScreen());
return UI::EVENT_DONE; return UI::EVENT_DONE;
} }
UI::EventReturn DevMenu::OnShaderView(UI::EventParams &e) { UI::EventReturn DevMenuScreen::OnShaderView(UI::EventParams &e) {
UpdateUIState(UISTATE_PAUSEMENU); UpdateUIState(UISTATE_PAUSEMENU);
if (gpu) // Avoid crashing if chosen while the game is being loaded. if (gpu) // Avoid crashing if chosen while the game is being loaded.
screenManager()->push(new ShaderListScreen()); screenManager()->push(new ShaderListScreen());
return UI::EVENT_DONE; return UI::EVENT_DONE;
} }
UI::EventReturn DevMenu::OnFreezeFrame(UI::EventParams &e) { UI::EventReturn DevMenuScreen::OnFreezeFrame(UI::EventParams &e) {
if (PSP_CoreParameter().frozen) { if (PSP_CoreParameter().frozen) {
PSP_CoreParameter().frozen = false; PSP_CoreParameter().frozen = false;
} else { } else {
@ -173,12 +173,12 @@ UI::EventReturn DevMenu::OnFreezeFrame(UI::EventParams &e) {
return UI::EVENT_DONE; return UI::EVENT_DONE;
} }
UI::EventReturn DevMenu::OnDumpFrame(UI::EventParams &e) { UI::EventReturn DevMenuScreen::OnDumpFrame(UI::EventParams &e) {
gpu->DumpNextFrame(); gpu->DumpNextFrame();
return UI::EVENT_DONE; return UI::EVENT_DONE;
} }
void DevMenu::dialogFinished(const Screen *dialog, DialogResult result) { void DevMenuScreen::dialogFinished(const Screen *dialog, DialogResult result) {
UpdateUIState(UISTATE_INGAME); UpdateUIState(UISTATE_INGAME);
// Close when a subscreen got closed. // Close when a subscreen got closed.
// TODO: a bug in screenmanager causes this not to work here. // TODO: a bug in screenmanager causes this not to work here.

View file

@ -28,9 +28,11 @@
#include "UI/MiscScreens.h" #include "UI/MiscScreens.h"
#include "GPU/Common/ShaderCommon.h" #include "GPU/Common/ShaderCommon.h"
class DevMenu : public PopupScreen { class DevMenuScreen : public PopupScreen {
public: public:
DevMenu(std::shared_ptr<I18NCategory> i18n) : PopupScreen(i18n->T("Dev Tools")) {} DevMenuScreen(std::shared_ptr<I18NCategory> i18n) : PopupScreen(i18n->T("Dev Tools")) {}
const char *tag() const override { return "DevMenu"; }
void CreatePopupContents(UI::ViewGroup *parent) override; void CreatePopupContents(UI::ViewGroup *parent) override;
void dialogFinished(const Screen *dialog, DialogResult result) override; void dialogFinished(const Screen *dialog, DialogResult result) override;
@ -50,7 +52,9 @@ protected:
class JitDebugScreen : public UIDialogScreenWithBackground { class JitDebugScreen : public UIDialogScreenWithBackground {
public: public:
JitDebugScreen() {} JitDebugScreen() {}
virtual void CreateViews() override; void CreateViews() override;
const char *tag() const override { return "JitDebug"; }
private: private:
UI::EventReturn OnEnableAll(UI::EventParams &e); UI::EventReturn OnEnableAll(UI::EventParams &e);
@ -60,7 +64,9 @@ private:
class LogConfigScreen : public UIDialogScreenWithBackground { class LogConfigScreen : public UIDialogScreenWithBackground {
public: public:
LogConfigScreen() {} LogConfigScreen() {}
virtual void CreateViews() override; void CreateViews() override;
const char *tag() const override { return "LogConfig"; }
private: private:
UI::EventReturn OnToggleAll(UI::EventParams &e); UI::EventReturn OnToggleAll(UI::EventParams &e);
@ -76,6 +82,8 @@ public:
void CreateViews() override; void CreateViews() override;
void update() override; void update() override;
const char *tag() const override { return "Log"; }
private: private:
void UpdateLog(); void UpdateLog();
UI::EventReturn OnSubmit(UI::EventParams &e); UI::EventReturn OnSubmit(UI::EventParams &e);
@ -89,6 +97,8 @@ class LogLevelScreen : public ListPopupScreen {
public: public:
LogLevelScreen(const std::string &title); LogLevelScreen(const std::string &title);
const char *tag() const override { return "LogLevel"; }
private: private:
virtual void OnCompleted(DialogResult result); virtual void OnCompleted(DialogResult result);
@ -96,7 +106,8 @@ private:
class SystemInfoScreen : public UIDialogScreenWithBackground { class SystemInfoScreen : public UIDialogScreenWithBackground {
public: public:
SystemInfoScreen() {} const char *tag() const override { return "SystemInfo"; }
void CreateViews() override; void CreateViews() override;
}; };
@ -106,13 +117,15 @@ public:
memset(buttons_, 0, sizeof(buttons_)); memset(buttons_, 0, sizeof(buttons_));
} }
virtual bool key(const KeyInput &key) override; const char *tag() const override { return "AddressPrompt"; }
bool key(const KeyInput &key) override;
UI::Event OnChoice; UI::Event OnChoice;
protected: protected:
virtual void CreatePopupContents(UI::ViewGroup *parent) override; void CreatePopupContents(UI::ViewGroup *parent) override;
virtual void OnCompleted(DialogResult result) override; void OnCompleted(DialogResult result) override;
UI::EventReturn OnDigitButton(UI::EventParams &e); UI::EventReturn OnDigitButton(UI::EventParams &e);
UI::EventReturn OnBackspace(UI::EventParams &e); UI::EventReturn OnBackspace(UI::EventParams &e);
@ -128,8 +141,9 @@ private:
class JitCompareScreen : public UIDialogScreenWithBackground { class JitCompareScreen : public UIDialogScreenWithBackground {
public: public:
JitCompareScreen() : currentBlock_(-1) {} void CreateViews() override;
virtual void CreateViews() override;
const char *tag() const override { return "JitCompare"; }
private: private:
void UpdateDisasm(); void UpdateDisasm();
@ -146,7 +160,7 @@ private:
UI::EventReturn OnAddressChange(UI::EventParams &e); UI::EventReturn OnAddressChange(UI::EventParams &e);
UI::EventReturn OnShowStats(UI::EventParams &e); UI::EventReturn OnShowStats(UI::EventParams &e);
int currentBlock_; int currentBlock_ = -1;
UI::TextView *blockName_; UI::TextView *blockName_;
UI::TextEdit *blockAddr_; UI::TextEdit *blockAddr_;
@ -158,9 +172,10 @@ private:
class ShaderListScreen : public UIDialogScreenWithBackground { class ShaderListScreen : public UIDialogScreenWithBackground {
public: public:
ShaderListScreen() {}
void CreateViews() override; void CreateViews() override;
const char *tag() const override { return "ShaderList"; }
private: private:
int ListShaders(DebugShaderType shaderType, UI::LinearLayout *view); int ListShaders(DebugShaderType shaderType, UI::LinearLayout *view);
@ -175,6 +190,9 @@ public:
: id_(id), type_(type) {} : id_(id), type_(type) {}
void CreateViews() override; void CreateViews() override;
const char *tag() const override { return "ShaderView"; }
private: private:
std::string id_; std::string id_;
DebugShaderType type_; DebugShaderType type_;
@ -188,6 +206,8 @@ public:
void CreateViews() override; void CreateViews() override;
void update() override; void update() override;
const char *tag() const override { return "FrameDumpTest"; }
private: private:
UI::EventReturn OnLoadDump(UI::EventParams &e); UI::EventReturn OnLoadDump(UI::EventParams &e);

View file

@ -31,7 +31,7 @@ public:
virtual void dialogFinished(const Screen *dialog, DialogResult result) override; virtual void dialogFinished(const Screen *dialog, DialogResult result) override;
virtual void onFinish(DialogResult reason) override; virtual void onFinish(DialogResult reason) override;
virtual void resized() override; virtual void resized() override;
std::string tag() const override { return "display layout screen"; } const char *tag() const override { return "DisplayLayout"; }
protected: protected:
virtual UI::EventReturn OnCenter(UI::EventParams &e); virtual UI::EventReturn OnCenter(UI::EventParams &e);

View file

@ -955,7 +955,7 @@ void EmuScreen::CreateViews() {
UI::EventReturn EmuScreen::OnDevTools(UI::EventParams &params) { UI::EventReturn EmuScreen::OnDevTools(UI::EventParams &params) {
auto dev = GetI18NCategory("Developer"); auto dev = GetI18NCategory("Developer");
DevMenu *devMenu = new DevMenu(dev); DevMenuScreen *devMenu = new DevMenuScreen(dev);
if (params.v) if (params.v)
devMenu->SetPopupOrigin(params.v); devMenu->SetPopupOrigin(params.v);
screenManager()->push(devMenu); screenManager()->push(devMenu);

View file

@ -40,6 +40,8 @@ public:
EmuScreen(const Path &filename); EmuScreen(const Path &filename);
~EmuScreen(); ~EmuScreen();
const char *tag() const override { return "Emu"; }
void update() override; void update() override;
void render() override; void render() override;
void preRender() override; void preRender() override;

View file

@ -17,6 +17,8 @@ public:
void CreateViews() override; void CreateViews() override;
void render() override; void render() override;
const char *tag() const override { return "GPUDriverTest"; }
private: private:
void DiscardTest(); void DiscardTest();
void ShaderTest(); void ShaderTest();

View file

@ -443,6 +443,7 @@ UI::EventReturn GameScreen::OnRemoveFromRecent(UI::EventParams &e) {
class SetBackgroundPopupScreen : public PopupScreen { class SetBackgroundPopupScreen : public PopupScreen {
public: public:
SetBackgroundPopupScreen(const std::string &title, const Path &gamePath); SetBackgroundPopupScreen(const std::string &title, const Path &gamePath);
const char *tag() const override { return "SetBackgroundPopup"; }
protected: protected:
bool FillVertical() const override { return false; } bool FillVertical() const override { return false; }

View file

@ -38,7 +38,7 @@ public:
void render() override; void render() override;
std::string tag() const override { return "game"; } const char *tag() const override { return "Game"; }
protected: protected:
void CreateViews() override; void CreateViews() override;

View file

@ -32,7 +32,7 @@ public:
void update() override; void update() override;
void onFinish(DialogResult result) override; void onFinish(DialogResult result) override;
std::string tag() const override { return "settings"; } const char *tag() const override { return "GameSettings"; }
protected: protected:
void sendMessage(const char *message, const char *value) override; void sendMessage(const char *message, const char *value) override;
@ -157,10 +157,11 @@ private:
class DeveloperToolsScreen : public UIDialogScreenWithBackground { class DeveloperToolsScreen : public UIDialogScreenWithBackground {
public: public:
DeveloperToolsScreen() {}
void update() override; void update() override;
void onFinish(DialogResult result) override; void onFinish(DialogResult result) override;
const char *tag() const override { return "DeveloperTools"; }
protected: protected:
void CreateViews() override; void CreateViews() override;
@ -205,6 +206,8 @@ public:
void CreatePopupContents(UI::ViewGroup *parent) override; void CreatePopupContents(UI::ViewGroup *parent) override;
const char *tag() const override { return "HostnameSelect"; }
protected: protected:
void OnCompleted(DialogResult result) override; void OnCompleted(DialogResult result) override;
bool CanComplete(DialogResult result) override; bool CanComplete(DialogResult result) override;
@ -247,4 +250,6 @@ private:
class GestureMappingScreen : public UIDialogScreenWithBackground { class GestureMappingScreen : public UIDialogScreenWithBackground {
public: public:
void CreateViews() override; void CreateViews() override;
const char *tag() const override { return "GestureMapping"; }
}; };

View file

@ -30,6 +30,8 @@ public:
virtual void update() override; virtual void update() override;
virtual bool key(const KeyInput &key) override; virtual bool key(const KeyInput &key) override;
const char *tag() const { return "install_zip"; }
protected: protected:
virtual void CreateViews() override; virtual void CreateViews() override;

View file

@ -102,6 +102,8 @@ public:
bool isTopLevel() const override { return true; } bool isTopLevel() const override { return true; }
const char *tag() const override { return "Main"; }
// Horrible hack to show the demos & homebrew tab after having installed a game from a zip file. // Horrible hack to show the demos & homebrew tab after having installed a game from a zip file.
static bool showHomebrewTab; static bool showHomebrewTab;
@ -153,7 +155,7 @@ protected:
class UmdReplaceScreen : public UIDialogScreenWithBackground { class UmdReplaceScreen : public UIDialogScreenWithBackground {
public: public:
UmdReplaceScreen() {} const char *tag() const override { return "UmdReplace"; }
protected: protected:
void CreateViews() override; void CreateViews() override;
@ -174,6 +176,8 @@ public:
void CreatePopupContents(UI::ViewGroup *parent) override; void CreatePopupContents(UI::ViewGroup *parent) override;
UI::Event OnRecentChanged; UI::Event OnRecentChanged;
const char *tag() const override { return "GridSettings"; }
private: private:
UI::EventReturn GridPlusClick(UI::EventParams &e); UI::EventReturn GridPlusClick(UI::EventParams &e);
UI::EventReturn GridMinusClick(UI::EventParams &e); UI::EventReturn GridMinusClick(UI::EventParams &e);

View file

@ -36,7 +36,7 @@ public:
MemStickScreen(bool initialSetup); MemStickScreen(bool initialSetup);
~MemStickScreen() {} ~MemStickScreen() {}
std::string tag() const override { return "game"; } const char *tag() const override { return "memstick"; }
enum Choice { enum Choice {
CHOICE_BROWSE_FOLDER, CHOICE_BROWSE_FOLDER,
@ -112,6 +112,9 @@ class ConfirmMemstickMoveScreen : public UIDialogScreenWithBackground {
public: public:
ConfirmMemstickMoveScreen(Path newMemstickFolder, bool initialSetup); ConfirmMemstickMoveScreen(Path newMemstickFolder, bool initialSetup);
~ConfirmMemstickMoveScreen(); ~ConfirmMemstickMoveScreen();
const char *tag() const override { return "ConfirmMemstickMove"; }
protected: protected:
void update() override; void update() override;
void CreateViews() override; void CreateViews() override;

View file

@ -82,6 +82,8 @@ public:
void TriggerFinish(DialogResult result) override; void TriggerFinish(DialogResult result) override;
const char *tag() const override { return "Prompt"; }
private: private:
UI::EventReturn OnYes(UI::EventParams &e); UI::EventReturn OnYes(UI::EventParams &e);
UI::EventReturn OnNo(UI::EventParams &e); UI::EventReturn OnNo(UI::EventParams &e);
@ -96,6 +98,8 @@ class NewLanguageScreen : public ListPopupScreen {
public: public:
NewLanguageScreen(const std::string &title); NewLanguageScreen(const std::string &title);
const char *tag() const override { return "NewLanguage"; }
private: private:
void OnCompleted(DialogResult result) override; void OnCompleted(DialogResult result) override;
bool ShowButtons() const override { return true; } bool ShowButtons() const override { return true; }
@ -110,6 +114,8 @@ public:
void CreateViews() override; void CreateViews() override;
const char *tag() const override { return "PostProc"; }
private: private:
void OnCompleted(DialogResult result) override; void OnCompleted(DialogResult result) override;
bool ShowButtons() const override { return true; } bool ShowButtons() const override { return true; }
@ -123,6 +129,8 @@ public:
void CreateViews() override; void CreateViews() override;
const char *tag() const override { return "TextureShader"; }
private: private:
void OnCompleted(DialogResult result) override; void OnCompleted(DialogResult result) override;
bool ShowButtons() const override { return true; } bool ShowButtons() const override { return true; }
@ -146,6 +154,8 @@ public:
void sendMessage(const char *message, const char *value) override; void sendMessage(const char *message, const char *value) override;
void CreateViews() override {} void CreateViews() override {}
const char *tag() const override { return "Logo"; }
private: private:
void Next(); void Next();
int frames_ = 0; int frames_ = 0;
@ -162,6 +172,8 @@ public:
void CreateViews() override; void CreateViews() override;
const char *tag() const override { return "Credits"; }
private: private:
UI::EventReturn OnOK(UI::EventParams &e); UI::EventReturn OnOK(UI::EventParams &e);

View file

@ -172,9 +172,7 @@ public:
return slot_; return slot_;
} }
std::string tag() const override { const char *tag() const override { return "screenshot_view"; }
return "screenshot";
}
protected: protected:
bool FillVertical() const override { return false; } bool FillVertical() const override { return false; }

View file

@ -33,6 +33,8 @@ public:
virtual void dialogFinished(const Screen *dialog, DialogResult dr) override; virtual void dialogFinished(const Screen *dialog, DialogResult dr) override;
const char *tag() const override { return "GamePause"; }
protected: protected:
virtual void CreateViews() override; virtual void CreateViews() override;
virtual void update() override; virtual void update() override;

View file

@ -29,6 +29,8 @@ class RemoteISOScreen : public UIScreenWithBackground {
public: public:
RemoteISOScreen(); RemoteISOScreen();
const char *tag() const override { return "RemoteISO"; }
protected: protected:
void update() override; void update() override;
void CreateViews() override; void CreateViews() override;
@ -57,6 +59,8 @@ public:
RemoteISOConnectScreen(); RemoteISOConnectScreen();
~RemoteISOConnectScreen() override; ~RemoteISOConnectScreen() override;
const char *tag() const override { return "RemoteISOConnect"; }
protected: protected:
void update() override; void update() override;
void CreateViews() override; void CreateViews() override;
@ -83,6 +87,8 @@ class RemoteISOBrowseScreen : public MainScreen {
public: public:
RemoteISOBrowseScreen(const std::string &url, const std::vector<Path> &games); RemoteISOBrowseScreen(const std::string &url, const std::vector<Path> &games);
const char *tag() const override { return "RemoteISOBrowse"; }
protected: protected:
void CreateViews() override; void CreateViews() override;
@ -94,6 +100,8 @@ class RemoteISOSettingsScreen : public UIDialogScreenWithBackground {
public: public:
RemoteISOSettingsScreen(); RemoteISOSettingsScreen();
const char *tag() const override { return "RemoteISOSettings"; }
UI::EventReturn OnClickRemoteISOSubdir(UI::EventParams &e); UI::EventReturn OnClickRemoteISOSubdir(UI::EventParams &e);
UI::EventReturn OnClickRemoteServer(UI::EventParams &e); UI::EventReturn OnClickRemoteServer(UI::EventParams &e);
protected: protected:

View file

@ -37,6 +37,8 @@ class ReportScreen : public UIDialogScreenWithGameBackground {
public: public:
ReportScreen(const Path &gamePath); ReportScreen(const Path &gamePath);
const char *tag() const override { return "Report"; }
protected: protected:
void postRender() override; void postRender() override;
void update() override; void update() override;
@ -75,6 +77,8 @@ class ReportFinishScreen : public UIDialogScreenWithGameBackground {
public: public:
ReportFinishScreen(const Path &gamePath, ReportingOverallScore score); ReportFinishScreen(const Path &gamePath, ReportingOverallScore score);
const char *tag() const override { return "ReportFinish"; }
protected: protected:
void update() override; void update() override;
void CreateViews() override; void CreateViews() override;

View file

@ -78,8 +78,9 @@ static std::string TrimString(const std::string &str) {
class SavedataPopupScreen : public PopupScreen { class SavedataPopupScreen : public PopupScreen {
public: public:
SavedataPopupScreen(std::string savePath, std::string title) : PopupScreen(TrimString(title)), savePath_(savePath) { SavedataPopupScreen(std::string savePath, std::string title) : PopupScreen(TrimString(title)), savePath_(savePath) { }
}
const char *tag() const override { return "SavedataPopup"; }
void CreatePopupContents(UI::ViewGroup *parent) override { void CreatePopupContents(UI::ViewGroup *parent) override {
using namespace UI; using namespace UI;

View file

@ -74,6 +74,8 @@ public:
void dialogFinished(const Screen *dialog, DialogResult result) override; void dialogFinished(const Screen *dialog, DialogResult result) override;
void sendMessage(const char *message, const char *value) override; void sendMessage(const char *message, const char *value) override;
const char *tag() const override { return "Savedata"; }
protected: protected:
UI::EventReturn OnSavedataButtonClick(UI::EventParams &e); UI::EventReturn OnSavedataButtonClick(UI::EventParams &e);
UI::EventReturn OnSortClick(UI::EventParams &e); UI::EventReturn OnSortClick(UI::EventParams &e);

View file

@ -67,7 +67,7 @@ public:
~StoreScreen(); ~StoreScreen();
void update() override; void update() override;
std::string tag() const override { return "store"; } const char *tag() const override { return "Store"; }
protected: protected:
void CreateViews() override; void CreateViews() override;

View file

@ -27,6 +27,8 @@ public:
void CreateViews() override; void CreateViews() override;
bool axis(const AxisInput &axis) override; bool axis(const AxisInput &axis) override;
const char *tag() const override { return "TiltAnalogSettings"; }
private: private:
UI::EventReturn OnCalibrate(UI::EventParams &e); UI::EventReturn OnCalibrate(UI::EventParams &e);
float currentTiltX_ = 0.0f; float currentTiltX_ = 0.0f;

View file

@ -33,6 +33,8 @@ public:
virtual void update() override; virtual void update() override;
virtual void resized() override; virtual void resized() override;
const char *tag() const override { return "TouchControlLayout"; }
protected: protected:
virtual UI::EventReturn OnReset(UI::EventParams &e); virtual UI::EventReturn OnReset(UI::EventParams &e);
virtual UI::EventReturn OnVisibility(UI::EventParams &e); virtual UI::EventReturn OnVisibility(UI::EventParams &e);

View file

@ -36,6 +36,8 @@ public:
void CreateViews() override; void CreateViews() override;
void onFinish(DialogResult result) override; void onFinish(DialogResult result) override;
const char *tag() const override { return "TouchControlVisibility"; }
protected: protected:
UI::EventReturn OnToggleAll(UI::EventParams &e); UI::EventReturn OnToggleAll(UI::EventParams &e);
@ -47,4 +49,6 @@ private:
class RightAnalogMappingScreen : public UIDialogScreenWithBackground { class RightAnalogMappingScreen : public UIDialogScreenWithBackground {
public: public:
void CreateViews() override; void CreateViews() override;
const char *tag() const override { return "RightAnalogMapping"; }
}; };