コード例 #1
0
        public Panel Panel(string panelTitle, RibbonItemNameConvention nameConvention = null, bool addSeparatorToExistingPanel = true)
        {
            var panels = systemTab == null
                             ? Ribbon.GetRibbonPanels(ribbonTab.Id)
                             : Ribbon.GetRibbonPanels(systemTab.Value);

            foreach (RibbonPanel panel in panels)
            {
                if (panel.Name.Equals(panelTitle))
                {
                    if (addSeparatorToExistingPanel)
                    {
                        panel.AddSeparator();
                    }

                    return(new Panel(this, panel, nameConvention));
                }
            }

            var ribbonPanel = systemTab == null
                                  ? Ribbon.CreateRibbonPanel(ribbonTab.Name ?? ribbonTab.Title, panelTitle)
                                  : Ribbon.CreateRibbonPanel(systemTab.Value, panelTitle);

            return(new Panel(this, ribbonPanel, nameConvention));
        }
コード例 #2
0
        public RibbonItem Find <TExternalCommandClass>(RibbonItemNameConvention convention)
            where TExternalCommandClass : class, IExternalCommand
        {
            if (convention == null)
            {
                throw new NameConventionNotSpecifiedException();
            }

            var itemName = convention.GetRibbonItemName <TExternalCommandClass>();

            return(Find(itemName));
        }
コード例 #3
0
 internal Panel(Tab tab, RibbonPanel panel, RibbonItemNameConvention nameConvention)
 {
     Tab    = tab;
     Source = panel;
     this.nameConvention = nameConvention;
 }
コード例 #4
0
 internal StackedItem(RibbonItemNameConvention nameConvention)
 {
     this.nameConvention = nameConvention;
     Buttons             = new List <RibbonToolItem>();
 }
コード例 #5
0
 internal PulldownButton(string name, string text, RibbonItemNameConvention nameConvention) :
     base(name, text, null)
 {
     this.nameConvention = nameConvention;
 }