| 237 | } |
| 238 | |
| 239 | void NodeReorder(QtNodes::FlowScene &scene, AbsBehaviorTree & tree) |
| 240 | { |
| 241 | |
| 242 | for (const auto& abs_node: tree.nodes()) |
| 243 | { |
| 244 | Node* node = abs_node.graphic_node; |
| 245 | if( node == nullptr ) |
| 246 | { |
| 247 | throw std::runtime_error("one or more nodes haven't been created yet"); |
| 248 | } |
| 249 | } |
| 250 | |
| 251 | if( tree.nodesCount() == 0) |
| 252 | { |
| 253 | return; |
| 254 | } |
| 255 | |
| 256 | RecursiveNodeReorder(tree, scene.layout() ); |
| 257 | |
| 258 | for (const auto& abs_node: tree.nodes()) |
| 259 | { |
| 260 | Node* node = abs_node.graphic_node; |
| 261 | scene.setNodePosition( *node, abs_node.pos ); |
| 262 | } |
| 263 | } |
| 264 | |
| 265 | |
| 266 | AbsBehaviorTree BuildTreeFromScene(const QtNodes::FlowScene *scene, |
no test coverage detected