diff --git a/src/fdt/fdt-generator-qt.cpp b/src/fdt/fdt-generator-qt.cpp index 556d33d..cd3f44d 100644 --- a/src/fdt/fdt-generator-qt.cpp +++ b/src/fdt/fdt-generator-qt.cpp @@ -18,8 +18,8 @@ tree_generator::tree_generator(tree_info &reference, QTreeWidget *target, QStrin m_root->setText(0, name); m_root->setIcon(0, QIcon::fromTheme("folder-open")); - m_root->setData(0, QT_ROLE_FILEPATH, id); - m_root->setData(0, QT_ROLE_NODETYPE, QVariant::fromValue(NodeType::Node)); + m_root->setData(0, ROLE_FILEPATH, id); + m_root->setData(0, ROLE_NODETYPE, QVariant::fromValue(NodeType::Node)); m_root->setExpanded(true); m_root->setSelected(true); } @@ -38,7 +38,7 @@ void tree_generator::begin_node(std::string_view vname) noexcept { if (root->child(i)->text(0) == name) { auto ret = root->child(i); ret->setIcon(0, QIcon::fromTheme("folder-new")); - ret->setData(0, QT_ROLE_NODETYPE, QVariant::fromValue(NodeType::Node)); + ret->setData(0, ROLE_NODETYPE, QVariant::fromValue(NodeType::Node)); return root->child(i); } @@ -48,7 +48,7 @@ void tree_generator::begin_node(std::string_view vname) noexcept { if (child->text(0).isEmpty()) { child->setText(0, name); child->setIcon(0, QIcon::fromTheme("folder-open")); - child->setData(0, QT_ROLE_NODETYPE, QVariant::fromValue(NodeType::Node)); + child->setData(0, ROLE_NODETYPE, QVariant::fromValue(NodeType::Node)); } m_tree_stack.emplace(child); @@ -68,6 +68,6 @@ void tree_generator::insert_property(const fdt::parser::token_types::property &p item->setText(0, QString::fromUtf8(prop.name.data(), prop.name.size())); item->setIcon(0, QIcon::fromTheme("flag-green")); - item->setData(0, QT_ROLE_NODETYPE, QVariant::fromValue(NodeType::Property)); - item->setData(0, QT_ROLE_PROPERTY, QVariant::fromValue(std::move(property))); + item->setData(0, ROLE_NODETYPE, QVariant::fromValue(NodeType::Property)); + item->setData(0, ROLE_PROPERTY, QVariant::fromValue(std::move(property))); } diff --git a/src/fdt/fdt-generator-qt.hpp b/src/fdt/fdt-generator-qt.hpp index a1de33d..c96d750 100644 --- a/src/fdt/fdt-generator-qt.hpp +++ b/src/fdt/fdt-generator-qt.hpp @@ -12,10 +12,6 @@ Q_DECLARE_METATYPE(fdt::qt_wrappers::property) -constexpr auto QT_ROLE_PROPERTY = Qt::UserRole; -constexpr auto QT_ROLE_FILEPATH = Qt::UserRole + 1; -constexpr auto QT_ROLE_NODETYPE = Qt::UserRole + 2; - enum class NodeType { Node, Property @@ -38,6 +34,11 @@ using tree_map = hash_map; namespace fdt::qt_wrappers { +constexpr auto ROLE_PROPERTY = Qt::UserRole; +constexpr auto ROLE_FILEPATH = Qt::UserRole + 1; +constexpr auto ROLE_NODETYPE = Qt::UserRole + 2; +constexpr auto ROLE_DATA_HOLDER = Qt::UserRole + 3; + struct tree_generator { tree_generator(tree_info &reference, QTreeWidget *target, QString &&name, QString &&id); diff --git a/src/fdt/fdt-view.cpp b/src/fdt/fdt-view.cpp index ff898de..bdf2657 100644 --- a/src/fdt/fdt-view.cpp +++ b/src/fdt/fdt-view.cpp @@ -138,7 +138,7 @@ bool fdt::fdt_content_filter(QTreeWidgetItem *node, const std::functionchildCount(); ++i) { const auto child = node->child(i); - switch (child->data(0, QT_ROLE_NODETYPE).value()) { + switch (child->data(0, fdt::qt_wrappers::ROLE_NODETYPE).value()) { case NodeType::Node: nodes.append(child); break; @@ -156,7 +156,7 @@ bool fdt::fdt_content_filter(QTreeWidgetItem *node, const std::functiondata(0, QT_ROLE_PROPERTY).value(); + const auto property = item->data(0, fdt::qt_wrappers::ROLE_PROPERTY).value(); isFound |= match(property.name) || match(present(property)); } @@ -178,7 +178,7 @@ bool fdt::fdt_view_dts(QTreeWidgetItem *item, QString &ret, int depth) { for (auto i = 0; i < item->childCount(); ++i) { const auto child = item->child(i); - switch (child->data(0, QT_ROLE_NODETYPE).value()) { + switch (child->data(0, fdt::qt_wrappers::ROLE_NODETYPE).value()) { case NodeType::Node: nodes.append(child); break; @@ -194,7 +194,7 @@ bool fdt::fdt_view_dts(QTreeWidgetItem *item, QString &ret, int depth) { ret += depth_str + item->data(0, Qt::DisplayRole).toString() + " {\n"; for (auto item : properties) { - const auto property = item->data(0, QT_ROLE_PROPERTY).value(); + const auto property = item->data(0, fdt::qt_wrappers::ROLE_PROPERTY).value(); ret += depth_str + " " + present(property) + "\n"; } diff --git a/src/main-window.cpp b/src/main-window.cpp index e7429c0..343838c 100644 --- a/src/main-window.cpp +++ b/src/main-window.cpp @@ -2,7 +2,6 @@ #include "fdt/fdt-parser-tokens.hpp" #include "fdt/fdt-property-types.hpp" #include "qabstractitemview.h" -#include "qelapsedtimer.h" #include "ui_main-window.h" #include @@ -160,7 +159,7 @@ void MainWindow::update_fdt_path(QTreeWidgetItem *item) { m_fdt = root; - m_ui->statusbar->showMessage("file://" + root->data(0, QT_ROLE_FILEPATH).toString()); + m_ui->statusbar->showMessage("file://" + root->data(0, fdt::qt_wrappers::ROLE_FILEPATH).toString()); m_ui->path->setText("fdt://" + path); } @@ -181,11 +180,11 @@ void MainWindow::update_view() { const auto item = m_ui->treeWidget->selectedItems().first(); - const auto type = item->data(0, QT_ROLE_NODETYPE).value(); + const auto type = item->data(0, fdt::qt_wrappers::ROLE_NODETYPE).value(); m_ui->preview->setCurrentWidget(NodeType::Node == type ? m_ui->text_view_page : m_ui->property_view_page); if (NodeType::Property == type) { - const auto property = item->data(0, QT_ROLE_PROPERTY).value(); + const auto property = item->data(0, fdt::qt_wrappers::ROLE_PROPERTY).value(); m_hexview->setDocument(QHexDocument::fromMemory(property.data)); } @@ -203,10 +202,10 @@ void MainWindow::property_export() { return; const auto item = m_ui->treeWidget->selectedItems().first(); - const auto type = item->data(0, QT_ROLE_NODETYPE).value(); + const auto type = item->data(0, fdt::qt_wrappers::ROLE_NODETYPE).value(); if (NodeType::Property == type) { - const auto property = item->data(0, QT_ROLE_PROPERTY).value(); + const auto property = item->data(0, fdt::qt_wrappers::ROLE_PROPERTY).value(); m_hexview->setDocument(QHexDocument::fromMemory(property.data)); fdt::export_property_file_dialog(this, property.data, property.name);