5 #include <SimoxUtility/json/json.hpp>
53 void clearLayerElements();
60 void updateLayerElements(
const std::vector<viz::CoinLayerElement>& elements);
63 QTreeWidgetItem* insertLayerElementItem(
int index,
const std::string& name,
const viz::data::ElementPtr& element);
65 void updateLayerElementItem(QTreeWidgetItem* item,
const viz::data::ElementPtr& element);
68 void updateLayerElementProperties(QTreeWidgetItem* item,
const viz::data::ElementPtr& element);
72 std::string getTypeName(
const viz::data::ElementPtr& element)
const;
75 nlohmann::json serializeElement(
const viz::data::ElementPtr& element)
const;
85 void updateJsonChildren(QTreeWidgetItem* parent,
const nlohmann::json& json,
bool recursive =
false);
88 QTreeWidgetItem* addJsonChild(QTreeWidgetItem* parent,
const std::string& key);
94 void updateJsonItem(QTreeWidgetItem* item,
const std::string& key,
const nlohmann::json&
value,
95 const nlohmann::json& parentMeta,
96 bool recursive =
false);
98 void updateJsonItemValue(QTreeWidgetItem* item,
const std::string& key,
const nlohmann::json&
value,
99 const nlohmann::json& parentMeta);
102 QVariant getValuePreview(
const nlohmann::json& json)
const;
103 QWidget* getValueWidget(QTreeWidgetItem* item,
const nlohmann::json& json)
const;
104 void updateValueWidget(
const nlohmann::json& json, QWidget* widget)
const;
106 static bool isMetaKey(
const std::string&);
109 void addShowMoreItem();
114 QTreeWidget* widget =
nullptr;
116 QVector<QMetaObject::Connection> widgetConnections;
120 QTreeWidgetItem* showMoreItem =
nullptr;
121 int maxElementCountDefault = 25;
122 int maxElementCount = maxElementCountDefault;