diff options
author | Aleks Kissinger <aleks0@gmail.com> | 2017-12-22 16:19:28 +0000 |
---|---|---|
committer | Aleks Kissinger <aleks0@gmail.com> | 2017-12-22 16:19:28 +0000 |
commit | fcc0fc080370c0c8e97a0c07043b83240d973cab (patch) | |
tree | 21493478f225955a75c9f7aa207db3a86a9db2cd /tikzit/src/data/tikzparser.y | |
parent | d8db367f6a4e49776834c82b092700dbda56cecc (diff) |
graphs no longer allocate edges and nodes (but they do still own them)
Diffstat (limited to 'tikzit/src/data/tikzparser.y')
-rw-r--r-- | tikzit/src/data/tikzparser.y | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/tikzit/src/data/tikzparser.y b/tikzit/src/data/tikzparser.y index eaf09eb..420b8a0 100644 --- a/tikzit/src/data/tikzparser.y +++ b/tikzit/src/data/tikzparser.y @@ -171,7 +171,8 @@ val: PROPSTRING { $$ = $1; } | DELIMITEDSTRING { $$ = $1; }; nodename: "(" REFSTRING ")" { $$ = $2; }; node: "\\node" optproperties nodename "at" COORD DELIMITEDSTRING ";" { - Node *node = assembler->graph()->addNode(); + Node *node = new Node(); + if ($2) { node->setData($2); } @@ -184,6 +185,7 @@ node: "\\node" optproperties nodename "at" COORD DELIMITEDSTRING ";" node->setPoint(*$5); delete $5; + assembler->graph()->addNode(node); assembler->addNodeToMap(node); }; @@ -220,7 +222,7 @@ edge: "\\draw" optproperties noderef "to" optedgenode optnoderef ";" t = s; } - Edge *edge = assembler->graph()->addEdge(s, t); + Edge *edge = new Edge(s, t); if ($2) { edge->setData($2); edge->setAttributesFromData(); @@ -241,6 +243,8 @@ edge: "\\draw" optproperties noderef "to" optedgenode optnoderef ";" } else { edge->setTargetAnchor(edge->sourceAnchor()); } + + assembler->graph()->addEdge(edge); }; ignoreprop: val | val "=" val; |