MCPcopy Create free account
hub / github.com/NatronGitHub/Natron / restoreUserKnobs

Method restoreUserKnobs

Engine/NodeMain.cpp:303–323  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

301
302
303void
304Node::restoreUserKnobs(const NodeSerialization& serialization)
305{
306 const std::list<GroupKnobSerializationPtr>& userPages = serialization.getUserPages();
307
308 for (std::list<GroupKnobSerializationPtr>::const_iterator it = userPages.begin(); it != userPages.end(); ++it) {
309 KnobIPtr found = getKnobByName( (*it)->getName() );
310 KnobPagePtr page;
311 if (!found) {
312 page = AppManager::createKnob<KnobPage>(_imp->effect.get(), (*it)->getLabel(), 1, false);
313 page->setAsUserKnob(true);
314 page->setName( (*it)->getName() );
315 } else {
316 page = std::dynamic_pointer_cast<KnobPage>(found);
317 }
318 if (page) {
319 _imp->restoreUserKnobsRecursive( (*it)->getChildren(), KnobGroupPtr(), page );
320 }
321 }
322 setPagesOrder( serialization.getPagesOrdered() );
323}
324
325void
326Node::Implementation::restoreUserKnobsRecursive(const std::list<KnobSerializationBasePtr>& knobs,

Callers

nothing calls this directly

Calls 10

getNameMethod · 0.80
setAsUserKnobMethod · 0.80
getUserPagesMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
getMethod · 0.45
getLabelMethod · 0.45
setNameMethod · 0.45
getChildrenMethod · 0.45

Tested by

no test coverage detected