yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
oracle_validation_panel.h
Go to the documentation of this file.
1#ifndef YAZE_APP_EDITOR_ORACLE_PANELS_ORACLE_VALIDATION_PANEL_H_
2#define YAZE_APP_EDITOR_ORACLE_PANELS_ORACLE_VALIDATION_PANEL_H_
3
4#include <future>
5#include <optional>
6#include <string>
7
10
11namespace yaze {
12class Rom;
13}
14
15namespace yaze::editor {
16
17class OracleValidationPanel : public WindowContent {
18 public:
21 "Tools > Hack Workflows > Validation");
22 }
24
25 std::string GetId() const override;
26 std::string GetDisplayName() const override;
27 std::string GetIcon() const override;
28 std::string GetEditorCategory() const override;
29 std::string GetWorkflowGroup() const override;
30 std::string GetWorkflowLabel() const override;
31 std::string GetWorkflowDescription() const override;
32 bool IsEnabled() const override;
33 std::string GetDisabledTooltip() const override;
35 float GetPreferredWidth() const override;
36
37 void Draw(bool* p_open) override;
38
39 private:
40 static std::string DefaultRomPath();
42 Rom* GetRom() const;
44
51
52 std::string rom_path_ = DefaultRomPath();
53 int min_d6_track_rooms_ = 4;
54 bool write_report_ = false;
55 std::string report_path_;
56 std::string required_collision_rooms_ = "0x25,0x27";
57
58 bool running_ = false;
59 std::future<oracle_validation::OracleRunResult> pending_;
60 std::optional<oracle_validation::OracleRunResult> last_result_;
61 std::string status_message_;
62};
63
64} // namespace yaze::editor
65
66#endif // YAZE_APP_EDITOR_ORACLE_PANELS_ORACLE_VALIDATION_PANEL_H_
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
Definition rom.h:49
void DrawSmokeCards(const oracle_validation::SmokeResult &smoke)
std::optional< oracle_validation::OracleRunResult > last_result_
std::string GetWorkflowDescription() const override
Optional workflow description for menus/command palette.
void DrawRawOutput(const oracle_validation::OracleRunResult &result)
float GetPreferredWidth() const override
Get preferred width for this panel (optional)
std::string GetIcon() const override
Material Design icon for this panel.
static std::string DefaultRomPath()
std::string GetWorkflowGroup() const override
Optional workflow group for hack-centric actions.
WindowLifecycle GetWindowLifecycle() const override
Get the lifecycle category for this window.
std::string GetId() const override
Unique identifier for this panel.
std::string GetWorkflowLabel() const override
Optional workflow label for menus/command palette.
void Draw(bool *p_open) override
Draw the panel content.
std::future< oracle_validation::OracleRunResult > pending_
std::string GetDisplayName() const override
Human-readable name shown in menus and title bars.
bool IsEnabled() const override
Check if this panel is currently enabled.
void LaunchRun(oracle_validation::RunMode mode)
WindowPresentationPolicy GetPresentationPolicy() const override
How this content is hosted and advertised by workspace chrome.
std::string GetDisabledTooltip() const override
Get tooltip text when panel is disabled.
std::string GetEditorCategory() const override
Editor category this panel belongs to.
void DrawPreflightCards(const oracle_validation::PreflightResult &preflight)
Editors are the view controllers for the application.
WindowLifecycle
Defines lifecycle behavior for editor windows.
static WindowPresentationPolicy Diagnostic()
WindowPresentationPolicy WithHost(std::string host_name) const
Returns a copy that names the hosting surface.