Пример #1
0
        public void DoIt()
        {
            // Get the tool GUID;
            Type          t        = typeof(SimpleTool);
            GuidAttribute guidAttr = (GuidAttribute)t.GetCustomAttributes(typeof(GuidAttribute), false)[0];
            Guid          guid     = new Guid(guidAttr.Value);

            // don't redefine the stock tool if it's already in the catalog
            ToolPaletteManager mgr = ToolPaletteManager.Manager;

            if (mgr.StockToolCatalogs.Find(guid) != null)
            {
                return;
            }

            SimpleTool tool = new SimpleTool();

            tool.New();

            Catalog catalog = tool.CreateStockTool("SimpleCatalog");
            Palette palette = tool.CreatePalette(catalog, "SimplePalette");
            Package package = tool.CreateShapeCatalog("*AutoCADShapes");

            tool.CreateFlyoutTool(palette, package, null);
            ImageInfo imageInfo = new ImageInfo();

            imageInfo.ResourceFile = "TOOL1.bmp";
            imageInfo.Size         = new System.Drawing.Size(65, 65);

            tool.CreateCommandTool(palette, "Line", imageInfo, tool.CmdName);
            tool.CreateTool(palette, "Custom Line", imageInfo);
            mgr.LoadCatalogs();
        }
        public static void CreatePalette(Document doc, MSCDataset dataset)
        {
            ToolPaletteManager manager = ToolPaletteManager.Manager;

            try
            {
                try
                {
                    if (manager.Catalogs.Count > 0)
                    {
                        manager.SaveCatalogs();
                    }
                }
                catch
                {
                }
                ToolPalette.InitializePaletteFolders();
                ToolPalette.IncludeFolderLocation(ToolPalette.GroupFolder);
                ToolPalette.CreatePaletteFile(doc, dataset);
                if (!ToolPalette.GroupExists(doc))
                {
                    ToolPalette.CreateGroup();
                }
                if (manager.Catalogs.Count > 0)
                {
                    if (dataset.FeatureServices.Count != 0)
                    {
                        manager.LoadCatalogs();
                    }
                    else if (ToolPalette.PaletteVisible())
                    {
                        manager.LoadCatalogs();
                    }
                }
            }
            catch
            {
            }
        }