Autodesk.Windows.ToolBars.QuickAccessToolBarSource QuickPanel = Autodesk.Windows.ComponentManager.QuickAccessToolBar;
//Autodesk.AutoCAD.Ribbon.RibbonCommandButton CreatedButton = (Autodesk.AutoCAD.Ribbon.RibbonCommandButton)QuickPanel.Items[12]; Заранее известен номер кнопки, созданной через интерфейс автокада
string MacroGroupName = "ELECTRICALMacros";//"User";
MacroGroup SomeMacGroup = null;
if (!cs.MenuGroup.MacroGroups.Contains(MacroGroupName))
SomeMacGroup = new MacroGroup(MacroGroupName, cs.MenuGroup);
else
SomeMacGroup = cs.MenuGroup.MacroGroups.Cast<MacroGroup>().Single(s => s.Name.Equals(MacroGroupName));
string MacroName = "XXX Some Tag";
MenuMacro SomeMenuMacro = null;
if (SomeMacGroup.MenuMacros.IndexOf(MacroName) >= 0)
SomeMenuMacro =SomeMacGroup.MenuMacros[SomeMacGroup.MenuMacros.IndexOf(MacroName)];
else
SomeMenuMacro = SomeMacGroup.CreateMenuMacro(
"XXX SomeName",
"^C^C_Line ",
MacroName,
"XXX Some help",
MacroType.Legacy,
"RCDATA_16_ARX",
"RCDATA_16_ARX",
"XXX Some Label");
Autodesk.AutoCAD.Ribbon.RibbonCommandButton RRCbutton = new Autodesk.AutoCAD.Ribbon.RibbonCommandButton(SomeMenuMacro.macro.Name, SomeMenuMacro.ElementID);
RRCbutton.Id = "FastReplicationButton";
RRCbutton.Name = "FastReplication";
RRCbutton.Text = "FastReplication";
RRCbutton.Description = "Package creation dwg";
RRCbutton.MenuMacroId = MacroName;
//RRCbutton.CommandParameter = "FastReplication";
//RRCbutton.CommandHandler = new QuickButtonCommandHandler();
System.Windows.Media.Imaging.BitmapSource bs = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(
Properties.Resources.Fr.GetHbitmap(),
IntPtr.Zero,
System.Windows.Int32Rect.Empty,
System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions());
RRCbutton.Image = bs;
QuickPanel.AddStandardItem(RRCbutton);