mirror of
https://github.com/WerWolv/ImHex.git
synced 2026-04-02 05:27:41 -05:00
sys: Merge splash screen and ImHex into one application
This fixes so many issues the previous implementation had, especially on Unix
This commit is contained in:
@@ -18,8 +18,7 @@
|
||||
|
||||
namespace hex {
|
||||
|
||||
ViewHexEditor::ViewHexEditor(std::vector<lang::PatternData*> &patternData)
|
||||
: View("hex.view.hexeditor.name"_lang), m_patternData(patternData) {
|
||||
ViewHexEditor::ViewHexEditor() : View("hex.view.hexeditor.name"_lang) {
|
||||
|
||||
this->m_searchStringBuffer.resize(0xFFF, 0x00);
|
||||
this->m_searchHexBuffer.resize(0xFFF, 0x00);
|
||||
@@ -162,7 +161,7 @@ namespace hex {
|
||||
EventManager::subscribe<EventPatternChanged>(this, [this]() {
|
||||
this->m_highlightedBytes.clear();
|
||||
|
||||
for (const auto &pattern : this->m_patternData)
|
||||
for (const auto &pattern : SharedData::patternData)
|
||||
this->m_highlightedBytes.merge(pattern->getHighlightedAddresses());
|
||||
});
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ namespace hex {
|
||||
}
|
||||
|
||||
|
||||
ViewPattern::ViewPattern(std::vector<lang::PatternData*> &patternData) : View("hex.view.pattern.name"), m_patternData(patternData) {
|
||||
ViewPattern::ViewPattern() : View("hex.view.pattern.name") {
|
||||
this->m_patternLanguageRuntime = new lang::PatternLanguage();
|
||||
|
||||
this->m_textEditor.SetLanguageDefinition(PatternLanguage());
|
||||
@@ -345,10 +345,10 @@ namespace hex {
|
||||
}
|
||||
|
||||
void ViewPattern::clearPatternData() {
|
||||
for (auto &data : this->m_patternData)
|
||||
for (auto &data : SharedData::patternData)
|
||||
delete data;
|
||||
|
||||
this->m_patternData.clear();
|
||||
SharedData::patternData.clear();
|
||||
lang::PatternData::resetPalette();
|
||||
}
|
||||
|
||||
@@ -371,7 +371,7 @@ namespace hex {
|
||||
this->m_console = this->m_patternLanguageRuntime->getConsoleLog();
|
||||
|
||||
if (result.has_value()) {
|
||||
this->m_patternData = std::move(result.value());
|
||||
SharedData::patternData = std::move(result.value());
|
||||
View::doLater([]{
|
||||
EventManager::post<EventPatternChanged>();
|
||||
});
|
||||
|
||||
@@ -5,8 +5,7 @@
|
||||
|
||||
namespace hex {
|
||||
|
||||
ViewPatternData::ViewPatternData(std::vector<lang::PatternData*> &patternData)
|
||||
: View("hex.view.pattern_data.name"), m_patternData(patternData) {
|
||||
ViewPatternData::ViewPatternData() : View("hex.view.pattern_data.name") {
|
||||
|
||||
EventManager::subscribe<EventPatternChanged>(this, [this]() {
|
||||
this->m_sortedPatternData.clear();
|
||||
@@ -53,7 +52,7 @@ namespace hex {
|
||||
auto provider = SharedData::currentProvider;
|
||||
if (provider != nullptr && provider->isReadable()) {
|
||||
|
||||
if (beginPatternDataTable(provider, this->m_patternData, this->m_sortedPatternData)) {
|
||||
if (beginPatternDataTable(provider, SharedData::patternData, this->m_sortedPatternData)) {
|
||||
ImGui::TableHeadersRow();
|
||||
if (this->m_sortedPatternData.size() > 0) {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user