Beispiel #1
0
        /// <summary>
        /// Панель "Выноски"
        /// </summary>
        private static void AddLeadersPanel(RibbonTab ribbonTab)
        {
            var ribSourcePanel = new RibbonPanelSource {
                Title = Language.GetItem("tab15")
            };
            var ribPanel = new RibbonPanel {
                Source = ribSourcePanel
            };

            ribbonTab.Panels.Add(ribPanel);
            var ribRowPanel = new RibbonRowPanel();

            // mpNodalLeader
            var ribbonButton = GetBigButton(NodalLeader.GetDescriptor());

            if (ribbonButton != null)
            {
                ribRowPanel.Items.Add(ribbonButton);
            }

            // mpSecantNodalLeader
            ribbonButton = GetSmallButton(SecantNodalLeader.GetDescriptor());
            if (ribbonButton != null)
            {
                ribRowPanel.Items.Add(ribbonButton);
            }

            if (ribRowPanel.Items.Any())
            {
                ribSourcePanel.Items.Add(ribRowPanel);
            }
        }
        /// <summary>
        /// Singleton instance
        /// </summary>
        public static SecantNodalLeaderObjectOverrule Instance()
        {
            if (_instance != null)
            {
                return(_instance);
            }

            _instance = new SecantNodalLeaderObjectOverrule();

            // Фильтр "отлова" примитива по расширенным данным. Работает лучше, чем проверка вручную!
            _instance.SetXDataFilter(SecantNodalLeader.GetDescriptor().Name);
            return(_instance);
        }
 /// <summary>
 /// Проверка валидности примитива. Проверка происходит по наличию XData с определенным AppName
 /// </summary>
 /// <param name="overruledSubject">Instance of <see cref="RXObject"/></param>
 public override bool IsApplicable(RXObject overruledSubject)
 {
     return(ExtendedDataUtils.IsApplicable(overruledSubject, SecantNodalLeader.GetDescriptor().Name, true));
 }