Beispiel #1
0
void ScriptNode::update(const std::unordered_set<Datum*>& active)
{
    // Remove any datums that weren't marked as active and trigger
    // changes to anything that was watching them.
    std::list<Datum*> inactive;
    for (const auto& d : datums)
        if (active.find(d.get()) == active.end())
            inactive.push_back(d.get());
    for (auto d : inactive)
        uninstall(d);

    triggerWatchers();
}
Beispiel #2
0
void Graph::clear()
{
    nodes.clear();
    triggerWatchers();
}
Beispiel #3
0
void Graph::uninstall(Node* n)
{
    Root::uninstall(n, &nodes);
    triggerWatchers();
}