//public static List<IVirtualFolder> GetFolderSet(this ITreeNode node, string dbsubfolder) //{ // ITreeNode seldb = node.GetDatabaseNode(); // if (seldb == null) return null; // string dbname = node.GetDatabaseName(); // IPhysicalConnection conn = MainWindowExtension.SelectedConnection; // if (conn != null && conn.SystemConnection != null) // { // DXDriver driver = PhysicalConnectionExtension.GetDXDriver(conn); // IVirtualFolder local = new FileSystemFolder(seldb.GetPrivateSubFolder(dbsubfolder)); // List<IVirtualFolder> res = new List<IVirtualFolder>(); // res.Add(local); // if (driver != null) // { // IVirtualFolder onserver = driver.GetFolder(dbsubfolder, dbname); // res.Add(onserver); // } // return res; // } // return null; //} public static ITreeNode[] GetChildrenNow(this ITreeNode node) { if (!node.PreparedChildren) { IAsyncResult async = node.BeginLoadChildren(null); Async.WaitFor(async); node.EndLoadChildren(async); } return(node.GetChildren()); }
//void m_menu_Opening(object sender, System.ComponentModel.CancelEventArgs e) //{ // m_menu.Items.Clear(); // m_node.GetPopupMenu(new MenuBuilder(m_menu.Items)); //} //void m_menu_Popup(object sender, EventArgs e) //{ // //m_menu.MenuItems.Clear(); // m_menu.Items.Clear(); // m_node.GetPopupMenu(new PopupMenuBuilder(m_menu, m_tree)); //} public bool AllowExpand() { if (!m_node.AllowExpand()) { return(false); } MacroManager.ExpandNode(m_node); if (m_filledChildren) { m_node.NotifyExpanded(); return(true); } if (!m_node.PreparedChildren) { ProcessRegister.AddBackgroundTask("s_expand"); m_node.BeginLoadChildren(Async.CreateInvokeCallback(Invoker, OnPreparedExpand)); m_expanding = true; RefreshSelf(); return(false); } FillChildren(); m_node.NotifyExpanded(); return(true); }