protected override void OnAfterCollapse(TreeViewEventArgs e) { OptionFolderNode node = e.Node as OptionFolderNode; if (node != null) { InvalidateNodeIcon(node); node.WasExpanded = false; return; } base.OnAfterCollapse(e); }
protected override void OnAfterExpand(TreeViewEventArgs e) { OptionFolderNode node = e.Node as OptionFolderNode; if (node != null) { node.SelectedImageIndex = node.ImageIndex = OpenFolderIndex; InvalidateNodeIcon(node); node.WasExpanded = true; return; } base.OnAfterExpand(e); }
protected override void OnLoad(EventArgs e) { foreach (var node in _optionsTree.Nodes) { OptionFolderNode folder = node as OptionFolderNode; if (folder != null && folder.WasExpanded) { // this control gets closed and re-opened when the user closs // the options dialog and re-opens it. We remember which nodes // were open and re-expand them so that they are unchanged. folder.Expand(); } } VsShellUtilities.ApplyTreeViewThemeStyles(_optionsTree); base.OnLoad(e); }
internal PythonFormattingOptionsControl(IServiceProvider serviceProvider, params OptionCategory[] options) : this(serviceProvider) { _optionsTree.BeginUpdate(); foreach (var cat in options) { var curCat = new OptionFolderNode(cat.Description); _optionsTree.Nodes.Add(curCat); foreach (var option in cat.Options) { var optNode = option.CreateNode(); optNode.Tag = option; curCat.Nodes.Add(optNode); optNode.Connected(); _nodes[option.Key] = optNode; } } _optionsTree.EndUpdate(); }