From de2458f72da06e26ee6620107db9dcdd8e71a16a Mon Sep 17 00:00:00 2001 From: WerWolv Date: Sun, 31 Jul 2022 15:10:59 +0200 Subject: [PATCH] patterns: Added support for the new [[sealed]] attribute --- lib/external/pattern_language | 2 +- plugins/builtin/source/pattern_drawer.cpp | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/external/pattern_language b/lib/external/pattern_language index 1b0de5e85..bdba32552 160000 --- a/lib/external/pattern_language +++ b/lib/external/pattern_language @@ -1 +1 @@ -Subproject commit 1b0de5e85bd919c2b59f2eabce3ac91f629cebab +Subproject commit bdba32552bbfbd7b06b00d1f788385d66c822e9f diff --git a/plugins/builtin/source/pattern_drawer.cpp b/plugins/builtin/source/pattern_drawer.cpp index bcf751942..d28294723 100644 --- a/plugins/builtin/source/pattern_drawer.cpp +++ b/plugins/builtin/source/pattern_drawer.cpp @@ -361,7 +361,12 @@ namespace hex { } bool PatternDrawer::createTreeNode(const pl::Pattern& pattern) const { - return ImGui::TreeNodeEx(pattern.getDisplayName().c_str(), ImGuiTreeNodeFlags_SpanFullWidth); + if (pattern.isSealed()) { + ImGui::Selectable(pattern.getDisplayName().c_str(), false, ImGuiSelectableFlags_SpanAllColumns | ImGuiSelectableFlags_AllowItemOverlap); + return false; + } + else + return ImGui::TreeNodeEx(pattern.getDisplayName().c_str(), ImGuiTreeNodeFlags_SpanFullWidth); } void PatternDrawer::drawTypenameColumn(const pl::Pattern& pattern, const std::string& pattern_name) const {