} // end OnShutdown private bool AddSplitPushButtons(RibbonPanel rPanel) { ContextualHelp help = new ContextualHelp(ContextualHelpType.Url, AppStrings.R_CyberStudioDupSheetsAddr); try { // make push button 1 PushButtonData pbData1 = MakePushButton( rPanel, LocalResMgr.ButtonName, AppStrings.R_ButtonNameTop + nl + AppStrings.R_ButtonNameBott, AppStrings.R_ButtonImage16, AppStrings.R_ButtonImage32, Assembly.GetExecutingAssembly().Location, LocalResMgr.Command, AppStrings.R_CommandDescription); if (pbData1 == null) { return(false); } pbData1.SetContextualHelp(help); PushButtonData pbData2 = MakePushButton( rPanel, LocalResMgr.ButtonName_1Click, AppStrings.R_ButtonNameTopOneClick + nl + AppStrings.R_ButtonNameBottOneClick, AppStrings.R_ButtonImageOneClick16, AppStrings.R_ButtonImageOneClick32, Assembly.GetExecutingAssembly().Location, LocalResMgr.Command_1Click, AppStrings.R_CommandDescriptionOneClick); if (pbData2 == null) { return(false); } SplitButtonData sbd = new SplitButtonData("splitButton", "DupSheets"); SplitButton sb = rPanel.AddItem(sbd) as SplitButton; pbData2.SetContextualHelp(help); sb.SetContextualHelp(help); sb.AddPushButton(pbData1); sb.AddPushButton(pbData2); } catch { return(false); } return(true); }
public Result OnStartup(UIControlledApplication application) { try { // Get the revit version Version = Convert.ToInt32(application.ControlledApplication.VersionNumber); // Get the revit handle RevitHandle = IntPtr.Zero; if (Version < 2019) { RevitHandle = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle; } else { RevitHandle = application.GetType().GetProperty("MainWindowHandle") != null ? (IntPtr)application.GetType().GetProperty("MainWindowHandle")?.GetValue(application) : IntPtr.Zero; } application.ControlledApplication.DocumentOpened += DocumentOpened; ScheduleDeleteUpdater excelSchedUpdater = new ScheduleDeleteUpdater(application.ActiveAddInId); UpdaterRegistry.RegisterUpdater(excelSchedUpdater, true); //ElementCategoryFilter ecf = new ElementCategoryFilter(BuiltInCategory.OST_Views); ElementClassFilter ecf = new ElementClassFilter(typeof(ViewSchedule), false); UpdaterRegistry.AddTrigger(excelSchedUpdater.GetUpdaterId(), ecf, Element.GetChangeTypeElementDeletion()); // create the buttons string path = typeof(UpdateExcelApp).Assembly.Location; // pushbutton for the import command PushButtonData excelImportPushButtonData = new PushButtonData( "Import Excel As Schedule", "Import Excel", path, typeof(ImportExcelCmd).FullName) { LargeImage = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(Properties.Resources.ExcelScheduleIcon.GetHbitmap(), IntPtr.Zero, System.Windows.Int32Rect.Empty, System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions()), Image = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(Properties.Resources.ExcelScheduleIcon_16x16.GetHbitmap(), IntPtr.Zero, System.Windows.Int32Rect.Empty, System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions()), ToolTip = "Import data from an Excel worksheet into Revit as a schedule.", }; // Pushbutton for the settings command PushButtonData settingsPushButtonData = new PushButtonData( "Import Lineweights", "Settings", path, typeof(SettingsCmd).FullName) { ToolTip = "Set the line styles to use for different lineweight settings.", }; // PushButtonData for the Manage Links window PushButtonData manageLinksPushButtonData = new PushButtonData( "Manage Links", "Manage Links", path, typeof(ManageLinksCmd).FullName) { ToolTip = "Manage linked excel files", }; SplitButtonData excelSBD = new SplitButtonData("Import Excel", "Import\nExcel"); // Set default config values string helpPath = Path.Combine(Path.GetDirectoryName(typeof(UpdateExcelApp).Assembly.Location), "help\\ImportExcel.pdf"); string tabName = "Add-Ins"; string panelName = "Views"; if (RevitCommon.FileUtils.GetPluginSettings(typeof(UpdateExcelApp).Assembly.GetName().Name, out Dictionary <string, string> settings)) { // Settings retrieved, lets try to use them. if (settings.ContainsKey("help-path") && !string.IsNullOrWhiteSpace(settings["help-path"])) { // Check to see if it's relative path string hp = Path.Combine(Path.GetDirectoryName(typeof(UpdateExcelApp).Assembly.Location), settings["help-path"]); if (File.Exists(hp)) { helpPath = hp; } else { helpPath = settings["help-path"]; } } if (settings.ContainsKey("tab-name") && !string.IsNullOrWhiteSpace(settings["tab-name"])) { tabName = settings["tab-name"]; } if (settings.ContainsKey("panel-name") && !string.IsNullOrWhiteSpace(settings["panel-name"])) { panelName = settings["panel-name"]; } } // Create the SplitButton. SplitButton excelSB = RevitCommon.UI.AddToRibbon(application, tabName, panelName, excelSBD); // Setup the help ContextualHelp help = null; if (File.Exists(helpPath)) { help = new ContextualHelp(ContextualHelpType.ChmFile, helpPath); } else if (Uri.TryCreate(helpPath, UriKind.Absolute, out Uri uriResult) && (uriResult.Scheme == Uri.UriSchemeHttp || uriResult.Scheme == Uri.UriSchemeHttps)) { help = new ContextualHelp(ContextualHelpType.Url, helpPath); } if (help != null) { excelImportPushButtonData.SetContextualHelp(help); manageLinksPushButtonData.SetContextualHelp(help); settingsPushButtonData.SetContextualHelp(help); excelSBD.SetContextualHelp(help); excelSB.SetContextualHelp(help); } PushButton importPB = excelSB.AddPushButton(excelImportPushButtonData) as PushButton; PushButton managePB = excelSB.AddPushButton(manageLinksPushButtonData) as PushButton; PushButton settingPB = excelSB.AddPushButton(settingsPushButtonData) as PushButton; excelSB.IsSynchronizedWithCurrentItem = false; return(Result.Succeeded); } catch { return(Result.Failed); } }
// define a method that will create our tab and button static void AddRibbonPanel(UIControlledApplication application) { // Проверяем не истёк ли срок действия программы int deltaDateDaysInt1 = Security(); if (deltaDateDaysInt1 < 1) { return; // Выходим из программы. То есть риббон не создастся } // Create a custom ribbon tab String tabName = "ARMOCAD"; application.CreateRibbonTab(tabName); // Add a new ribbon panel RibbonPanel ribbonPanel = application.CreateRibbonPanel(tabName, "Программки общего назначения"); RibbonPanel electricRibbonPanel = application.CreateRibbonPanel(tabName, "Электрические системы"); RibbonPanel agpzTagRibbonPanel = application.CreateRibbonPanel(tabName, "AGPZ TAG"); RibbonPanel ribbonPanel2 = application.CreateRibbonPanel(tabName, "Механические системы"); RibbonPanel ribbonPanel3 = application.CreateRibbonPanel(tabName, "Слаботочные системы"); // Get dll assembly path string thisAssemblyPath = Assembly.GetExecutingAssembly().Location; #region Common Buttons // create push button PushButtonData b1Data = new PushButtonData( "cmdDetailLinesLength", "DL" + System.Environment.NewLine + "length", thisAssemblyPath, "DetailLinesLength.DetailLinesLengthClass"); b1Data.SetContextualHelp(helpButtonsDictionary["cmdDetailLinesLength"]); b1Data.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/DetailLinesLength_icon.png")); b1Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/DetailLinesLength_icon.png")); b1Data.ToolTip = "Нажмите чтобы измерить длину линий детализации"; // create push button PushButtonData b2Data = new PushButtonData( "cmdALength", "MEP" + System.Environment.NewLine + "length", thisAssemblyPath, "ALength.OverLength"); b2Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/measureIcon.png")); b2Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/measureIcon.png")); b2Data.ToolTip = "Нажмите чтобы измерить длину инженерных коммуникаций и линий"; // Создаём выпадающие кнопки SplitButtonData sbdata1 = new SplitButtonData("Ara", "MEP Length"); SplitButton sb1 = ribbonPanel.AddItem(sbdata1) as SplitButton; sb1.AddPushButton(b2Data); sb1.AddPushButton(b1Data); // create push button for RotateAll PushButtonData b3Data = new PushButtonData( "cmdRotateAll", "Rotate" + System.Environment.NewLine + "Elements", thisAssemblyPath, "RotateAll.RotateAllClass"); PushButton pb3 = ribbonPanel.AddItem(b3Data) as PushButton; pb3.ToolTip = "Select Elements to rotate them"; BitmapImage pb3Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/rotateIcon.png")); pb3.LargeImage = pb3Image; // create push button PushButtonData b4Data = new PushButtonData( "cmdScheduleToExcel", "Export" + System.Environment.NewLine + "Schedule", thisAssemblyPath, "ScheduleToExcel.ScheduleToExcelClass"); PushButton pb4 = ribbonPanel.AddItem(b4Data) as PushButton; pb4.ToolTip = "Select Schedules to export them"; BitmapImage pb4Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/excelIcon.png")); pb4.LargeImage = pb4Image; // create push button PushButtonData b5Data = new PushButtonData( "cmdCopySheet", "Copy" + System.Environment.NewLine + "sheet", thisAssemblyPath, "CopySheet.CopySheetClass"); PushButton pb5 = ribbonPanel.AddItem(b5Data) as PushButton; pb5.ToolTip = "Copy Sheet"; BitmapImage pb5Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/copySheetIcon.png")); pb5.LargeImage = pb5Image; // create push button PushButtonData b6Data = new PushButtonData( "cmdSimilarParamsClass", "Similar" + System.Environment.NewLine + "Parameters", thisAssemblyPath, "SimilarParams.SimilarParamsClass"); PushButton pb6 = ribbonPanel.AddItem(b6Data) as PushButton; pb6.ToolTip = "Запись одинкаовых параметров в разные семейства"; pb6.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/SimilarParams_icon.png")); pb6.LargeImage = pb6.Image; pb6.SetContextualHelp(helpButtonsDictionary["cmdSimilarParamsClass"]); // create push button PushButtonData b7Data = new PushButtonData( "cmdParamtextreplaceClass", "Param" + System.Environment.NewLine + "text replace", thisAssemblyPath, "Paramtextreplace.ParamtextreplaceClass"); PushButton pb7 = ribbonPanel.AddItem(b7Data) as PushButton; pb7.ToolTip = "Поиск и замена выбранных параметров в выбранных семействах"; pb7.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/Paramtextreplace_icon.png")); pb7.LargeImage = pb7.Image; pb7.SetContextualHelp(helpButtonsDictionary["cmdParamtextreplaceClass"]); // create push button PushButtonData b9Data = new PushButtonData( "cmdOpeningElevation", "Opening" + System.Environment.NewLine + "Elevation", thisAssemblyPath, "OpeningElevation.OpeningElevationClass"); PushButton pb9 = ribbonPanel.AddItem(b9Data) as PushButton; pb9.ToolTip = "Нажмите чтобы обработать отверстия Cut Opening"; pb9.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/openElevIcon.png")); pb9.LargeImage = pb9.Image; pb9.SetContextualHelp(helpButtonsDictionary["cmdOpeningElevation"]); // create push button PushButtonData b11Data = new PushButtonData( "cmdSectionByElement", "Section" + System.Environment.NewLine + "by Element", thisAssemblyPath, "SectionByElement.SectionByElementClass"); PushButton pb11 = ribbonPanel.AddItem(b11Data) as PushButton; pb11.ToolTip = "Выберите элемент(ы) и нажмите, чтобы создать разрез(ы) вдоль них"; pb11.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/section_icon.png")); pb11.LargeImage = pb11.Image; // create push button PushButtonData b20Data = new PushButtonData( "cmdFilterExCommand", "Filter" + System.Environment.NewLine + "by Params", thisAssemblyPath, "ARMOCAD.FilterExCommand"); PushButton pb20 = ribbonPanel.AddItem(b20Data) as PushButton; pb20.ToolTip = "Выбирает элементы в модели по условиям"; pb20.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/filterIcon.png")); pb20.LargeImage = pb20.Image; // create push button PushButtonData b25Data = new PushButtonData( "cmdCreateMepSpaces", "Пространства" + System.Environment.NewLine + "по АР", thisAssemblyPath, "ARMOCAD.CreateMepSpaces"); b25Data.SetContextualHelp(helpButtonsDictionary["cmdCreateMepSpaces"]); PushButton pb25 = ribbonPanel.AddItem(b25Data) as PushButton; pb25.ToolTip = "Ставит пространства по модели АР"; pb25.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/spaceIcon.png")); pb25.LargeImage = pb25.Image; #endregion Common Buttons #region Electric Buttons // create push button PushButtonData elB1Data = new PushButtonData( "cmdSpreadEvenly", "Spread" + System.Environment.NewLine + "Evenly", thisAssemblyPath, "SpreadEvenly.SpreadEvenlyClass"); PushButton elPB1 = electricRibbonPanel.AddItem(elB1Data) as PushButton; elPB1.ToolTip = "Нажмите чтобы расставить семейства"; elPB1.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/SpreadEvenly_icon.png")); elPB1.LargeImage = elPB1.Image; elPB1.SetContextualHelp(helpButtonsDictionary["cmdSpreadEvenly"]); //DenisButtons // create push button PushButtonData elB2Data = new PushButtonData( "cmdConPoints", "Размещение\n ТП", thisAssemblyPath, "ARMOCAD.ConPoint"); elB2Data.SetContextualHelp(helpButtonsDictionary["cmdConPoints"]); elB2Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/tpointsIcon.png")); elB2Data.ToolTip = "Размещение точек подключения из связи"; elB2Data.ToolTipImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/Screenshot_1.png")); elB2Data.LongDescription = "Автоматическая расстановка электровыводов для подключения оборудования из связанных моделей с загрузкой технических параметров \n"; // create push button PushButtonData elB3Data = new PushButtonData( "cmdConPointLocation", "Проверка\n ТП", thisAssemblyPath, "ARMOCAD.ConPointLocation"); elB3Data.SetContextualHelp(helpButtonsDictionary["cmdConPointLocation"]); elB3Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/checkIcon.png")); elB3Data.ToolTip = "Проверка размещенных точек подключения"; elB3Data.LongDescription = "Проверка размещенных электровыводов оборудования из связанных моделей на количество и правильность размещения \n"; elB3Data.ToolTipImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/Screenshot_2.png")); // Создаём выпадающие кнопки SplitButtonData sbElData1 = new SplitButtonData("ConPoints", "ConPointLocation"); SplitButton sbEl1 = electricRibbonPanel.AddItem(sbElData1) as SplitButton; sbEl1.AddPushButton(elB2Data); sbEl1.AddPushButton(elB3Data); //sbEl1.CurrentButton.Name #endregion Electric Buttons #region AGPZ Tag Buttons // create push button PushButtonData tagB1Data = new PushButtonData( "cmdTagOVDucts", "TAG\n Комплект.", thisAssemblyPath, "ARMOCAD.TagOVDucts"); tagB1Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/tagIcon.png")); tagB1Data.ToolTip = "Тагирование воздуховодов и соединительных деталей"; // create push button PushButtonData tagB2Data = new PushButtonData( "cmdTagOVEquipPhase1", "TAG Ф1\n Оборуд.", thisAssemblyPath, "ARMOCAD.TagOVEquipPhase1"); tagB2Data.ToolTip = "Тагирование (Фаза 1) оборудования, арматуры воздуховодов, воздухораспределителей, арматуры труб"; tagB2Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/tagIcon.png")); // create push button PushButtonData tagB3Data = new PushButtonData( "cmdTagOVEquip", "TAG Ф2+\n Оборуд.", thisAssemblyPath, "ARMOCAD.TagOVEquip"); tagB3Data.ToolTip = "Тагирование (Фаза 2 и сл.) оборудования, арматуры воздуховодов, воздухораспределителей, арматуры труб"; tagB3Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/tagIcon.png")); // create push button PushButtonData tagB4Data = new PushButtonData( "cmdTagOVEquipReplace", "TAG Ф2+\n Замена", thisAssemblyPath, "ARMOCAD.TagOVEquipReplace"); tagB4Data.ToolTip = "Тагирование (Фаза 2 и сл.) заменяет часть тэга на код системы 0001А => 9901А, не создавая новых тэгов"; tagB4Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/tagIcon.png")); // Создаём выпадающие кнопки SplitButtonData sbTagData1 = new SplitButtonData("AGPZ", "TAGButtons"); SplitButton sbTag1 = agpzTagRibbonPanel.AddItem(sbTagData1) as SplitButton; sbTag1.AddPushButton(tagB1Data); sbTag1.AddPushButton(tagB2Data); sbTag1.AddPushButton(tagB3Data); sbTag1.AddPushButton(tagB4Data); // create push button PushButtonData tagB5Data = new PushButtonData( "cmdTagsFromSheetsEx", "TAG" + System.Environment.NewLine + "на листах", thisAssemblyPath, "ARMOCAD.TagsFromSheetsEx"); PushButton tagPB5 = agpzTagRibbonPanel.AddItem(tagB5Data) as PushButton; tagPB5.ToolTip = "Собирает информацию о тэгах и листах, на которых они расположены"; tagPB5.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/tagIconGreen.png")); tagPB5.LargeImage = tagPB5.Image; // create push button PushButtonData tagB6Data = new PushButtonData( "cmdTBCommand", "TAG\n bridge", thisAssemblyPath, "ARMOCAD.TBCommand"); PushButton tagPB6 = agpzTagRibbonPanel.AddItem(tagB6Data) as PushButton; tagPB6.ToolTip = "Сцепляет элементы модели и схем"; tagPB6.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/tagTransferIcon.png")); tagPB6.LargeImage = tagPB6.Image; #endregion AGPZ Tag Buttons #region MEP Buttons // create push button PushButtonData b8Data = new PushButtonData( "cmdSwapDuct", "Swap" + System.Environment.NewLine + "Duct", thisAssemblyPath, "SwapDuct.SwapDuctClass"); PushButton pb8 = ribbonPanel2.AddItem(b8Data) as PushButton; pb8.ToolTip = "Нажмите чтобы развернуть воздуховод"; pb8.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/swapIcon.png")); pb8.LargeImage = pb8.Image; // create push button PushButtonData b12Data = new PushButtonData( "cmdThiDuct", "Толщина" + System.Environment.NewLine + "воздуховодов", thisAssemblyPath, "ThiDuct.ThiDuctClass"); PushButton pb12 = ribbonPanel2.AddItem(b12Data) as PushButton; pb12.ToolTip = "Толщина металла воздуховодов и соединительных деталей"; pb12.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/thicknessIcon.png")); pb12.LargeImage = pb12.Image; // create push button PushButtonData b16Data = new PushButtonData( "cmdLengthOfTransition", "Длина" + System.Environment.NewLine + "перехода", thisAssemblyPath, "LengthOfTransition.LengthOfTransitionClass"); PushButton pb16 = ribbonPanel2.AddItem(b16Data) as PushButton; pb16.ToolTip = "Редактирует длину перехода по ВСН 353-86 Таблица 7"; pb16.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/transIcon.png")); pb16.LargeImage = pb16.Image; // create push button PushButtonData b17Data = new PushButtonData( "cmdMEPSystemScheme", "Аксон." + System.Environment.NewLine + "схемы", thisAssemblyPath, "MEPSystemScheme.MEPSystemSchemeClass"); PushButton pb17 = ribbonPanel2.AddItem(b17Data) as PushButton; pb17.ToolTip = "Создает 3D виды по механическим системам"; pb17.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/3dIcon.png")); pb17.LargeImage = pb17.Image; // create push button PushButtonData b19Data = new PushButtonData( "cmdChangeUnitExCommand", "AGPZ" + System.Environment.NewLine + "Copy Model", thisAssemblyPath, "ARMOCAD.ChangeUnitExCommand"); PushButton pb19 = ribbonPanel2.AddItem(b19Data) as PushButton; pb19.ToolTip = "Заменяет параметры для новой модели AGPZ"; pb19.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/copyIcon.png")); pb19.LargeImage = pb19.Image; #endregion MEP Buttons #region SS Buttons // create push button PushButtonData b21Data = new PushButtonData( "cmdSKSSocketsToShelfsExCommand", "Розетки по Шкафам", thisAssemblyPath, "ARMOCAD.SKSSocketsToShelfsExCommand"); b21Data.ToolTip = "Заполняет в розетках параметр \"Розетка - Шкаф\""; b21Data.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/socketIcon.png")); // create push button PushButtonData b22Data = new PushButtonData( "cmdSKSFasadExCommand", "Схемы и Фасады", thisAssemblyPath, "ARMOCAD.SKSFasadExCommand"); b22Data.ToolTip = "Маркирует розетки и создает чертежные виды со схемами и фасадами"; b22Data.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/schemeIcon.png")); List <RibbonItem> ssButtons1 = new List <RibbonItem>(); ssButtons1.AddRange(ribbonPanel3.AddStackedItems(b21Data, b22Data)); // create push button PushButtonData b23Data = new PushButtonData( "cmdSKUDControlPlacementEx", "Точки Доступа", thisAssemblyPath, "ARMOCAD.SKUDControlPlacementEx"); b23Data.ToolTip = "Размещение точек доступа по дверям из связанной модели АР"; b23Data.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/arrowIcon.png")); b23Data.SetContextualHelp(helpButtonsDictionary["cmdSKUDControlPlacementEx"]); // create push button PushButtonData b24Data = new PushButtonData( "cmdSKUDPlaceEquipmentEx", "ТД -> Оборудование", thisAssemblyPath, "ARMOCAD.SKUDPlaceEquipmentEx"); b24Data.ToolTip = "Размещение оборудования СКУД по точкам доступа"; b24Data.Image = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/equipIcon.png")); b24Data.SetContextualHelp(helpButtonsDictionary["cmdSKUDControlPlacementEx"]); List <RibbonItem> skudButtons1 = new List <RibbonItem>(); skudButtons1.AddRange(ribbonPanel3.AddStackedItems(b23Data, b24Data)); //========================= DenisButtons // create push button PushButtonData b26Data = new PushButtonData("cmdLinkEquipmentSS", "Размещение\n оборудования", thisAssemblyPath, "ARMOCAD.LinkEquipmentSS"); b26Data.SetContextualHelp(helpButtonsDictionary["cmdLinkEquipmentSS"]); b26Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/valveIcon.png")); b26Data.ToolTip = "Размещение оборудования из связной модели"; b26Data.LongDescription = "Автоматическая расстановка электровыводов для подключения оборудования из связанных моделей с загрузкой технических параметров \n"; b26Data.ToolTipImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/Screenshot_3.png")); // create push button PushButtonData b27Data = new PushButtonData("cmdLinkEquipmentLoc", "Проверка\n оборудования", thisAssemblyPath, "ARMOCAD.LinkEquipmentLoc"); b27Data.SetContextualHelp(helpButtonsDictionary["cmdLinkEquipmentLoc"]); b27Data.LargeImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/checkIcon.png")); b27Data.ToolTip = "Проверка оборудования размещенного из связной модели \n"; b27Data.ToolTipImage = new BitmapImage(new Uri("pack://application:,,,/ARMOCAD;component/Resources/Screenshot_2.png")); // Создаём выпадающие кнопки SplitButtonData sbdata2 = new SplitButtonData("LinkEquipmentSS", "SS LinkEquipmentSS"); SplitButton sb2 = ribbonPanel3.AddItem(sbdata2) as SplitButton; sb2.AddPushButton(b26Data); sb2.AddPushButton(b27Data); PushButton curbutt = sb2.CurrentButton; ContextualHelp h = curbutt.GetContextualHelp(); sb2.SetContextualHelp(h); #endregion SS Buttons }
private void CreateONBOXRibbon(UIControlledApplication application) { string dll = System.Reflection.Assembly.GetExecutingAssembly().Location; string ribbonONBOX = "Onbox App"; application.CreateRibbonTab(ribbonONBOX); IList <RibbonPanel> allProjectPanels = new List <RibbonPanel>(); IList <RibbonPanel> allFreePanels = new List <RibbonPanel>(); RibbonPanel panelRenumber = application.CreateRibbonPanel(ribbonONBOX, Properties.RibbonLanguage.RenumberElements_Title); RibbonPanel panelStructuralMembers = application.CreateRibbonPanel(ribbonONBOX, Properties.RibbonLanguage.StructuralElements_Title); RibbonPanel panelModifyElem = application.CreateRibbonPanel(ribbonONBOX, Properties.RibbonLanguage.ModifyElements_Title); RibbonPanel panelTopo = application.CreateRibbonPanel(ribbonONBOX, Properties.RibbonLanguage.Topography_Title); RibbonPanel panelManage = application.CreateRibbonPanel(ribbonONBOX, Properties.RibbonLanguage.Manage_Title); RibbonPanel panelAbout = application.CreateRibbonPanel(ribbonONBOX, Properties.RibbonLanguage.MoreInfo_Title); RibbonPanel panelNotifications = null; allProjectPanels.Add(panelRenumber); allProjectPanels.Add(panelStructuralMembers); allProjectPanels.Add(panelModifyElem); allProjectPanels.Add(panelTopo); allProjectPanels.Add(panelManage); allFreePanels.Add(panelAbout); allFreePanels.Add(panelNotifications); PushButton btnRenumberGrids = panelRenumber.AddItem(new PushButtonData(Properties.RibbonLanguage.RenumberElements_Grids, Properties.RibbonLanguage.RenumberElements_Grids.Replace("\\n", "\n"), dll, "ONBOXAppl.RenumberGridsAdvanced")) as PushButton; btnRenumberGrids.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnRenumberGrids)); SplitButton sptRenumberParking = panelRenumber.AddItem(new SplitButtonData(Properties.RibbonLanguage.RenumberElements_RenumberParkingSpaces, Properties.RibbonLanguage.RenumberElements_RenumberParkingSpaces)) as SplitButton; sptRenumberParking.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.sptRenumberParking)); PushButton btnRenumberBeams = panelRenumber.AddItem(new PushButtonData(Properties.RibbonLanguage.RenumberElements_RenumberBeams, Properties.RibbonLanguage.RenumberElements_RenumberBeams.Replace("\\n", "\n"), dll, "ONBOXAppl.RenumberBeams")) as PushButton; btnRenumberBeams.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnRenumberBeams)); SplitButton sptRenumberColumns = panelRenumber.AddItem(new SplitButtonData(Properties.RibbonLanguage.RenumberElements_RenumberColumns, Properties.RibbonLanguage.RenumberElements_RenumberColumns)) as SplitButton; sptRenumberColumns.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.sptRenumberColumns)); SplitButton sptJoinElements = panelModifyElem.AddItem(new SplitButtonData(Properties.RibbonLanguage.ModifyElements_JoinMultipleElements, Properties.RibbonLanguage.ModifyElements_JoinMultipleElements)) as SplitButton; sptJoinElements.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.sptJoinElements)); PushButton btnCreateBeamsFromBuilding = panelStructuralMembers.AddItem(new PushButtonData(Properties.RibbonLanguage.StructuralElements_BeamsForBuilding, Properties.RibbonLanguage.StructuralElements_BeamsForBuilding.Replace("\\n", "\n"), dll, "ONBOXAppl.BeamsFromEntireBuilding")) as PushButton; btnCreateBeamsFromBuilding.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnCreateBeamsFromBuilding)); PushButton btnCreateBeam = panelStructuralMembers.AddItem(new PushButtonData(Properties.RibbonLanguage.StructuralElements_BeamsFromWalls, Properties.RibbonLanguage.StructuralElements_BeamsFromWalls.Replace("\\n", "\n"), dll, "ONBOXAppl.BeamsFromWalls")) as PushButton; btnCreateBeam.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnCreateBeam)); PushButton btnCreateBeamsFromColumns = panelStructuralMembers.AddItem(new PushButtonData(Properties.RibbonLanguage.StructuralElements_BeamsFromColumns, Properties.RibbonLanguage.StructuralElements_BeamsFromColumns.Replace("\\n", "\n"), dll, "ONBOXAppl.BeamsFromColumns")) as PushButton; btnCreateBeamsFromColumns.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnCreateBeamsFromColumns)); PushButton btnCreateColumnsFromDwg = panelStructuralMembers.AddItem(new PushButtonData(Properties.RibbonLanguage.StructuralElements_ColumnsFromCAD, Properties.RibbonLanguage.StructuralElements_ColumnsFromCAD.Replace("\\n", "\n"), dll, "ONBOXAppl.ColumnsFromDwg")) as PushButton; btnCreateColumnsFromDwg.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnCreateColumnsFromDwg)); //PushButton btnCreateBeamsUpdate = panelModifyElem.AddItem(new PushButtonData(" Atualizar \n vigas ", " Atualizar \n vigas ", dll, "ONBOXAppl.BeamUpdate")) as PushButton; PushButton btnElementsCopyLevel = panelModifyElem.AddItem(new PushButtonData(Properties.RibbonLanguage.ModifyElements_CopyBeamsToLevels, Properties.RibbonLanguage.ModifyElements_CopyBeamsToLevels.Replace("\\n", "\n"), dll, "ONBOXAppl.ElementsCopyToLevels")) as PushButton; btnElementsCopyLevel.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnElementsCopyLevel)); PushButton btnElmentsJoin = sptJoinElements.AddPushButton(new PushButtonData(Properties.RibbonLanguage.ModifyElements_JoinElements, Properties.RibbonLanguage.ModifyElements_JoinElements.Replace("\\n", "\n"), dll, "ONBOXAppl.ElementsJoinAdvanced")) as PushButton; btnElmentsJoin.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnElmentsJoin)); PushButton btnElmentsSelectJoin = sptJoinElements.AddPushButton(new PushButtonData(Properties.RibbonLanguage.ModifyElements_SelectElementsToJoin, Properties.RibbonLanguage.ModifyElements_SelectElementsToJoin.Replace("\\n", "\n"), dll, "ONBOXAppl.ElementJoinSelect")) as PushButton; btnElmentsSelectJoin.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnElmentsSelectJoin)); PushButton btnCreateTopoFromPointCloud = panelTopo.AddItem(new PushButtonData(Properties.RibbonLanguage.Topography_SurfaceByPointCloud, Properties.RibbonLanguage.Topography_SurfaceByPointCloud.Replace("\\n", "\n"), dll, "ONBOXAppl.TopoFromPointCloudAdvanced")) as PushButton; btnCreateTopoFromPointCloud.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnCreateTopoFromPointCloud)); //PushButton btnCreateTopoFromDwgMarks = panelTopo.AddItem(new PushButtonData(" Topografia por CAD planimétrico ", " Topografia por \n planimetria ", dll, "ONBOXAppl.TopoFromDwgMarks")) as PushButton; PushButton btnTopoSlope = panelTopo.AddItem(new PushButtonData(Properties.RibbonLanguage.Topography_SlopeByPads, Properties.RibbonLanguage.Topography_SlopeByPads.Replace("\\n", "\n"), dll, "ONBOXAppl.TopoSlopes")) as PushButton; btnTopoSlope.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnTopoSlope)); PushButton btnRevitZip = panelManage.AddItem(new PushButtonData(Properties.RibbonLanguage.Manage_PackageProject, Properties.RibbonLanguage.Manage_PackageProject.Replace("\\n", "\n"), dll, "ONBOXAppl.RevitZip")) as PushButton; btnRevitZip.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnRevitZip)); PushButton btnONBOXSite = panelAbout.AddItem(new PushButtonData(" Onbox ", " Onbox ", dll, "ONBOXAppl.SiteONBOX")) as PushButton; //PushButton btnProjectExamplesFolder = panelAbout.AddItem(new PushButtonData(Properties.RibbonLanguage.About_SampleProjects, Properties.RibbonLanguage.About_SampleProjects.Replace("\\n", "\n"), dll, "ONBOXAppl.ProjectFolder")) as PushButton; PushButton btnInfo = panelAbout.AddItem(new PushButtonData(Properties.RibbonLanguage.About_Title, Properties.RibbonLanguage.About_Title, dll, "ONBOXAppl.AboutONBOXApp")) as PushButton; PushButton btnPrivacy = panelAbout.AddItem(new PushButtonData(Properties.RibbonLanguage.About_Privacy, Properties.RibbonLanguage.About_Privacy, dll, "ONBOXAppl.Privacy")) as PushButton; //SplitButtons for Parking PushButton btnRenumberParking = sptRenumberParking.AddPushButton(new PushButtonData(Properties.RibbonLanguage.RenumberElements_ParkingSpaces, Properties.RibbonLanguage.RenumberElements_ParkingSpaces.Replace("\\n", "\n"), dll, "ONBOXAppl.RenumberParking")) as PushButton; btnRenumberParking.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnRenumberParking)); PushButton btnRenumberBlockParking = sptRenumberParking.AddPushButton(new PushButtonData(Properties.RibbonLanguage.RenumberElements_NearestSpaces, Properties.RibbonLanguage.RenumberElements_NearestSpaces.Replace("\\n", "\n"), dll, "ONBOXAppl.RenumberBlockParking")) as PushButton; btnRenumberBlockParking.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnRenumberBlockParking)); PushButton btnRenumberClearParking = sptRenumberParking.AddPushButton(new PushButtonData(Properties.RibbonLanguage.RenumberElements_ClearParkingNumbering, Properties.RibbonLanguage.RenumberElements_ClearParkingNumbering.Replace("\\n", "\n"), dll, "ONBOXAppl.RenumberCleaner")) as PushButton; btnRenumberClearParking.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnRenumberClearParking)); //SplitButtons for Columns PushButton btnRenumberColumns = sptRenumberColumns.AddPushButton(new PushButtonData(Properties.RibbonLanguage.RenumberElements_Columns, Properties.RibbonLanguage.RenumberElements_Columns.Replace("\\n", "\n"), dll, "ONBOXAppl.RenumberColumns")) as PushButton; btnRenumberColumns.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnRenumberColumns)); PushButton btnRenumberColumnsSelect = sptRenumberColumns.AddPushButton(new PushButtonData(Properties.RibbonLanguage.RenumberElements_SelectColumns, Properties.RibbonLanguage.RenumberElements_SelectColumns.Replace("\\n", "\n"), dll, "ONBOXAppl.RenumberColumnsSelection")) as PushButton; btnRenumberColumnsSelect.SetContextualHelp(new ContextualHelp(ContextualHelpType.Url, Properties.HelpLinks.btnRenumberColumnsSelect)); BitmapImage grid32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberGrid32.png", UriKind.Absolute)); BitmapImage grid16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberGrid16.png", UriKind.Absolute)); BitmapImage parking32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberParking32.png", UriKind.Absolute)); BitmapImage parking16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberParking16.png", UriKind.Absolute)); BitmapImage parkingDelete16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberDeleteParking16.png", UriKind.Absolute)); BitmapImage parkingDelete32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberDeleteParking32.png", UriKind.Absolute)); BitmapImage parkingBlock16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberBlockParking16.png", UriKind.Absolute)); BitmapImage parkingBlock32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberBlockParking32.png", UriKind.Absolute)); BitmapImage beams32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberBeams32.png", UriKind.Absolute)); BitmapImage beams16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberBeams16.png", UriKind.Absolute)); BitmapImage Column16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenumberColumns16.png", UriKind.Absolute)); BitmapImage Column32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenameColumns32.png", UriKind.Absolute)); BitmapImage Column16Select = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenameColumns16.png", UriKind.Absolute)); BitmapImage Column32Select = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnRenameColumns32Select.png", UriKind.Absolute)); BitmapImage BeamsFromBuilding16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnBeamsFromBuilding16.png", UriKind.Absolute)); BitmapImage BeamsFromBuilding32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnBeamsFromBuilding32.png", UriKind.Absolute)); BitmapImage createBeam16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnWallsToBeams16.png", UriKind.Absolute)); BitmapImage createBeam32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnWallsToBeamsCreate32.png", UriKind.Absolute)); BitmapImage createUpdate32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnWallsToBeamsUpdate32.png", UriKind.Absolute)); BitmapImage createBeamsFromColumns16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnColumnsToBeams16.png", UriKind.Absolute)); BitmapImage createBeamsFromColumns32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnColumnsToBeams32.png", UriKind.Absolute)); BitmapImage ColumnsFromDwg16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnColumnsFromDWG16.png", UriKind.Absolute)); BitmapImage ColumnsFromDwg32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnColumnsFromDWG32.png", UriKind.Absolute)); BitmapImage ElementsCopy16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnBeamsCopyLevels16.png", UriKind.Absolute)); BitmapImage ElementsCopy32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnBeamsCopyLevels.png", UriKind.Absolute)); BitmapImage ElementsJoin16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnJoinMultiple16.png", UriKind.Absolute)); BitmapImage ElementsJoin32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnJoinMultiple.png", UriKind.Absolute)); BitmapImage ElementsSelectJoin16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnJoinSelectMultiple16.png", UriKind.Absolute)); BitmapImage ElementsSelectJoin32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnJoinSelectMultiple.png", UriKind.Absolute)); BitmapImage TopoFromPointCloud16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnTopoFromPointCloud16.png", UriKind.Absolute)); BitmapImage TopoFromPointCloud32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnTopoFromPointCloud32.png", UriKind.Absolute)); BitmapImage TopoFromDWG16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnTopoFromDWG16.png", UriKind.Absolute)); BitmapImage TopoFromDWG32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnTopoFromDWG.png", UriKind.Absolute)); BitmapImage TopoSlope16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnTopoSlope16.png", UriKind.Absolute)); BitmapImage TopoSlope32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnTopoSlope.png", UriKind.Absolute)); BitmapImage ONBOX32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/onBox32.png", UriKind.Absolute)); BitmapImage ONBOX16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/onBox16.png", UriKind.Absolute)); BitmapImage INFO32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnInfo32.png", UriKind.Absolute)); BitmapImage INFO16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnInfo16.png", UriKind.Absolute)); BitmapImage privacy32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/privacy32.png", UriKind.Absolute)); BitmapImage privacy16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/privacy16.png", UriKind.Absolute)); //BitmapImage ProjectExamples16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnProjectExamplesFolder16.png", UriKind.Absolute)); //BitmapImage ProjectExamples32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnProjectExamplesFolder.png", UriKind.Absolute)); BitmapImage Package16 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnPackage16.png", UriKind.Absolute)); BitmapImage Package32 = new BitmapImage(new Uri("pack://application:,,,/ONBOXAppl;component/Resources/btnPackage32.png", UriKind.Absolute)); btnRenumberGrids.LargeImage = grid32; btnRenumberGrids.Image = grid16; btnRenumberGrids.ToolTip = Properties.RibbonLanguage.RenumberElements_Grids_ToolTip; btnRenumberGrids.LongDescription = Properties.RibbonLanguage.RenumberElements_Grids_Descrip; //sptRenumberParking.LongDescription = "Comando para renumerar vagas de estacionamento automaticamente."; btnRenumberBeams.LargeImage = beams32; btnRenumberBeams.Image = beams16; btnRenumberBeams.ToolTip = Properties.RibbonLanguage.RenumberElements_RenumberBeams_ToolTip; btnRenumberBeams.LongDescription = Properties.RibbonLanguage.RenumberElements_RenumberBeams_Descrip; btnRenumberColumns.LargeImage = Column32; btnRenumberColumns.Image = Column16; btnRenumberColumns.ToolTip = Properties.RibbonLanguage.RenumberElements_Columns_ToolTip; btnRenumberColumns.LongDescription = Properties.RibbonLanguage.RenumberElements_Columns_Descrip; btnRenumberColumnsSelect.LargeImage = Column32Select; btnRenumberColumnsSelect.Image = Column16Select; btnRenumberColumnsSelect.ToolTip = Properties.RibbonLanguage.RenumberElements_SelectColumns_ToolTip; btnRenumberColumnsSelect.LongDescription = Properties.RibbonLanguage.RenumberElements_SelectColumns_Descrip; btnCreateBeamsFromBuilding.Image = BeamsFromBuilding16; btnCreateBeamsFromBuilding.LargeImage = BeamsFromBuilding32; btnCreateBeamsFromBuilding.ToolTip = Properties.RibbonLanguage.StructuralElements_BeamsForBuilding_ToolTip; btnCreateBeamsFromBuilding.LongDescription = Properties.RibbonLanguage.StructuralElements_BeamsForBuilding_Descrip; btnCreateBeam.Image = createBeam16; btnCreateBeam.LargeImage = createBeam32; btnCreateBeam.ToolTip = Properties.RibbonLanguage.StructuralElements_BeamsFromWalls_ToolTip; btnCreateBeam.LongDescription = Properties.RibbonLanguage.StructuralElements_BeamsFromWalls_Descrip; //btnCreateBeamsUpdate.LargeImage = createUpdate32; //btnCreateBeamsUpdate.ToolTip = "Atualizar vigas estruturais"; //btnCreateBeamsUpdate.LongDescription = "Comando para atualizar vigas estruturais, o comando cria tipos automaticamente, é possivel também pré-dimensionar a altura da viga dentre outras opções."; btnCreateColumnsFromDwg.Image = ColumnsFromDwg16; btnCreateColumnsFromDwg.LargeImage = ColumnsFromDwg32; btnCreateColumnsFromDwg.ToolTip = Properties.RibbonLanguage.StructuralElements_ColumnsFromCAD_ToolTip; btnCreateColumnsFromDwg.LongDescription = Properties.RibbonLanguage.StructuralElements_ColumnsFromCAD_Descrip; btnElementsCopyLevel.Image = ElementsCopy16; btnElementsCopyLevel.LargeImage = ElementsCopy32; btnElementsCopyLevel.ToolTip = Properties.RibbonLanguage.ModifyElements_CopyBeamsToLevels_ToolTip; btnElementsCopyLevel.LongDescription = Properties.RibbonLanguage.ModifyElements_CopyBeamsToLevels_Descrip; btnElmentsJoin.Image = ElementsJoin16; btnElmentsJoin.LargeImage = ElementsJoin32; btnElmentsJoin.ToolTip = Properties.RibbonLanguage.ModifyElements_JoinElements_ToolTip; btnElmentsJoin.LongDescription = Properties.RibbonLanguage.ModifyElements_JoinElements_Descrip; btnElmentsSelectJoin.Image = ElementsSelectJoin16; btnElmentsSelectJoin.LargeImage = ElementsSelectJoin32; btnElmentsSelectJoin.ToolTip = Properties.RibbonLanguage.ModifyElements_SelectElementsToJoin_ToolTip; btnElmentsSelectJoin.LongDescription = Properties.RibbonLanguage.ModifyElements_SelectElementsToJoin_Descrip; btnCreateTopoFromPointCloud.Image = TopoFromPointCloud16; btnCreateTopoFromPointCloud.LargeImage = TopoFromPointCloud32; btnCreateTopoFromPointCloud.ToolTip = Properties.RibbonLanguage.Topography_SurfaceByPointCloud_ToolTip; btnCreateTopoFromPointCloud.LongDescription = Properties.RibbonLanguage.Topography_SurfaceByPointCloud_Descrip; btnCreateBeamsFromColumns.ToolTip = Properties.RibbonLanguage.StructuralElements_BeamsFromColumns_ToolTip; btnCreateBeamsFromColumns.LongDescription = Properties.RibbonLanguage.StructuralElements_BeamsFromColumns_Descrip; btnCreateBeamsFromColumns.Image = createBeamsFromColumns16; btnCreateBeamsFromColumns.LargeImage = createBeamsFromColumns32; //btnCreateTopoFromDwgMarks.ToolTip = "Criar topografia a partir de arquivos de CAD planimétricos"; //btnCreateTopoFromDwgMarks.LongDescription = "Comando para criar topografia a partir de arquivos CAD não altimétricos, ou seja, o arquivo de não contém cota Z, o comando lê o arquivo de texto mais próximo que contém informação de altura do ponto."; //btnCreateTopoFromDwgMarks.Image = TopoFromDWG16; //btnCreateTopoFromDwgMarks.LargeImage = TopoFromDWG32; btnTopoSlope.ToolTip = Properties.RibbonLanguage.Topography_SlopeByPads_ToolTip; btnTopoSlope.LongDescription = Properties.RibbonLanguage.Topography_SlopeByPads_Descrip; btnTopoSlope.Image = TopoSlope16; btnTopoSlope.LargeImage = TopoSlope32; btnONBOXSite.LargeImage = ONBOX32; btnONBOXSite.Image = ONBOX16; btnONBOXSite.ToolTip = Properties.RibbonLanguage.About_Site_ToolTip; btnONBOXSite.LongDescription = Properties.RibbonLanguage.About_Site_Descrip; btnInfo.LargeImage = INFO32; btnInfo.Image = INFO16; btnInfo.ToolTip = Properties.RibbonLanguage.About_Onbox_ToolTip; btnInfo.ToolTip = Properties.RibbonLanguage.About_Onbox_Descrip; btnPrivacy.LargeImage = privacy32; btnPrivacy.Image = privacy16; //btnProjectExamplesFolder.Image = ProjectExamples16; //btnProjectExamplesFolder.LargeImage = ProjectExamples32; //btnProjectExamplesFolder.ToolTip = Properties.RibbonLanguage.About_SampleProjects_ToolTip; //btnProjectExamplesFolder.LongDescription = Properties.RibbonLanguage.About_SampleProjects_Descrip; btnRevitZip.Image = Package16; btnRevitZip.LargeImage = Package32; btnRevitZip.ToolTip = Properties.RibbonLanguage.Manage_PackageProject_ToolTip; btnRevitZip.LongDescription = Properties.RibbonLanguage.Manage_PackageProject_Descrip; //SplitButtons btnRenumberParking.LargeImage = parking32; btnRenumberParking.Image = parking16; btnRenumberParking.ToolTip = Properties.RibbonLanguage.RenumberElements_RenumberParkingSpaces_ToolTip; btnRenumberParking.LongDescription = Properties.RibbonLanguage.RenumberElements_RenumberParkingSpaces_Descrip; btnRenumberBlockParking.LargeImage = parkingBlock32; btnRenumberBlockParking.Image = parkingBlock16; btnRenumberBlockParking.ToolTip = Properties.RibbonLanguage.RenumberElements_NearestSpaces_ToolTip; btnRenumberBlockParking.LongDescription = Properties.RibbonLanguage.RenumberElements_NearestSpaces_Descrip; btnRenumberClearParking.LargeImage = parkingDelete32; btnRenumberClearParking.Image = parkingDelete16; btnRenumberClearParking.ToolTip = Properties.RibbonLanguage.RenumberElements_ClearParkingNumbering_ToolTip; btnRenumberClearParking.LongDescription = Properties.RibbonLanguage.RenumberElements_ClearParkingNumbering_Descrip; foreach (RibbonPanel currentRibbonPanel in allProjectPanels) { if (currentRibbonPanel != null) { foreach (RibbonItem currentItem in currentRibbonPanel.GetItems()) { if (currentItem is PushButton) { PushButton currentPushButton = currentItem as PushButton; currentPushButton.AvailabilityClassName = "ONBOXAppl.ButtonAvailableOnProjectEnv"; } if (currentItem is SplitButton) { SplitButton currentSplitButton = currentItem as SplitButton; foreach (PushButton currentPushButton in currentSplitButton.GetItems()) { currentPushButton.AvailabilityClassName = "ONBOXAppl.ButtonAvailableOnProjectEnv"; } } } } } foreach (RibbonPanel currentRibbonPanel in allFreePanels) { if (currentRibbonPanel != null) { foreach (RibbonItem currentItem in currentRibbonPanel.GetItems()) { if (currentItem is PushButton) { PushButton currentPushButton = currentItem as PushButton; currentPushButton.AvailabilityClassName = "ONBOXAppl.ButtonAvailableAlways"; } if (currentItem is SplitButton) { SplitButton currentSplitButton = currentItem as SplitButton; foreach (PushButton currentPushButton in currentSplitButton.GetItems()) { currentPushButton.AvailabilityClassName = "ONBOXAppl.ButtonAvailableAlways"; } } } } } }