protected virtual void SetRibbonButtonStyleOnModulePluginLoaded(RibbonButton ribbonButton) { if (!this.tickedControllerToBeExecuted.Running) { RibbonButtonClickStatus clickStatus = this.tickedControllerToBeExecuted.PluginItem.ClickStatus; if (clickStatus == RibbonButtonClickStatus.NoCheckedOnClick) { ribbonButton.Checked = false; } else if (clickStatus == RibbonButtonClickStatus.ToggledCheckedOnClick) { ribbonButton.Checked = !ribbonButton.Checked; } else { ribbonButton.Checked = true; } } else { // if the parent (i.e. owner) of the ribbon button is not Quick Access bar if (ribbonButton.OwnerTab != null) { RibbonExtensionHelper.SetSingleRibbonButtonToCheckedStatus(this.ServiceProvider.RibbonMenu, ribbonButton.OwnerTab.Text, ribbonButton.Name); } else { RibbonExtensionHelper.SetAllRibbonButtonsToUncheckedStatus(this.ServiceProvider.RibbonMenu); } } }
protected virtual void DetachSubPluginItems(RibbonModulePluginItem runningModulePluginItem) { if (runningModulePluginItem.SubItems == null || runningModulePluginItem.SubItems.Count.Equals(0)) { return; } foreach (RibbonModulePluginItem subPluginItem in runningModulePluginItem.SubItems) { RibbonExtensionHelper.RemoveRibbonButton(this.ServiceProvider.RibbonMenu, subPluginItem); } }
protected virtual void AttachSubPluginItems(RibbonModulePluginItem tickedModulePluginItemToRun) { if (tickedModulePluginItemToRun.SubItems == null || tickedModulePluginItemToRun.SubItems.Count.Equals(0)) { return; } foreach (RibbonModulePluginItem subPluginItem in tickedModulePluginItemToRun.SubItems) { RibbonExtensionHelper.AddRibbonButton(this.ServiceProvider.RibbonMenu, subPluginItem, this.OnRibbonButtonClickCommand); } }