private void RestoreExpansion() { foreach (object item in m_expandedItems) { TreeControlAdapter.Expand(item); } }
private void TreeControl_NodeExpandedChanged(object sender, TreeControl.NodeEventArgs e) { var treeView = TreeView.As <FilteredTreeView>(); // early exit if (m_updating || !m_searching || e.Node.Tag == null || treeView == null) { return; } if (m_toExpand != null) { var node = m_toExpand; m_toExpand = null; try { m_updating = true; TreeControlAdapter.Expand(node.Tag); treeView.RestoreExpansion(e.Node, TreeControlAdapter); } finally { m_updating = false; } } else if (e.Node.Expanded && RestoreSubExpansion) { treeView.RestoreExpansion(e.Node, TreeControlAdapter); } }
/// <summary> /// Configures the editor</summary> /// <param name="treeControl">Control to display data</param> /// <param name="treeControlAdapter">Adapter to drive control. Its ITreeView should /// implement IInstancingContext and/or IHierarchicalInsertionContext.</param> /// <remarks>Default is to create a TreeControl and TreeControlAdapter, /// using the global image lists.</remarks> protected virtual void Configure( out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { treeControl = CreateControl(); treeControlAdapter = CreateAdapter(treeControl); }
/// <summary> /// Create and configure TreeControl</summary> /// <param name="treeControl">New TreeControl</param> /// <param name="treeControlAdapter">Adapter for TreeControl</param> protected override void Configure(out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { base.Configure(out treeControl, out treeControlAdapter); m_control = new UserControl(); m_control.Dock = DockStyle.Fill; m_control.SuspendLayout(); m_control.Name = "Tree View".Localize(); m_control.Text = "Tree View".Localize(); // create tag panel m_TagPanel = new TagLabelListControl(); m_TagPanel.Dock = DockStyle.Top; m_TagPanel.OnTagListUpdated += UpdateFiltering; m_control.Controls.Add(m_TagPanel); m_TagInput = new StringTagSearchInputUI(m_TagPanel); m_control.Controls.Add(m_TagInput); m_control.Controls.Add(TreeControl); m_control.Layout += controls_Layout; m_control.ResumeLayout(); TreeControl.PreviewKeyDown += TreeControl_PreviewKeyDown; TreeControl.NodeExpandedChanging += TreeControl_NodeExpandedChanging; TreeControl.NodeExpandedChanged += TreeControl_NodeExpandedChanged; TreeControl.ItemRendererChanged += (sender, e) => UpdateTreeItemRenderer(); }
/// <summary> /// Configures the editor</summary> /// <param name="treeControl">Control to display data</param> /// <param name="treeControlAdapter">Adapter to drive control. Its ITreeView should /// implement IInstancingContext and/or IHierarchicalInsertionContext.</param> /// <remarks>Default is to create a TreeControl and TreeControlAdapter, /// using the global image lists.</remarks> protected override void Configure( out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { treeControl = new TreeControl(); treeControl.ImageList = ResourceUtil.GetImageList16(); treeControl.StateImageList = ResourceUtil.GetImageList16(); treeControlAdapter = new TreeControlAdapter(treeControl); treeControl.PreviewKeyDown += treeControl_PreviewKeyDown; treeControl.NodeExpandedChanging += treeControl_NodeExpandedChanging; treeControl.NodeExpandedChanged += treeControl_NodeExpandedChanged; m_searchInput = new StringSearchInputUI(); m_searchInput.Updated += UpdateFiltering; m_control = new UserControl(); m_control.Dock = DockStyle.Fill; m_control.SuspendLayout(); m_control.Name = "Tree View".Localize(); m_control.Text = "Tree View".Localize(); m_control.Controls.Add(m_searchInput); m_control.Controls.Add(TreeControl); m_control.Layout += controls_Layout; m_control.ResumeLayout(); }
private void RestoreExpansion() { foreach (string category in m_expandedCollections) { TreeControlAdapter.Expand(category); } }
/// <summary> /// Configures the editor</summary> /// <param name="treeControl">Control to display data</param> /// <param name="treeControlAdapter">Adapter to drive control. Its ITreeView should /// implement IInstancingContext and/or IHierarchicalInsertionContext.</param> /// <remarks>Default is to create a TreeControl and TreeControlAdapter, /// using the global image lists.</remarks> protected override void Configure( out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { treeControl = new TreeControl(); treeControl.ImageList = ResourceUtil.GetImageList16(); treeControl.StateImageList = ResourceUtil.GetImageList16(); treeControlAdapter = new TreeControlAdapter(treeControl); treeControl.PreviewKeyDown += treeControl_PreviewKeyDown; treeControl.NodeExpandedChanging += treeControl_NodeExpandedChanging; treeControl.NodeExpandedChanged += treeControl_NodeExpandedChanged; m_searchInput = new StringSearchInputUI(); m_searchInput.Updated += UpdateFiltering; m_control = new UserControl(); m_control.Dock = DockStyle.Fill; m_control.SuspendLayout(); m_control.Name = "Tree View".Localize(); m_control.Text = "Tree View".Localize(); m_control.Controls.Add(m_searchInput); m_control.Controls.Add(TreeControl); m_control.Layout += controls_Layout; m_control.ResumeLayout(); }
// Load hierarchical data from XML and display it in a TreeListControl void LoadHierarchicalXmlData() { var treeListControl = new TreeListControl(); treeListControl.Dock = DockStyle.Fill; treeListControl.ShowRoot = false; treeListControl.LabelEditMode = TreeControl.LabelEditModes.EditOnF2 | TreeControl.LabelEditModes.EditOnClick; treeListControl.NodeDataEdited += treeListControl_NodeDataEdited; Controls.Add(treeListControl); Assembly assembly = Assembly.GetExecutingAssembly(); string startupPath = Path.GetDirectoryName(new Uri(assembly.GetName().CodeBase).LocalPath); var xmlPath = Path.Combine(startupPath, "CoolSUVs.xml"); var treeView = new TreeView(xmlPath, new DataEditorTheme(treeListControl.Font)); var treeControlAdapter = new TreeControlAdapter(treeListControl); treeControlAdapter.TreeView = treeView; treeListControl.ItemRenderer = new TreeListItemRenderer(treeView); treeListControl.Columns.Add(new TreeListView.Column("MPG", 80)); treeListControl.Columns.Add(new TreeListView.Column("Weight", 80)); treeListControl.Columns.Add(new TreeListView.Column("AWD", 50)); treeListControl.Columns.Add(new TreeListView.Column("Color", 80)); treeListControl.Columns.Add(new TreeListView.Column("MSRP", 80)); treeListControl.ExpandAll(); }
/// <summary> /// Restores subtree's node expansion states, if remembered</summary> /// <param name="treeControlAdapter">TreeControlAdapter that performs node expansion</param> /// <param name="parent">Node whose subtree's expansion state was remembered</param> public void RestoreExpansion(TreeControlAdapter treeControlAdapter, TreeControl.Node parent) { if (parent.Tag != null && m_expandedItems.ContainsKey(parent.Tag)) { foreach (object item in m_expandedItems[parent.Tag]) { treeControlAdapter.Expand(item); } } }
private void RememberExpansion() { m_expandedItems.Clear(); foreach (object item in GetSubtree(TreeView.Root)) { if (TreeControlAdapter.IsExpanded(item)) { m_expandedItems.Add(item); } } }
/// <summary> /// Configures the editor</summary> /// <param name="treeControl">Tree control to display data</param> /// <param name="treeControlAdapter">Tree control adapter to drive control</param> protected override void Configure( out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { treeControl = new TreeControl(TreeControl.Style.CategorizedPalette); treeControl.ImageList = ResourceUtil.GetImageList16(); treeControl.AllowDrop = true; treeControl.SelectionMode = SelectionMode.MultiExtended; treeControlAdapter = new TreeControlAdapter(treeControl); }
private void RememberExpansion() { m_expandedCollections.Clear(); foreach (string category in m_paletteTreeAdapter.GetChildren(m_paletteTreeAdapter)) { if (TreeControlAdapter.IsExpanded(category)) { m_expandedCollections.Add(category); } } }
/// <summary> /// Configures the editor</summary> /// <param name="treeControl">Tree control to display data</param> /// <param name="treeControlAdapter">Tree control adapter to drive control</param> protected override void Configure( out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { treeControl = new TreeControl(TreeControl.Style.CategorizedPalette); treeControl.ImageList = ResourceUtil.GetImageList16(); treeControl.AllowDrop = true; treeControl.SelectionMode = SelectionMode.MultiExtended; treeControlAdapter = new TreeControlAdapter(treeControl); }
/// <summary> /// Create and configure TreeControl</summary> /// <param name="treeControl">New TreeControl</param> /// <param name="treeControlAdapter">Adapter for TreeControl</param> protected override void Configure(out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { base.Configure(out treeControl, out treeControlAdapter); treeControl.ShowRoot = false; // UI node can't really be edited, so hide it treeControl.Text = ("Add packages to the UI." + Environment.NewLine + "Add forms, shaders, textures, and fonts to packages." + Environment.NewLine + "Add sprites or text items to forms or sprites." + Environment.NewLine + "Drag shaders, textures, and fonts onto the reference slots of sprites and text items.").Localize(); treeControl.AllowDrop = true; treeControl.SelectionMode = SelectionMode.MultiExtended; }
private void Collapse() { if (TreeControl.ShowRoot) { TreeControl.Root.Expanded = false; TreeControlAdapter.Refresh(TreeControl.Root.Tag); } else { TreeControl.Root.Children.ForEach(child => child.Expanded = false); TreeView.GetChildren(TreeControl.Root.Tag).ForEach(child => TreeControlAdapter.Refresh(child)); } }
/// <summary> /// Configures the editor</summary> /// <param name="treeControl">Control to display data</param> /// <param name="treeControlAdapter">Adapter to drive control. Its ITreeView should /// implement IInstancingContext and/or IHierarchicalInsertionContext.</param> /// <remarks>Default is to create a TreeControl and TreeControlAdapter, /// using the global image lists.</remarks> protected virtual void Configure( out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { treeControl = new TreeControl { ImageList = ResourceUtil.GetImageList16(), StateImageList = ResourceUtil.GetImageList16() }; treeControlAdapter = new TreeControlAdapter(treeControl); }
/// <summary> /// Configures the editor</summary> /// <param name="treeControl">Control to display data</param> /// <param name="treeControlAdapter">Adapter to drive control. Its ITreeView should /// implement IInstancingContext and/or IHierarchicalInsertionContext.</param> /// <remarks>Default is to create a TreeControl and TreeControlAdapter, /// using the global image lists.</remarks> protected virtual void Configure( out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { treeControl = new TreeControl { ImageList = ResourceUtil.GetImageList16(), StateImageList = ResourceUtil.GetImageList16() }; treeControlAdapter = new TreeControlAdapter(treeControl); }
private void ExpandAllMatches() { Tree <object> tree = new Tree <object>(TreeView.Root); BuildTree(tree); foreach (Tree <object> node in tree.PreOrder) { if (!node.IsLeaf) { TreeControlAdapter.Expand(node.Value); } } }
private void RestoreSelection() { if (m_selectedItems != null) { foreach (object item in m_selectedItems) { var path = item.As <Path <object> >(); if (path != null) { TreeControlAdapter.Show(path, true); } } } }
internal void RestoreExpansion(TreeControl.Node parent, TreeControlAdapter treeAdapter) { if (parent.Tag == null) { return; } List <object> expandedItems; if (m_expandedNodeMap.TryGetValue(parent.Tag, out expandedItems)) { m_expandedNodeMap.Remove(parent.Tag); expandedItems.ForEach(item => treeAdapter.Expand(item)); } }
/// <summary> /// Constructor</summary> /// <param name="settingsService">Settings service</param> /// <param name="dialogOwner">Dialog owner window HWND</param> /// <param name="pathName">Path of settings to display initially, or null</param> public SettingsDialog(SettingsService settingsService, IWin32Window dialogOwner, string pathName) { // // Required for Windows Form Designer support // InitializeComponent(); SplitterRatio = 0.33f; m_settingsService = settingsService; m_dialogOwner = dialogOwner; m_originalState = m_settingsService.UserState; // for cancel m_treeControl = new TreeControl(TreeControl.Style.SimpleTree); m_treeControl.Dock = DockStyle.Fill; m_treeControl.SelectionMode = SelectionMode.One; m_treeControl.ShowRoot = false; m_treeControl.ImageList = ResourceUtil.GetImageList16(); m_treeControl.ExpandAll(); m_treeControl.NodeSelectedChanged += treeControl_NodeSelectedChanged; m_treeControlAdapter = new TreeControlAdapter(m_treeControl); m_treeControlAdapter.TreeView = settingsService.UserSettings; treePanel.Controls.Add(m_treeControl); m_propertyGrid = new Sce.Atf.Controls.PropertyEditing.PropertyGrid(); m_propertyGrid.Dock = DockStyle.Fill; propertiesPanel.Controls.Add(m_propertyGrid); // select an initial node so something is displayed in the PropertyGrid TreeControl.Node firstNode = null; if (pathName != null) { firstNode = m_treeControlAdapter.ExpandPath(m_settingsService.GetSettingsPath(pathName)); } if (firstNode == null) // in case pathName is not null, but ExpandPath returns null { firstNode = m_treeControl.ExpandToFirstLeaf(); } firstNode.Selected = true; ShowProperties(m_settingsService.GetProperties((Tree <object>)firstNode.Tag)); //does auto-setting of column widths defaultsButton.Click += DefaultsButton_Click; }
private void searchInput_Updated(object sender, EventArgs e) { if (TreeControl.Root == null) { return; } if (m_searchInput.IsNullOrEmpty()) { if (m_searching) { // get the tree control to force-reload the tree data m_paletteTreeAdapter.RefreshControl(); RestoreExpansion(); } m_searching = false; return; } else { if (!m_searching) { RememberExpansion(); } m_searching = true; } m_paletteTreeAdapter.RefreshControl(); // expand categories that have matched children foreach (object category in m_paletteTreeAdapter.GetChildren(m_paletteTreeAdapter)) { foreach (object typeName in m_paletteTreeAdapter.GetChildren(category)) { ItemInfo info = new WinFormsItemInfo(); m_paletteTreeAdapter.GetInfo(typeName, info); if (m_searchInput.Matches(info.Label)) { TreeControlAdapter.Expand(category); break; } } } RestoreExpansion(); }
/// <summary> /// Constructor</summary> /// <param name="settingsService">Settings service</param> /// <param name="dialogOwner">Dialog owner window HWND</param> /// <param name="pathName">Path of settings to display initially, or null</param> public SettingsDialog(SettingsService settingsService, IWin32Window dialogOwner, string pathName) { // // Required for Windows Form Designer support // InitializeComponent(); SplitterRatio = 0.33f; m_settingsService = settingsService; m_dialogOwner = dialogOwner; m_originalState = m_settingsService.UserState; // for cancel m_treeControl = new TreeControl(TreeControl.Style.SimpleTree); m_treeControl.Dock = DockStyle.Fill; m_treeControl.SelectionMode = SelectionMode.One; m_treeControl.ShowRoot = false; m_treeControl.ImageList = ResourceUtil.GetImageList16(); m_treeControl.ExpandAll(); m_treeControl.NodeSelectedChanged += treeControl_NodeSelectedChanged; m_treeControlAdapter = new TreeControlAdapter(m_treeControl); m_treeControlAdapter.TreeView = settingsService.UserSettings; treePanel.Controls.Add(m_treeControl); m_propertyGrid = new Sce.Atf.Controls.PropertyEditing.PropertyGrid(); m_propertyGrid.Dock = DockStyle.Fill; propertiesPanel.Controls.Add(m_propertyGrid); // select an initial node so something is displayed in the PropertyGrid TreeControl.Node firstNode = null; if (pathName != null) firstNode = m_treeControlAdapter.ExpandPath(m_settingsService.GetSettingsPath(pathName)); if (firstNode == null) // in case pathName is not null, but ExpandPath returns null firstNode = m_treeControl.ExpandToFirstLeaf(); firstNode.Selected = true; ShowProperties(m_settingsService.GetProperties((Tree<object>)firstNode.Tag)); //does auto-setting of column widths defaultsButton.Click += DefaultsButton_Click; }
/// <summary> /// Create and configure TreeControl</summary> /// <param name="treeControl">New TreeControl</param> /// <param name="treeControlAdapter">Adapter for TreeControl</param> protected override void Configure(out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { base.Configure(out treeControl, out treeControlAdapter); m_searchInput = new StringSearchInputUI(); m_searchInput.Updated += UpdateFiltering; m_control = new UserControl(); m_control.Dock = DockStyle.Fill; m_control.SuspendLayout(); m_control.Name = "Tree View".Localize(); m_control.Text = "Tree View".Localize(); m_control.Controls.Add(m_searchInput); m_control.Controls.Add(TreeControl); m_control.Layout += controls_Layout; m_control.ResumeLayout(); TreeControl.PreviewKeyDown += TreeControl_PreviewKeyDown; TreeControl.NodeExpandedChanging += TreeControl_NodeExpandedChanging; TreeControl.NodeExpandedChanged += TreeControl_NodeExpandedChanged; TreeControl.ItemRendererChanged += (sender, e) => UpdateTreeItemRenderer(); }
/// <summary> /// Performs custom actions after changing a node's Expanded property</summary> /// <param name="sender">Sender</param> /// <param name="e">Event args</param> void treeControl_NodeExpandedChanged(object sender, TreeControl.NodeEventArgs e) { if (!m_searching) { return; } var filteredTreeView = TreeView as FilteredTreeView; if (m_nodeToExpand != null) { TreeControl.Node nodeToExpand = m_nodeToExpand; m_autoExpanding = true; TreeControlAdapter.Expand(m_nodeToExpand.Tag); filteredTreeView.RestoreExpansion(TreeControlAdapter, nodeToExpand); m_nodeToExpand = null; m_autoExpanding = false; } else if (e.Node.Expanded && RestoreSubExpansion) { filteredTreeView.RestoreExpansion(TreeControlAdapter, e.Node); } }
public DomExplorer(IControlHostService controlHostService) { m_controlHostService = controlHostService; m_treeControl = new TreeControl(); m_treeControl.Dock = DockStyle.Fill; m_treeControl.AllowDrop = true; m_treeControl.SelectionMode = SelectionMode.MultiExtended; m_treeControl.ImageList = ResourceUtil.GetImageList16(); m_treeControl.NodeSelectedChanged += treeControl_NodeSelectedChanged; m_treeControlAdapter = new TreeControlAdapter(m_treeControl); m_treeView = new TreeView(); m_propertyGrid = new Sce.Atf.Controls.PropertyEditing.PropertyGrid(); m_propertyGrid.Dock = DockStyle.Fill; m_splitContainer = new SplitContainer(); m_splitContainer.Text = "Dom Explorer"; m_splitContainer.Panel1.Controls.Add(m_treeControl); m_splitContainer.Panel2.Controls.Add(m_propertyGrid); }
/// <summary> /// Configure the ProjectLister</summary> /// <param name="treeControl">TreeControl used by ProjectLister</param> /// <param name="treeControlAdapter">TreeControlAdapter used by ProjectLister</param> protected override void Configure(out Sce.Atf.Controls.TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { base.Configure(out treeControl, out treeControlAdapter); treeControl.AllowDrop = true; }
/// <summary> /// Initializes the MEF component</summary> public void Initialize() { m_treeControl = new TreeControl(); m_treeControl.Dock = DockStyle.Fill; m_treeControl.AllowDrop = true; m_treeControl.SelectionMode = SelectionMode.MultiExtended; m_treeControl.ImageList = ResourceUtil.GetImageList16(); m_treeControl.StateImageList = ResourceUtil.GetImageList16(); m_treeControl.DragOver += treeControl_DragOver; m_treeControl.DragDrop += treeControl_DragDrop; m_treeControl.MouseUp += treeControl_MouseUp; m_treeControlAdapter = new TreeControlAdapter(m_treeControl); m_listView = new ListView(); m_listView.View = View.Details; m_listView.Dock = DockStyle.Fill; m_listView.AllowDrop = true; m_listView.LabelEdit = false; m_listView.MouseUp += thumbnailControl_MouseUp; m_listView.MouseMove += thumbnailControl_MouseMove; m_listView.MouseLeave += thumbnailControl_MouseLeave; m_listView.DragOver += thumbnailControl_DragOver; m_listViewAdapter = new ListViewAdapter(m_listView); m_thumbnailControl = new ThumbnailControl(); m_thumbnailControl.Dock = DockStyle.Fill; m_thumbnailControl.AllowDrop = true; m_thumbnailControl.BackColor = SystemColors.Window; m_thumbnailControl.SelectionChanged += thumbnailControl_SelectionChanged; m_thumbnailControl.MouseMove += thumbnailControl_MouseMove; m_thumbnailControl.MouseUp += thumbnailControl_MouseUp; m_thumbnailControl.MouseLeave += thumbnailControl_MouseLeave; m_thumbnailControl.DragOver += thumbnailControl_DragOver; m_splitContainer = new SplitContainer(); m_splitContainer.Name = "Resources".Localize(); m_splitContainer.Orientation = Orientation.Vertical; m_splitContainer.Panel1.Controls.Add(m_treeControl); m_splitContainer.Panel2.Controls.Add(m_thumbnailControl); m_splitContainer.Panel2.Controls.Add(m_listView); m_splitContainer.SplitterDistance = 10; m_listView.Hide(); Image resourceImage = ResourceUtil.GetImage16(Resources.ResourceImage); // on initialization, register our tree control with the hosting service m_controlHostService.RegisterControl( m_splitContainer, new ControlInfo( "Resources".Localize(), "Lists available resources".Localize(), StandardControlGroup.Left, resourceImage), this); RegisterCommands(m_commandService); RegisterSettings(); }
/// <summary> /// Configure the ProjectLister</summary> /// <param name="treeControl">TreeControl used by ProjectLister</param> /// <param name="treeControlAdapter">TreeControlAdapter used by ProjectLister</param> protected override void Configure(out Sce.Atf.Controls.TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { base.Configure(out treeControl, out treeControlAdapter); treeControl.AllowDrop = true; }
private void Init() { if (s_schemaLoader == null) s_schemaLoader = new SchemaLoader(); m_PropertyGrid = new PropertyGrid(PropertyGridMode.PropertySorting | PropertyGridMode.DisplayDescriptions | PropertyGridMode.HideResetAllButton); m_treeControl = new TreeControl(); m_menu = new MenuStrip(); var fileMenu = new ToolStripMenuItem(); var newMenu = new ToolStripMenuItem(); var openMenu = new ToolStripMenuItem(); var exitMenu = new ToolStripMenuItem(); var splitter = new SplitContainer(); m_menu.SuspendLayout(); splitter.BeginInit(); splitter.Panel1.SuspendLayout(); splitter.Panel2.SuspendLayout(); splitter.SuspendLayout(); SuspendLayout(); // m_menu m_menu.Location = new System.Drawing.Point(0, 0); m_menu.Name = "m_menu"; m_menu.TabIndex = 0; m_menu.Text = "m_menu"; m_menu.Items.Add(fileMenu); // file fileMenu.Name = "fileToolStripMenuItem"; fileMenu.Size = new System.Drawing.Size(37, 20); fileMenu.Text = "File".Localize(); fileMenu.DropDownOpening += new EventHandler(fileMenu_DropDownOpening); fileMenu.DropDownItems.AddRange(new ToolStripItem[] { newMenu, openMenu, m_openFolderMenu, m_saveMenu, m_saveAsMenu, exitMenu }); // new newMenu.Name = "newToolStripMenuItem"; newMenu.ShortcutKeys = Keys.Control | Keys.N; newMenu.Text = "New".Localize(); newMenu.Click += NewToolStripMenuItem_Click; //open openMenu.Name = "openToolStripMenuItem"; openMenu.ShortcutKeys = Keys.Control | Keys.O; openMenu.Text = "Open...".Localize(); openMenu.Click += OpenToolStripMenuItem_Click; // open containing folder m_openFolderMenu.Name = "OpenFolderMenu"; m_openFolderMenu.Text = "Open Containing Folder".Localize(); m_openFolderMenu.Click += new EventHandler(OpenFolderMenu_Click); //save m_saveMenu.Name = "saveToolStripMenuItem"; m_saveMenu.ShortcutKeys = Keys.Control | Keys.S; m_saveMenu.Text = "Save".Localize(); m_saveMenu.Click += SaveToolStripMenuItem_Click; // save as m_saveAsMenu.Name = "saveAsToolStripMenuItem"; m_saveAsMenu.Text = "Save As...".Localize(); m_saveAsMenu.Click += SaveAsToolStripMenuItem_Click; // exit exitMenu.Name = "exitToolStripMenuItem"; exitMenu.Text = "Exit".Localize(); exitMenu.Click += ExitToolStripMenuItem_Click; // tree control m_treeControl.Dock = DockStyle.Fill; m_treeControl.Name = "m_treeControl"; m_treeControl.TabIndex = 1; m_treeControl.Width = 150; m_treeControl.ShowRoot = false; m_treeControl.AllowDrop = false; m_treeControl.SelectionMode = SelectionMode.One; m_treeControlAdapter = new TreeControlAdapter(m_treeControl); // propertyGrid1 m_PropertyGrid.Dock = DockStyle.Fill; m_PropertyGrid.Name = "propertyGrid1"; m_PropertyGrid.TabIndex = 3; m_PropertyGrid.PropertySorting = PropertySorting.None; // splitter splitter.Dock = DockStyle.Fill; splitter.Name = "splitContainer1"; splitter.Panel1.Controls.Add(m_treeControl); splitter.Panel2.Controls.Add(m_PropertyGrid); splitter.SplitterDistance = 100; splitter.TabIndex = 1; AutoScaleMode = AutoScaleMode.Font; ClientSize = new System.Drawing.Size(600, 400); Controls.Add(splitter); Controls.Add(m_menu); MainMenuStrip = m_menu; Name = "SkinEditor"; Icon = GdiUtil.CreateIcon(ResourceUtil.GetImage(Sce.Atf.Resources.AtfIconImage)); UpdateTitleText(); m_menu.ResumeLayout(false); m_menu.PerformLayout(); splitter.Panel1.ResumeLayout(false); splitter.Panel2.ResumeLayout(false); splitter.EndInit(); splitter.ResumeLayout(false); ResumeLayout(false); PerformLayout(); splitter.SplitterDistance = 170; }
/// <summary> /// Restores subtree's node expansion states, if remembered</summary> /// <param name="treeControlAdapter">TreeControlAdapter that performs node expansion</param> /// <param name="parent">Node whose subtree's expansion state was remembered</param> public void RestoreExpansion(TreeControlAdapter treeControlAdapter, TreeControl.Node parent) { if (parent.Tag != null && m_expandedItems.ContainsKey(parent.Tag)) { foreach (object item in m_expandedItems[parent.Tag]) treeControlAdapter.Expand(item); } }
protected override void Configure(out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { base.Configure(out treeControl, out treeControlAdapter); treeControl.ShowRoot = false; // hide root node, because it's the project treeControl.Text = Localizer.Localize("No Project Loaded"); treeControl.Dock = DockStyle.Fill; treeControl.AllowDrop = true; treeControl.SelectionMode = SelectionMode.One; }
protected override void Configure(out TreeControl treeControl, out TreeControlAdapter treeControlAdapter) { base.Configure(out treeControl, out treeControlAdapter); EditorTheme = new DataEditorTheme(treeControl.Font); }
private void Init() { if (s_schemaLoader == null) { s_schemaLoader = new SchemaLoader(); } m_PropertyGrid = new PropertyGrid(PropertyGridMode.PropertySorting | PropertyGridMode.DisplayDescriptions | PropertyGridMode.HideResetAllButton); m_treeControl = new TreeControl(); m_menu = new MenuStrip(); var fileMenu = new ToolStripMenuItem(); var newMenu = new ToolStripMenuItem(); var openMenu = new ToolStripMenuItem(); var exitMenu = new ToolStripMenuItem(); var splitter = new SplitContainer(); m_menu.SuspendLayout(); splitter.BeginInit(); splitter.Panel1.SuspendLayout(); splitter.Panel2.SuspendLayout(); splitter.SuspendLayout(); SuspendLayout(); // m_menu m_menu.Location = new System.Drawing.Point(0, 0); m_menu.Name = "m_menu"; m_menu.TabIndex = 0; m_menu.Text = "m_menu"; m_menu.Items.Add(fileMenu); // file fileMenu.Name = "fileToolStripMenuItem"; fileMenu.Size = new System.Drawing.Size(37, 20); fileMenu.Text = "File".Localize(); fileMenu.DropDownOpening += new EventHandler(fileMenu_DropDownOpening); fileMenu.DropDownItems.AddRange(new ToolStripItem[] { newMenu, openMenu, m_openFolderMenu, m_saveMenu, m_saveAsMenu, exitMenu }); // new newMenu.Name = "newToolStripMenuItem"; newMenu.ShortcutKeys = Keys.Control | Keys.N; newMenu.Text = "New".Localize(); newMenu.Click += NewToolStripMenuItem_Click; //open openMenu.Name = "openToolStripMenuItem"; openMenu.ShortcutKeys = Keys.Control | Keys.O; openMenu.Text = "Open...".Localize(); openMenu.Click += OpenToolStripMenuItem_Click; // open containing folder m_openFolderMenu.Name = "OpenFolderMenu"; m_openFolderMenu.Text = "Open Containing Folder".Localize(); m_openFolderMenu.Click += new EventHandler(OpenFolderMenu_Click); //save m_saveMenu.Name = "saveToolStripMenuItem"; m_saveMenu.ShortcutKeys = Keys.Control | Keys.S; m_saveMenu.Text = "Save".Localize(); m_saveMenu.Click += SaveToolStripMenuItem_Click; // save as m_saveAsMenu.Name = "saveAsToolStripMenuItem"; m_saveAsMenu.Text = "Save As...".Localize(); m_saveAsMenu.Click += SaveAsToolStripMenuItem_Click; // exit exitMenu.Name = "exitToolStripMenuItem"; exitMenu.Text = "Exit".Localize(); exitMenu.Click += ExitToolStripMenuItem_Click; // tree control m_treeControl.Dock = DockStyle.Fill; m_treeControl.Name = "m_treeControl"; m_treeControl.TabIndex = 1; m_treeControl.Width = 150; m_treeControl.ShowRoot = false; m_treeControl.AllowDrop = false; m_treeControl.SelectionMode = SelectionMode.One; m_treeControlAdapter = new TreeControlAdapter(m_treeControl); // propertyGrid1 m_PropertyGrid.Dock = DockStyle.Fill; m_PropertyGrid.Name = "propertyGrid1"; m_PropertyGrid.TabIndex = 3; m_PropertyGrid.PropertySorting = PropertySorting.None; // splitter splitter.Dock = DockStyle.Fill; splitter.Name = "splitContainer1"; splitter.Panel1.Controls.Add(m_treeControl); splitter.Panel2.Controls.Add(m_PropertyGrid); splitter.SplitterDistance = 100; splitter.TabIndex = 1; AutoScaleMode = AutoScaleMode.Font; ClientSize = new System.Drawing.Size(600, 400); Controls.Add(splitter); Controls.Add(m_menu); MainMenuStrip = m_menu; Name = "SkinEditor"; Icon = GdiUtil.CreateIcon(ResourceUtil.GetImage(Sce.Atf.Resources.AtfIconImage)); UpdateTitleText(); m_menu.ResumeLayout(false); m_menu.PerformLayout(); splitter.Panel1.ResumeLayout(false); splitter.Panel2.ResumeLayout(false); splitter.EndInit(); splitter.ResumeLayout(false); ResumeLayout(false); PerformLayout(); splitter.SplitterDistance = 170; }
internal void RestoreExpansion(TreeControl.Node parent, TreeControlAdapter treeAdapter) { if (parent.Tag == null) return; List<object> expandedItems; if (m_expandedNodeMap.TryGetValue(parent.Tag, out expandedItems)) { m_expandedNodeMap.Remove(parent.Tag); expandedItems.ForEach(item => treeAdapter.Expand(item)); } }
public AssetLister( IControlHostService controlHostService, IContextService contextService, ICommandService commandService, IFileDialogService fileDialogService) { m_controlHostService = controlHostService; m_contextService = contextService; m_commandService = commandService; m_fileDialogService = fileDialogService; m_treeControl = new TreeControl(); m_treeControl.Dock = DockStyle.Fill; m_treeControl.AllowDrop = true; m_treeControl.SelectionMode = SelectionMode.MultiExtended; m_treeControl.ImageList = ResourceUtil.GetImageList16(); m_treeControl.StateImageList = ResourceUtil.GetImageList16(); m_treeControl.DragOver += new DragEventHandler(treeControl_DragOver); m_treeControl.DragDrop += new DragEventHandler(treeControl_DragDrop); m_treeControl.MouseDown += new MouseEventHandler(treeControl_MouseDown); m_treeControl.MouseUp += new MouseEventHandler(treeControl_MouseUp); m_treeControl.NodeLabelEdited += new EventHandler <TreeControl.NodeEventArgs>(treeControl_NodeLabelEdited); m_listView = new ListView(); m_listView.View = View.Details; m_listView.Dock = DockStyle.Fill; m_listView.AllowDrop = true; m_listView.LabelEdit = false; m_listView.MouseDown += new MouseEventHandler(thumbnailControl_MouseDown); m_listView.MouseUp += new MouseEventHandler(thumbnailControl_MouseUp); m_listView.MouseMove += new MouseEventHandler(thumbnailControl_MouseMove); m_listView.MouseLeave += new EventHandler(thumbnailControl_MouseLeave); m_listView.DoubleClick += new EventHandler(thumbnailControl_DoubleClick); m_listView.DragOver += new DragEventHandler(thumbnailControl_DragOver); m_listView.DragDrop += new DragEventHandler(thumbnailControl_DragDrop); m_thumbnailControl = new ThumbnailControl(); m_thumbnailControl.IndicatorImageList = ResourceUtil.GetImageList16(); m_thumbnailControl.Dock = DockStyle.Fill; m_thumbnailControl.AllowDrop = true; m_thumbnailControl.BackColor = SystemColors.Window; m_thumbnailControl.SelectionChanged += new EventHandler(thumbnailControl_SelectionChanged); m_thumbnailControl.MouseDown += new MouseEventHandler(thumbnailControl_MouseDown); m_thumbnailControl.MouseMove += new MouseEventHandler(thumbnailControl_MouseMove); m_thumbnailControl.MouseUp += new MouseEventHandler(thumbnailControl_MouseUp); m_thumbnailControl.MouseLeave += new EventHandler(thumbnailControl_MouseLeave); m_thumbnailControl.DoubleClick += new EventHandler(thumbnailControl_DoubleClick); m_thumbnailControl.DragOver += new DragEventHandler(thumbnailControl_DragOver); m_thumbnailControl.DragDrop += new DragEventHandler(thumbnailControl_DragDrop); m_splitContainer = new SplitContainer(); m_splitContainer.Name = "Asset"; m_splitContainer.Orientation = Orientation.Vertical; m_splitContainer.Panel1.Controls.Add(m_treeControl); m_splitContainer.Panel2.Controls.Add(m_thumbnailControl); m_splitContainer.Panel2.Controls.Add(m_listView); m_listView.Hide(); m_selection.Changed += new EventHandler(selection_Changed); m_treeControlAdapter = new TreeControlAdapter(m_treeControl); m_assetFolderTreeView = new AssetFolderTreeView(this); m_treeControlAdapter.TreeView = m_assetFolderTreeView; m_listViewAdaptor = new ListViewAdaptor(m_listView); m_assetItemListView = new AssetItemListView(this); }