private TreeNode CreateOrUpdateColumnTreeNode(TreeNode parentNode, DbTable table, DbColumn column, bool active, bool sticky) { bool stickyButNotActive = active == false && sticky; string relationships = column.firstForeignKeyLabel; /* * string relationships = ""; * foreach (Relationship r in A.db.tables[table.name], column.name)) * relationships = T.AppendTo(relationships, r.parentTable.name + "." + r.parentColumn.name, " "); */ if (relationships != "") { relationships = "->" + relationships + ""; } string key = table.name + "!" + column.name; ObjectsTreeNode columnNode = null; if (nodesByObjectName.ContainsKey(key)) { columnNode = nodesByObjectName[key]; } else { columnNode = new ObjectsTreeNode(column.name); nodesByObjectName.Add(key, columnNode); parentNode.Nodes.Add(columnNode); } columnNode.ToolTipText = column.name + " - " + column.definition + (column.allowNulls ? " null" : "") + (column.primaryKey ? " *" : "") + column.columnInfo; columnNode.rightStuff = relationships; columnNode.ImageIndex = UI.GetTreeImageIndexForObject(column); if (active) { columnNode.ForeColor = UI.stickyForeColor; // stickyButNotActive ? UI.passiveRedColor : UI.activeRed; } return(columnNode); }
private TreeNode CreateOrUpdateTableTreeNode(DbTable table, bool active, bool sticky) { ObjectsTreeNode node = null; if (nodesByObjectName.ContainsKey(table.name)) { node = nodesByObjectName[table.name]; } else { node = new ObjectsTreeNode(table.name); nodesByObjectName.Add(table.name, node); Nodes.Add(node); } node.Tag = ""; if (active) { node.ForeColor = UI.stickyForeColor; } node.ImageIndex = UI.GetTreeImageIndexForObject(table); return(node); }
void OnAfterCollapse(object sender, TreeViewEventArgs e) { ObjectsTreeNode node = e.Node as ObjectsTreeNode; SaveNodeExpandSetting(node.Text, false); }
void OnAfterExpand(object sender, TreeViewEventArgs e) { ObjectsTreeNode node = e.Node as ObjectsTreeNode; SaveNodeExpandSetting(node.Text, true); }