示例#1
0
 // Add the menu to all the workspaces
 private void addMenu2Workspaces(PopMenu pm)
 {
     foreach (Workspace wk in cs.Workspaces)
     {
         WorkspacePopMenu wkpm = new WorkspacePopMenu(wk, pm);
         wkpm.Display = 1;
     }
 }
示例#2
0
        //移除以前版本信息
        public void RemoveHistoryMenu()
        {
            try
            {
                PopMenu historyPopMenu = null;
                foreach (PopMenu tpm in mainCs.MenuGroup.PopMenus)
                {
                    AliasCollection acs = tpm.Aliases;
                    foreach (var ac in acs)
                    {
                        string acstr = ac as string;
                        if (!string.IsNullOrEmpty(acstr) && acstr.ToUpper().StartsWith("CMCUPLUGIN"))
                        {
                            historyPopMenu = tpm;
                        }
                        if (historyPopMenu != null)
                        {
                            foreach (Workspace wk in mainCs.Workspaces)
                            {
                                WorkspacePopMenu wkPm = wk.WorkspacePopMenus.FindWorkspacePopMenu(historyPopMenu.ElementID, historyPopMenu.Parent.Name);

                                if (wkPm != null)
                                {
                                    wk.WorkspacePopMenus.Remove(wkPm);
                                }
                            }

                            mainCs.MenuGroup.PopMenus.Remove(historyPopMenu);   // Deletes the Menu from ACAD Menu Group

                            MacroGroup           deleteMacroGroup = null;
                            MacroGroupCollection mgc       = mainCs.MenuGroup.MacroGroups;
                            List <int>           indexList = new List <int>();
                            foreach (MacroGroup mg in mgc)
                            {
                                if (mg.Name.ToUpper().StartsWith("CMCUMACRO"))
                                {
                                    deleteMacroGroup = mg;
                                }
                                if (deleteMacroGroup != null)
                                {
                                    indexList.Add(mgc.IndexOf(deleteMacroGroup));
                                }
                            }
                            indexList.Reverse();
                            foreach (int index in indexList)
                            {
                                mainCs.MenuGroup.MacroGroups.Remove(index);
                            }
                        }
                    }
                }
            }
            catch (System.Exception e)
            {
                ed.WriteMessage("\n异常:" + e.Message);
            }
        }
示例#3
0
 //加入工作区
 private void AddMenuToWorkspaces(PopMenu popMenu)
 {
     try
     {
         foreach (Workspace wk in mainCs.Workspaces)
         {
             WorkspacePopMenu wkpm = new WorkspacePopMenu(wk, popMenu);
             wkpm.Display = 1;
         }
     }
     catch
     {
     }
 }
示例#4
0
        public void remMenu()
        {
            // Find Index of the desired MenuItem
            // Remove it from all Workspaces that it exists in
            // Omitting this step leaves nasty left-overs in the Workspace files
            // Remove it from the Cui files' Menu List

            PopMenu pm = cs.MenuGroup.PopMenus.FindPopWithAlias("POP12");

            if (pm != null)
            {
                foreach (Workspace wk in cs.Workspaces)
                {
                    WorkspacePopMenu wkPm = wk.WorkspacePopMenus.FindWorkspacePopMenu(pm.ElementID, pm.Parent.Name);

                    if (wkPm != null)
                    {
                        wk.WorkspacePopMenus.Remove(wkPm);
                    }
                }
                cs.MenuGroup.PopMenus.Remove(pm);       // Deletes the Menu from ACAD Menu Group
            }
        }