diff options
Diffstat (limited to 'lib/nes/app/ui/screen-error.hh')
| -rw-r--r-- | lib/nes/app/ui/screen-error.hh | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/nes/app/ui/screen-error.hh b/lib/nes/app/ui/screen-error.hh new file mode 100644 index 0000000..ec877e1 --- /dev/null +++ b/lib/nes/app/ui/screen-error.hh @@ -0,0 +1,27 @@ +#pragma once + +#include "nes/app/ui/screen.hh" + +namespace nes::app +{ + class input_device_keyboard; + + /// An error popup. + class screen_error final : public screen + { + input_device_keyboard& keyboard_; + std::string_view message_; + status error_{ status::success }; + + public: + explicit screen_error(input_device_keyboard&); + + auto get_message() const -> std::string_view { return message_; } + auto get_error() const -> status { return error_; } + auto set_message(std::string_view const v) { message_ = v; } + auto set_error(status const v) { error_ = v; } + + auto render(renderer&) -> void override; + auto process_events() -> action override; + }; +} // namespace nes::app
\ No newline at end of file |
