private void ChkRibbon_OnUnchecked(object sender, RoutedEventArgs e) { UserConfigFile.SetValue("mpPlinesedit", "LoadRibbonPanel", false.ToString(), true); // unload ribbon PlinesEditRibbonBuilder.RemovePanelFromRibbon(false); }
private void ChkRibbon_OnChecked(object sender, RoutedEventArgs e) { UserConfigFile.SetValue("mpPlinesedit", "LoadRibbonPanel", true.ToString(), true); // load ribbon PlinesEditRibbonBuilder.AddPanelToRibbon(false, LvFunctions.ItemsSource as List <PlinesFunction>); }
private void AcApp_SystemVariableChanged(object sender, Autodesk.AutoCAD.ApplicationServices.SystemVariableChangedEventArgs e) { if (e.Name.Equals("COLORTHEME")) { if (ComponentManager.Ribbon != null) { _loadRibbonPanel = bool.TryParse(UserConfigFile.GetValue("mpPlinesedit", "LoadRibbonPanel"), out var b) && b; if (_loadRibbonPanel) { PlinesEditRibbonBuilder.RemovePanelFromRibbon(false); PlinesEditRibbonBuilder.AddPanelToRibbon(false, GetListOfFunctions()); } } } }
/* Обработчик события * Следит за событиями изменения окна автокада. * Используем его для того, чтобы "поймать" момент построения ленты, * учитывая, что наш плагин уже инициализировался */ private void ComponentManager_ItemInitialized(object sender, RibbonItemEventArgs e) { // Проверяем, что лента загружена if (ComponentManager.Ribbon != null) { _loadRibbonPanel = bool.TryParse(UserConfigFile.GetValue("mpPlinesedit", "LoadRibbonPanel"), out var b) && b; // Строим нашу вкладку // Ribbon if (_loadRibbonPanel) { PlinesEditRibbonBuilder.AddPanelToRibbon(true, GetListOfFunctions()); } // и раз уж лента запустилась, то отключаем обработчик событий // ComponentManager.ItemInitialized -= ComponentManager_ItemInitialized; } }