#pragma once #include "HexEditor.h" #include #include #include #include #include #include class HexEditor; class GStatusBar; class HexEditorWidget final : public GWidget { C_OBJECT(HexEditorWidget) public: virtual ~HexEditorWidget() override; void open_file(const String& path); bool request_close(); private: HexEditorWidget(); void set_path(const FileSystemPath& file); void update_title(); RefPtr m_editor; String m_path; String m_name; String m_extension; RefPtr m_new_action; RefPtr m_open_action; RefPtr m_save_action; RefPtr m_save_as_action; RefPtr m_goto_decimal_offset_action; RefPtr m_goto_hex_offset_action; RefPtr m_statusbar; bool m_document_dirty { false }; };