public MenuCheckBox(UIElement inputBindingOwner, Codon codon, object caller, IReadOnlyCollection <ICondition> conditions) : base(codon, caller, conditions) { this.Command = CommandWrapper.CreateCommand(codon, conditions); this.CommandParameter = caller; cmd = CommandWrapper.Unwrap(this.Command) as ICheckableMenuCommand; if (cmd != null) { isCheckedChangedHandler = cmd_IsCheckedChanged; cmd.IsCheckedChanged += isCheckedChangedHandler; this.IsChecked = cmd.IsChecked(caller); } if (!string.IsNullOrEmpty(codon.Properties["shortcut"])) { KeyGesture kg = MenuService.ParseShortcut(codon.Properties["shortcut"]); MenuCommand.AddGestureToInputBindingOwner(inputBindingOwner, kg, this.Command, null); this.InputGestureText = MenuService.GetDisplayStringForShortcut(kg); } }
public ToolBarSplitButton(Codon codon, object caller, IList submenu) { ToolTipService.SetShowOnDisabled(this, true); this.codon = codon; this.caller = caller; this.Content = ToolBarService.CreateToolBarItemContent(codon); if (codon.Properties.Contains("name")) { this.Name = codon.Properties["name"]; } menuCommand = (ICommand)codon.AddIn.CreateObject(codon.Properties["class"]); menuCommand.Owner = this; this.Command = new CommandWrapper(codon, caller, menuCommand); this.DropDownMenu = MenuService.CreateContextMenu(submenu); UpdateText(); }
public ToolBarSplitButton(Codon codon, object caller, IList submenu) { ToolTipService.SetShowOnDisabled(this, true); this.codon = codon; this.caller = caller; if (codon.Properties.Contains("icon")) { var image = PresentationResourceService.GetImage(StringParser.Parse(codon.Properties["icon"])); image.Height = 16; image.SetResourceReference(StyleProperty, ToolBarService.ImageStyleKey); this.Content = new PixelSnapper(image); } menuCommand = (ICommand)codon.AddIn.CreateObject(codon.Properties["class"]); menuCommand.Owner = this; this.Command = new CommandWrapper(codon, caller, menuCommand); this.DropDownMenu = MenuService.CreateContextMenu(submenu); UpdateText(); }
public ToolBarButton(UIElement inputBindingOwner, Codon codon, object caller, bool createCommand) { ToolTipService.SetShowOnDisabled(this, true); this.codon = codon; this.caller = caller; this.Command = CommandWrapper.GetCommand(codon, caller, createCommand); this.Content = ToolBarService.CreateToolBarItemContent(codon); if (codon.Properties.Contains("name")) { this.Name = codon.Properties["name"]; } if (!string.IsNullOrEmpty(codon.Properties["shortcut"])) { KeyGesture kg = MenuService.ParseShortcut(codon.Properties["shortcut"]); MenuCommand.AddGestureToInputBindingOwner(inputBindingOwner, kg, this.Command, GetFeatureName()); this.inputGestureText = kg.GetDisplayStringForCulture(Thread.CurrentThread.CurrentUICulture); } UpdateText(); SetResourceReference(FrameworkElement.StyleProperty, ToolBar.ButtonStyleKey); }
public static void UpdateStatus(IEnumerable toolBarItems) { MenuService.UpdateStatus(toolBarItems); }