/// <summary> /// Make the right menus visible when the selected node is a Workspace and /// set the Enabled property properly. /// </summary> private void UpdateKwsMenus(ToolStripItemCollection items, KwsBrowserKwsNode kwsNode) { Workspace kws = kwsNode.Kws; if (kws.Sm.CanWorkOnline()) items["CmWorkOnline"].Visible = true; else items["CmWorkOffline"].Visible = true; items["separator1"].Visible = true; items["CmRenameKws"].Visible = true; items["CmDeleteKws"].Visible = true; items["CmAdvanced"].Visible = true; ToolStripMenuItem advancedSubmenu = (ToolStripMenuItem)items["CmAdvanced"]; advancedSubmenu.DropDown.Closing += new ToolStripDropDownClosingEventHandler(AdvancedSubmenu_Closing); advancedSubmenu.DropDownItems["CmDisableKws"].Visible = true; advancedSubmenu.DropDownItems["CmExport"].Visible = true; advancedSubmenu.DropDownItems["CmRebuild"].Visible = true; items["CmProperties"].Visible = true; SetKwsToolsStripItemStatus(items["CmWorkOnline"], KwsAction.Connect, kws); SetKwsToolsStripItemStatus(items["CmWorkOffline"], KwsAction.Disconnect, kws); SetKwsToolsStripItemStatus(items["CmRenameKws"], KwsAction.Rename, kws); SetKwsToolsStripItemStatus(advancedSubmenu.DropDownItems["CmDisableKws"], KwsAction.Stop, kws); SetKwsToolsStripItemStatus(advancedSubmenu.DropDownItems["CmExport"], KwsAction.Export, kws); SetKwsToolsStripItemStatus(advancedSubmenu.DropDownItems["CmRebuild"], KwsAction.Rebuild, kws); if (m_uiBroker.GetGenDeleteAction(kws) == KwsAction.DeleteFromServer) { SetKwsToolsStripItemStatus(items["CmDeleteKws"], KwsAction.DeleteFromServer, kws); } else { SetKwsToolsStripItemStatus(items["CmDeleteKws"], KwsAction.RemoveFromList, kws); } SetKwsToolsStripItemStatus(advancedSubmenu.DropDownItems["CmDeleteFromServer"], KwsAction.DeleteFromServer, kws); SetKwsToolsStripItemStatus(advancedSubmenu.DropDownItems["CmRemoveKwsFromList"], KwsAction.RemoveFromList, kws); SetKwsToolsStripItemStatus(items["CmProperties"], KwsAction.ShowProperties, kws); }
public SerializedKwsBrowserKws(KwsBrowserKwsNode node) { ID = node.Kws.InternalID; ParentPath = node.Parent.FullPath; NotifyFlag = node.NotifyFlag; }
/// <summary> /// Add a workspace at the end of the folder specified. Throw an /// exception on error. /// </summary> public KwsBrowserKwsNode AddKws(Workspace kws, KwsBrowserFolderNode dstFolder, bool firstFlag) { if (m_kwsTree.ContainsKey(kws.InternalID)) throw new Exception(Base.GetKwsString() + "already exist"); if (dstFolder.IsRoot()) throw new Exception(Base.GetKwsString() + " must be in folders"); KwsBrowserKwsNode node = new KwsBrowserKwsNode(kws); dstFolder.AddNode(node, firstFlag ? 0 : dstFolder.KwsNodes.Count); m_kwsTree[kws.InternalID] = node; return node; }
/// <summary> /// Make the right menus visible when the selected node is a Workspace and /// set the Enabled property properly. /// </summary> private void UpdateKwsMenus(ToolStripItemCollection items, KwsBrowserKwsNode kwsNode) { Workspace kws = kwsNode.Kws; if (kws.Sm.CanWorkOnline()) items["CmWorkOnline"].Visible = true; else items["CmWorkOffline"].Visible = true; items["separator1"].Visible = true; items["CmRenameKws"].Visible = true; items["CmDelete"].Visible = true; items["CmAdvanced"].Visible = true; ToolStripMenuItem advancedSubmenu = (ToolStripMenuItem)items["CmAdvanced"]; advancedSubmenu.DropDownItems["CmDisable"].Visible = true; advancedSubmenu.DropDownItems["CmExport"].Visible = true; advancedSubmenu.DropDownItems["CmRebuild"].Visible = true; items["CmProperties"].Visible = true; SetKwsToolsStripItemStatus(items["CmWorkOnline"], KwsAction.Connect, kws); SetKwsToolsStripItemStatus(items["CmWorkOffline"], KwsAction.Disconnect, kws); SetKwsToolsStripItemStatus(items["CmRenameKws"], KwsAction.Rename, kws); SetKwsToolsStripItemStatus(advancedSubmenu.DropDownItems["CmDisable"], KwsAction.Disable, kws); SetKwsToolsStripItemStatus(advancedSubmenu.DropDownItems["CmExport"], KwsAction.Export, kws); SetKwsToolsStripItemStatus(advancedSubmenu.DropDownItems["CmRebuild"], KwsAction.Rebuild, kws); SetKwsToolsStripItemStatus(items["CmDelete"], KwsAction.RemoveFromList, kws); }