#pragma once #include #include #include #include #include #include #include #include #include #include namespace hex { class ViewPattern : public View { public: ViewPattern(); ~ViewPattern() override; void drawMenu() override; void drawAlwaysVisible() override; void drawContent() override; private: lang::PatternLanguage *m_patternLanguageRuntime; std::vector m_possiblePatternFiles; int m_selectedPatternFile = 0; bool m_runAutomatically = false; bool m_evaluatorRunning = false; TextEditor m_textEditor; std::vector> m_console; void loadPatternFile(std::string_view path); void clearPatternData(); void parsePattern(char *buffer); }; }