Exemple #1
0
 public TreeNode(core.Key key, core.Table tableRef)
 {
     this.TableKey = key;
     this.TableRef = tableRef;
     this.Name     = key.ShortName;
     children      = new LinkedList <TreeNode>();
 }
Exemple #2
0
        private void recursiveModel(Project project, NormalTable normal, core.Table currentTable, core.Key parentKey, string name, ICollection <TreeNode> children)
        {
            core.Key tableKey;

            if (parentKey == null)
            {
                tableKey = new core.Key(name);
            }
            else
            {
                tableKey = new core.Key(name, parentKey);
            }

            TreeNode node = new TreeNode(tableKey, currentTable);

            children.Add(node);

            if (currentTable.HasReference(name))
            {
                string     refName  = currentTable.GetReference(name);
                core.Table refTable = project.GetTable(refName);

                foreach ((string namesub, double weight) in refTable)
                {
                    recursiveModel(project, normal, refTable, tableKey, namesub, node.Children());
                }
            }
        }