Class ActionsConfiguratorsManager


  • @OpenApi
    public final class ActionsConfiguratorsManager
    extends java.lang.Object
    The singleton class for adding/removing configurations of actions managers in MagicDraw application.
    • Field Detail

      • mConfigurators

        private final java.util.Map<java.lang.String,​java.util.List<ConfiguratorWithPriority>> mConfigurators
        Map of existing configurations, key is configuration name, value is array of configurators.
      • mDiagramToolbarActionsProviders

        private final java.util.Map<java.lang.String,​java.util.List<CustomizableDiagramToolbarActionsProvider>> mDiagramToolbarActionsProviders
        Map customizable diagrams toolbar actions provider according diagram type.
      • CUSTOMIZABLE_SHORTCUTS

        private static final java.lang.String CUSTOMIZABLE_SHORTCUTS
        See Also:
        Constant Field Values
      • CONTAINMENT_BROWSER_CONTEXT

        private static final java.lang.String CONTAINMENT_BROWSER_CONTEXT
        See Also:
        Constant Field Values
      • CONTAINMENT_BROWSER_SHORTCUTS

        private static final java.lang.String CONTAINMENT_BROWSER_SHORTCUTS
        See Also:
        Constant Field Values
      • CONTAINMENT_BROWSER_TOOLBAR

        private static final java.lang.String CONTAINMENT_BROWSER_TOOLBAR
        See Also:
        Constant Field Values
      • INHERITANCE_BROWSER_CONTEXT

        private static final java.lang.String INHERITANCE_BROWSER_CONTEXT
        See Also:
        Constant Field Values
      • INHERITANCE_BROWSER_SHORTCUTS

        private static final java.lang.String INHERITANCE_BROWSER_SHORTCUTS
        See Also:
        Constant Field Values
      • INHERITANCE_BROWSER_TOOLBAR

        private static final java.lang.String INHERITANCE_BROWSER_TOOLBAR
        See Also:
        Constant Field Values
      • LOCK_VIEW_BROWSER_CONTEXT

        private static final java.lang.String LOCK_VIEW_BROWSER_CONTEXT
        See Also:
        Constant Field Values
      • LOCK_VIEW_BROWSER_SHORTCUTS

        private static final java.lang.String LOCK_VIEW_BROWSER_SHORTCUTS
        See Also:
        Constant Field Values
      • LOCK_VIEW_BROWSER_TOOLBAR

        private static final java.lang.String LOCK_VIEW_BROWSER_TOOLBAR
        See Also:
        Constant Field Values
      • DIAGRAMS_BROWSER_CONTEXT

        private static final java.lang.String DIAGRAMS_BROWSER_CONTEXT
        See Also:
        Constant Field Values
      • DIAGRAMS_BROWSER_SHORTCUTS

        private static final java.lang.String DIAGRAMS_BROWSER_SHORTCUTS
        See Also:
        Constant Field Values
      • DIAGRAMS_BROWSER_TOOLBAR

        private static final java.lang.String DIAGRAMS_BROWSER_TOOLBAR
        See Also:
        Constant Field Values
      • EXTENSIONS_BROWSER_CONTEXT

        private static final java.lang.String EXTENSIONS_BROWSER_CONTEXT
        See Also:
        Constant Field Values
      • EXTENSIONS_BROWSER_SHORTCUTS

        private static final java.lang.String EXTENSIONS_BROWSER_SHORTCUTS
        See Also:
        Constant Field Values
      • EXTENSIONS_BROWSER_TOOLBAR

        private static final java.lang.String EXTENSIONS_BROWSER_TOOLBAR
        See Also:
        Constant Field Values
      • SEARCH_BROWSER_CONTEXT

        private static final java.lang.String SEARCH_BROWSER_CONTEXT
        See Also:
        Constant Field Values
      • SEARCH_BROWSER_SHORTCUTS

        private static final java.lang.String SEARCH_BROWSER_SHORTCUTS
        See Also:
        Constant Field Values
      • SEARCH_BROWSER_TOOLBAR

        private static final java.lang.String SEARCH_BROWSER_TOOLBAR
        See Also:
        Constant Field Values
      • BASE_DIAGRAM_CONTEXT

        private static final java.lang.String BASE_DIAGRAM_CONTEXT
        See Also:
        Constant Field Values
      • BASE_DIAGRAM_TOOLBAR_CONTEXT

        private static final java.lang.String BASE_DIAGRAM_TOOLBAR_CONTEXT
        See Also:
        Constant Field Values
      • DIAGRAM_COMMAND_BAR

        private static final java.lang.String DIAGRAM_COMMAND_BAR
        See Also:
        Constant Field Values
      • SYMBOL_DIAGRAM_COMMAND_BAR

        private static final java.lang.String SYMBOL_DIAGRAM_COMMAND_BAR
        See Also:
        Constant Field Values
      • ANY_DIAGRAM_COMMAND_BAR

        private static final java.lang.String ANY_DIAGRAM_COMMAND_BAR
        See Also:
        Constant Field Values
      • DIAGRAM_NAVIGATION_TOOLBAR

        private static final java.lang.String DIAGRAM_NAVIGATION_TOOLBAR
        See Also:
        Constant Field Values
      • ANY_DIAGRAM_SHORTCUTS

        private static final java.lang.String ANY_DIAGRAM_SHORTCUTS
        See Also:
        Constant Field Values
      • SYMBOL_DIAGRAM_SHORTCUTS

        private static final java.lang.String SYMBOL_DIAGRAM_SHORTCUTS
        See Also:
        Constant Field Values
      • CREATE_DIAGRAM_DIALOG

        private static final java.lang.String CREATE_DIAGRAM_DIALOG
        See Also:
        Constant Field Values
      • DSL_ACTIONS_CONFIGURATOR

        private static final java.lang.String DSL_ACTIONS_CONFIGURATOR
        See Also:
        Constant Field Values
      • COMPARATOR_WITH_PRIORITY

        public static final com.nomagic.magicdraw.actions.ConfiguratorWithPriorityComparator COMPARATOR_WITH_PRIORITY
    • Constructor Detail

      • ActionsConfiguratorsManager

        private ActionsConfiguratorsManager()
    • Method Detail

      • addTargetElementAMConfigurator

        @OpenApi
        public void addTargetElementAMConfigurator​(java.lang.String diagramType,
                                                   TargetElementAMConfigurator configurator)
        Adds new drawable targets configurator in context toolbar for given diagram type
        Parameters:
        diagramType - diagram type
        configurator - configurator to be added.
      • removeTargetElementAMConfigurator

        @OpenApi
        public void removeTargetElementAMConfigurator​(java.lang.String diagramType,
                                                      TargetElementAMConfigurator configurator)
        Removes drawable targets configurator for given diagram type
        Parameters:
        diagramType - diagram type
        configurator - configurator to be added.
      • configureTargetElementAM

        @OpenApi
        public void configureTargetElementAM​(java.lang.String diagramType,
                                             ActionsManager manager,
                                             PresentationElement requestor,
                                             java.lang.String pathActionID)
        Configures given diagram type drawable targets.
        Parameters:
        diagramType - diagram type
        manager - manager to be configured.
        requestor - - object which requests actions, can be null if requestor is diagram window.
      • addDiagramContextToolbarConfigurator

        @OpenApi
        public void addDiagramContextToolbarConfigurator​(java.lang.String diagramType,
                                                         DiagramContextToolbarAMConfigurator configurator)
        Adds new toolbar configurator for given diagram type.
        Parameters:
        diagramType - diagram type
        configurator - configurator to be added.
      • addBaseDiagramContextToolbarConfigurator

        public void addBaseDiagramContextToolbarConfigurator​(java.lang.String diagramType,
                                                             DiagramContextToolbarAMConfigurator configurator)
        Adds new toolbar configurator for given diagram type. This configurator will be added to the given type of the diagram and to all derived diagram types.
        Parameters:
        diagramType - diagram type
        configurator - new configurator to add.
      • getCreatableDiagramTypes

        private static java.util.stream.Stream<java.lang.String> getCreatableDiagramTypes​(java.lang.String diagramType)
      • removeDiagramContextToolbarConfigurator

        @OpenApi
        public void removeDiagramContextToolbarConfigurator​(java.lang.String diagramType,
                                                            DiagramContextToolbarAMConfigurator configurator)
        Removes configurator from given diagram toolbar configurators.
        Parameters:
        diagramType - diagram type
        configurator - configurator to be removed.
      • removeBaseDiagramContextToolbarConfigurator

        @OpenApi
        public void removeBaseDiagramContextToolbarConfigurator​(java.lang.String diagramType,
                                                                DiagramContextToolbarAMConfigurator configurator)
        Removes given configurator from given diagram type context configurators. This configurator will be removed to the given type of the
        Parameters:
        diagramType - diagram type
        configurator - configurator to remove.
      • configureDiagramContextToolbarAM

        public void configureDiagramContextToolbarAM​(java.lang.String diagramType,
                                                     ActionsManager manager,
                                                     PresentationElement requestor)
        Configures given diagram type context menu.
        Parameters:
        diagramType - diagram type
        manager - manager to be configured.
        requestor - - object which requests actions, can be null if requestor is diagram window.
      • addDiagramContextConfigurator

        @OpenApi
        public void addDiagramContextConfigurator​(java.lang.String diagramType,
                                                  DiagramContextAMConfigurator configurator)
        Adds new diagram context configurator for given diagram type.
        Parameters:
        diagramType - diagram type
        configurator - new configurator to add.
      • addBaseDiagramContextConfigurator

        @OpenApi
        public void addBaseDiagramContextConfigurator​(java.lang.String diagramType,
                                                      DiagramContextAMConfigurator configurator)
        Adds new diagram context configurator for given diagram type. This configurator will be added to the given type of the diagram and to all derived diagram types.
        Parameters:
        diagramType - diagram type
        configurator - new configurator to add.
      • removeDiagramContextConfigurator

        @OpenApi
        public void removeDiagramContextConfigurator​(java.lang.String diagramType,
                                                     DiagramContextAMConfigurator configurator)
        Removes given configurator from given diagram type context configurators.
        Parameters:
        diagramType - diagram type
        configurator - configurator to remove.
      • removeBaseDiagramContextConfigurator

        @OpenApi
        public void removeBaseDiagramContextConfigurator​(java.lang.String diagramType,
                                                         DiagramContextAMConfigurator configurator)
        Removes given configurator from given diagram type context configurators. This configurator will be removed to the given type of the
        Parameters:
        diagramType - diagram type
        configurator - configurator to remove.
      • configureDiagramContextAM

        public void configureDiagramContextAM​(java.lang.String diagramType,
                                              ActionsManager manager,
                                              DiagramPresentationElement diagram,
                                              PresentationElement[] selected,
                                              @CheckForNull
                                              PresentationElement requestor)
        Configures given diagram type context menu.
        Parameters:
        diagramType - diagram type
        manager - manager to be configured.
        diagram - the given diagram.
        selected - selected objects in diagram.
        requestor - - object which requests actions, can be null if requestor is diagram window.
      • configureDiagramCommandBarAM

        public void configureDiagramCommandBarAM​(@CheckForNull
                                                 java.lang.String diagramType,
                                                 ActionsManager manager)
        Configures given diagram type context menu.
        Parameters:
        diagramType - diagram type
        manager - manager to be configured.
      • collectDiagramConfigurators

        private <T extends ConfiguratorWithPriority> java.util.List<T> collectDiagramConfigurators​(@CheckForNull
                                                                                                   java.lang.String diagramType,
                                                                                                   @CheckForNull
                                                                                                   java.lang.String anyDiagramKey,
                                                                                                   @CheckForNull
                                                                                                   java.lang.String symbolDiagramKey,
                                                                                                   java.lang.String diagramTypeKey)
      • addDiagramCommandBarConfigurator

        @OpenApi
        @Deprecated
        public void addDiagramCommandBarConfigurator​(AMConfigurator configurator)
        Deprecated.
        deprecated because of too generic name. Use addSymbolDiagramCommandBarConfigurator(AMConfigurator)
        Add configurator for any type of "symbol" diagrams Those do not include tables, maps, matrices and etc.
        Parameters:
        configurator - configurator to be added.
      • removeDiagramCommandBarConfigurator

        @OpenApi
        @Deprecated
        public void removeDiagramCommandBarConfigurator​(AMConfigurator configurator)
        Deprecated.
        deprecated because of too generic name. Use removeSymbolDiagramCommandBarConfigurator(AMConfigurator)
        Remove configurator for any type "symbol" diagrams Those do not include tables, maps, matrices and etc.
        Parameters:
        configurator - configurator to be removed.
      • addSymbolDiagramCommandBarConfigurator

        @OpenApi
        public void addSymbolDiagramCommandBarConfigurator​(AMConfigurator configurator)
        Add configurator for any type of "symbol" diagrams Those do not include tables, maps, matrices and etc.
        Parameters:
        configurator - configurator to be added.
      • removeSymbolDiagramCommandBarConfigurator

        @OpenApi
        public void removeSymbolDiagramCommandBarConfigurator​(AMConfigurator configurator)
        Remove configurator for any type "symbol" diagrams Those do not include tables, maps, matrices and etc.
        Parameters:
        configurator - configurator to be removed.
      • addAnyDiagramCommandBarConfigurator

        @OpenApi
        public void addAnyDiagramCommandBarConfigurator​(AMConfigurator configurator)
        Registers configurator for any type of diagrams.
        Parameters:
        configurator - configurator to be added.
      • removeAnyDiagramCommandBarConfigurator

        @OpenApi
        public void removeAnyDiagramCommandBarConfigurator​(AMConfigurator configurator)
        Remove configurator for any type diagrams.
        Parameters:
        configurator - configurator to be removed.
      • addDiagramCommandBarConfigurator

        @OpenApi
        public void addDiagramCommandBarConfigurator​(java.lang.String diagramType,
                                                     AMConfigurator configurator)
        Add configurator for diagram of given type.
        Parameters:
        diagramType - diagram type
        configurator - configurator to be added.
      • removeDiagramCommandBarConfigurator

        @OpenApi
        public void removeDiagramCommandBarConfigurator​(java.lang.String diagramType,
                                                        AMConfigurator configurator)
        Remove configurator for diagram of given type.
        Parameters:
        diagramType - diagram type
        configurator - configurator to be removed.
      • addDiagramToolbarConfigurator

        @OpenApi
        public void addDiagramToolbarConfigurator​(java.lang.String diagramType,
                                                  AMConfigurator configurator)
        Adds new toolbar configurator for given diagram type.
        Parameters:
        diagramType - diagram type
        configurator - configurator to be added.
      • addBaseDiagramToolbarConfigurator

        public void addBaseDiagramToolbarConfigurator​(java.lang.String diagramType,
                                                      AMConfigurator configurator)
        Adds new toolbar configurator for given diagram type.
        Parameters:
        diagramType - diagram type
        configurator - configurator to be added.
      • removeDiagramToolbarConfigurator

        @OpenApi
        public void removeDiagramToolbarConfigurator​(java.lang.String diagramType,
                                                     AMConfigurator configurator)
        Removes configurator from given diagram toolbar configurators.
        Parameters:
        diagramType - diagram type
        configurator - configurator to be removed.
      • configureDiagramToolbarAM

        public void configureDiagramToolbarAM​(java.lang.String diagramType,
                                              ActionsManager manager)
        Configures given diagram type toolbar.
        Parameters:
        diagramType - diagram type
        manager - manager to be configured.
      • configureDSLToolbarAM

        private void configureDSLToolbarAM​(java.lang.String diagramType,
                                           ActionsManager manager)
      • getDSLToolbarConfigurator

        private void getDSLToolbarConfigurator​(ActionsManager manager,
                                               java.lang.String configuratorName,
                                               java.lang.String diagramType)
      • addAnyDiagramShortcutsConfigurator

        @OpenApi
        public void addAnyDiagramShortcutsConfigurator​(AMConfigurator configurator)
        Adds configurator for any type diagram.
        Parameters:
        configurator - configurator to be added.
      • removeAnyDiagramShortcutsConfigurator

        @OpenApi
        public void removeAnyDiagramShortcutsConfigurator​(AMConfigurator configurator)
        Removes configurator from any type diagram.
        Parameters:
        configurator - configurator to be removed.
      • addSymbolDiagramShortcutsConfigurator

        @OpenApi
        public void addSymbolDiagramShortcutsConfigurator​(AMConfigurator configurator)
        Adds configurator for any "symbol" diagram. Those diagrams do not include tables, maps, matrices and etc.
        Parameters:
        configurator - configurator to be added.
      • removeSymbolDiagramShortcutsConfigurator

        @OpenApi
        public void removeSymbolDiagramShortcutsConfigurator​(AMConfigurator configurator)
        Removes configurator from any "symbol" diagram. Those diagrams do not include tables, maps, matrices and etc.
        Parameters:
        configurator - configurator to be removed.
      • addDiagramShortcutsConfigurator

        @OpenApi
        public void addDiagramShortcutsConfigurator​(java.lang.String diagramType,
                                                    AMConfigurator configurator)
        Adds new shortcuts configurator for given diagram type.
        Parameters:
        diagramType - diagram type
        configurator - configurator to be added.
      • removeDiagramShortcutsConfigurator

        @OpenApi
        public void removeDiagramShortcutsConfigurator​(java.lang.String diagramType,
                                                       AMConfigurator configurator)
        Removes configurator from given diagram type shortcuts configurators.
        Parameters:
        diagramType - diagram type
        configurator - configurator to be removed.
      • configureDiagramShortcutsAM

        public void configureDiagramShortcutsAM​(java.lang.String diagramType,
                                                ActionsManager manager)
        Configures given diagram type shortcuts.
        Parameters:
        diagramType - diagram type
        manager - manager to be configured.
      • configureSpecificDiagramShortcutsAM

        public void configureSpecificDiagramShortcutsAM​(java.lang.String diagramType,
                                                        ActionsManager manager)
        Configures only given diagram type shortcuts. Does not take into account any super type shortcuts or shortcuts for any diagram.
        Parameters:
        diagramType - diagram type
        manager - manager to be configured.
      • addInheritanceBrowserContextConfigurator

        @OpenApi
        public void addInheritanceBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Adds new context configurator to inheritance browser.
        Parameters:
        configurator - configurator to be added.
      • removeInheritanceBrowserContextConfigurator

        @OpenApi
        public void removeInheritanceBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Removes context configurator from inheritance browser.
        Parameters:
        configurator - configurator to be removed.
      • addDiagramsBrowserContextConfigurator

        @OpenApi
        public void addDiagramsBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Adds new context configurator to diagrams browser.
        Parameters:
        configurator - configurator to be added.
      • removeDiagramsBrowserContextConfigurator

        @OpenApi
        public void removeDiagramsBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Removes context configurator from diagrams browser.
        Parameters:
        configurator - configurator to be removed.
      • addLockViewBrowserContextConfigurator

        @OpenApi
        public void addLockViewBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Adds new context configurator to lock view browser.
        Parameters:
        configurator - configurator to be added.
      • removeLockViewBrowserContextConfigurator

        @OpenApi
        public void removeLockViewBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Removes context configurator from lock view browser.
        Parameters:
        configurator - configurator to be removed.
      • addContainmentBrowserContextConfigurator

        @OpenApi
        public void addContainmentBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Adds new context configurator to containment browser.
        Parameters:
        configurator - configurator to be added.
      • removeContainmentBrowserContextConfigurator

        @OpenApi
        public void removeContainmentBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Removes context configurator from containment browser.
        Parameters:
        configurator - configurator to be removed.
      • addExtensionsBrowserContextConfigurator

        @OpenApi
        public void addExtensionsBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Adds new context configurator to extensions browser.
        Parameters:
        configurator - configurator to be added.
      • removeExtensionsBrowserContextConfigurator

        @OpenApi
        public void removeExtensionsBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Removes context configurator from extensions browser.
        Parameters:
        configurator - configurator to be removed.
      • addSearchBrowserContextConfigurator

        @OpenApi
        public void addSearchBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Adds new context configurator for search browser.
        Parameters:
        configurator - configurator to be added.
      • removeSearchBrowserContextConfigurator

        @OpenApi
        public void removeSearchBrowserContextConfigurator​(BrowserContextAMConfigurator configurator)
        Removes context configurator from search browser.
        Parameters:
        configurator - configurator to be removed.
      • configureContainmentBrowserContextAM

        public void configureContainmentBrowserContextAM​(ActionsManager manager,
                                                         Tree browser)
        Configures containment browser menu.
        Parameters:
        manager - manager to be configured.
      • configureDiagramsBrowserContextAM

        public void configureDiagramsBrowserContextAM​(ActionsManager manager,
                                                      Tree browser)
        Configures containment browser menu.
        Parameters:
        manager - manager to be configured.
      • configureInheritanceBrowserContextAM

        public void configureInheritanceBrowserContextAM​(ActionsManager manager,
                                                         Tree browser)
        Configures inheritance browser menu.
        Parameters:
        manager - manager to be configured.
      • configureLockViewBrowserContextAM

        public void configureLockViewBrowserContextAM​(ActionsManager manager,
                                                      Tree browser)
        Configures inheritance browser menu.
        Parameters:
        manager - manager to be configured.
      • configureExtensionsBrowserContextAM

        public void configureExtensionsBrowserContextAM​(ActionsManager manager,
                                                        Tree browser)
        Configures inheritance browser menu.
        Parameters:
        manager - manager to be configured.
      • configureSearchBrowserContextAM

        public void configureSearchBrowserContextAM​(ActionsManager manager,
                                                    Tree browser)
        Configures search browser menu.
        Parameters:
        manager - manager to be configured.
      • addInheritanceBrowserToolbarConfigurator

        @OpenApi
        public void addInheritanceBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Adds new context configurator to inheritance browser.
        Parameters:
        configurator - configurator to be added.
      • removeInheritanceBrowserToolbarConfigurator

        @OpenApi
        public void removeInheritanceBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Removes context configurator from inheritance browser.
        Parameters:
        configurator - configurator to be removed.
      • addDiagramsBrowserToolbarConfigurator

        @OpenApi
        public void addDiagramsBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Adds new Toolbar configurator to diagrams browser.
        Parameters:
        configurator - configurator to be added.
      • removeDiagramsBrowserToolbarConfigurator

        @OpenApi
        public void removeDiagramsBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Removes Toolbar configurator from diagrams browser.
        Parameters:
        configurator - configurator to be removed.
      • addLockViewBrowserToolbarConfigurator

        @OpenApi
        public void addLockViewBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Adds new context configurator to inheritance browser.
        Parameters:
        configurator - configurator to be added.
      • removeLockViewBrowserToolbarConfigurator

        @OpenApi
        public void removeLockViewBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Removes context configurator from inheritance browser.
        Parameters:
        configurator - configurator to be removed.
      • addContainmentBrowserToolbarConfigurator

        @OpenApi
        public void addContainmentBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Adds new Toolbar configurator to containment browser.
        Parameters:
        configurator - configurator to be added.
      • removeContainmentBrowserToolbarConfigurator

        @OpenApi
        public void removeContainmentBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Removes Toolbar configurator from containment browser.
        Parameters:
        configurator - configurator to be removed.
      • addExtensionsBrowserToolbarConfigurator

        @OpenApi
        public void addExtensionsBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Adds new Toolbar configurator to extensions browser.
        Parameters:
        configurator - configurator to be added.
      • removeExtensionsBrowserToolbarConfigurator

        @OpenApi
        public void removeExtensionsBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Removes Toolbar configurator from extensions browser.
        Parameters:
        configurator - configurator to be removed.
      • addSearchBrowserToolbarConfigurator

        @OpenApi
        public void addSearchBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Adds new Toolbar configurator for search browser.
        Parameters:
        configurator - configurator to be added.
      • removeSearchBrowserToolbarConfigurator

        @OpenApi
        public void removeSearchBrowserToolbarConfigurator​(BrowserToolbarAMConfigurator configurator)
        Removes Toolbar configurator from search browser.
        Parameters:
        configurator - configurator to be removed.
      • configureContainmentBrowserToolbarAM

        public void configureContainmentBrowserToolbarAM​(ActionsManager manager,
                                                         Tree browser)
        Configures containment browser menu.
        Parameters:
        manager - manager to be configured.
      • configureDiagramsBrowserToolbarAM

        public void configureDiagramsBrowserToolbarAM​(ActionsManager manager,
                                                      Tree browser)
        Configures containment browser menu.
        Parameters:
        manager - manager to be configured.
      • configureInheritanceBrowserToolbarAM

        public void configureInheritanceBrowserToolbarAM​(ActionsManager manager,
                                                         Tree browser)
        Configures inheritance browser menu.
        Parameters:
        manager - manager to be configured.
      • configureLockViewBrowserToolbarAM

        public void configureLockViewBrowserToolbarAM​(ActionsManager manager,
                                                      Tree browser)
        Configures inheritance browser menu.
        Parameters:
        manager - manager to be configured.
      • configureExtensionsBrowserToolbarAM

        public void configureExtensionsBrowserToolbarAM​(ActionsManager manager,
                                                        Tree browser)
        Configures inheritance browser menu.
        Parameters:
        manager - manager to be configured.
      • configureSearchBrowserToolbarAM

        public void configureSearchBrowserToolbarAM​(ActionsManager manager,
                                                    Tree browser)
        Configures search browser menu.
        Parameters:
        manager - manager to be configured.
      • addInheritanceBrowserShortcutsConfigurator

        @OpenApi
        public void addInheritanceBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Adds new shortcuts configurator to inheritance browser.
        Parameters:
        configurator - configurator to be added.
      • removeInheritanceBrowserShortcutsConfigurator

        @OpenApi
        public void removeInheritanceBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Removes shortcuts configurator from inheritance browser.
        Parameters:
        configurator - configurator to be removed.
      • addDiagramsBrowserShortcutsConfigurator

        @OpenApi
        public void addDiagramsBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Adds new shortcuts configurator to diagrams browser.
        Parameters:
        configurator - configurator to be added.
      • removeDiagramsBrowserShortcutsConfigurator

        @OpenApi
        public void removeDiagramsBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Removes shortcuts configurator from diagrams browser.
        Parameters:
        configurator - configurator to be removed.
      • addLockViewBrowserShortcutsConfigurator

        @OpenApi
        public void addLockViewBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Adds new shortcuts configurator to lock view browser.
        Parameters:
        configurator - configurator to be added.
      • removeLockViewBrowserShortcutsConfigurator

        @OpenApi
        public void removeLockViewBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Removes shortcuts configurator from lock view browser.
        Parameters:
        configurator - configurator to be removed.
      • addExtensionsBrowserShortcutsConfigurator

        @OpenApi
        public void addExtensionsBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Adds new shortcuts configurator to extensions browser.
        Parameters:
        configurator - configurator to be added.
      • removeExtensionsBrowserShortcutsConfigurator

        @OpenApi
        public void removeExtensionsBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Removes shortcuts configurator from extensions browser.
        Parameters:
        configurator - configurator to be removed.
      • addSearchBrowserShortcutsConfigurator

        @OpenApi
        public void addSearchBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Adds new shortcuts configurator to search browser.
        Parameters:
        configurator - configurator to be added.
      • removeSearchBrowserShortcutsConfigurator

        @OpenApi
        public void removeSearchBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Removes shortcuts configurator from search browser.
        Parameters:
        configurator - configurator to be removed.
      • addContainmentBrowserShortcutsConfigurator

        @OpenApi
        public void addContainmentBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Adds new shortcuts configurator to containment browser.
        Parameters:
        configurator - configurator to be added.
      • removeContainmentBrowserShortcutsConfigurator

        @OpenApi
        public void removeContainmentBrowserShortcutsConfigurator​(AMConfigurator configurator)
        Removes shortcuts configurator from containment browser.
        Parameters:
        configurator - configurator to be removed.
      • configureContainmentBrowserShortcutsAM

        public void configureContainmentBrowserShortcutsAM​(ActionsManager manager)
        Configures containment browser shortcuts.
        Parameters:
        manager - manager to be configured.
      • configureDiagramsBrowserShortcutsAM

        public void configureDiagramsBrowserShortcutsAM​(ActionsManager manager)
        Configures diagrams browser shortcuts.
        Parameters:
        manager - manager to be configured.
      • configureInheritanceBrowserShortcutsAM

        public void configureInheritanceBrowserShortcutsAM​(ActionsManager manager)
        Configures inheritance browser shortcuts.
        Parameters:
        manager - manager to be configured.
      • configureLockViewBrowserShortcutsAM

        public void configureLockViewBrowserShortcutsAM​(ActionsManager manager)
        Configures lock view browser shortcuts.
        Parameters:
        manager - manager to be configured.
      • configureExtensionsBrowserShortcutsAM

        public void configureExtensionsBrowserShortcutsAM​(ActionsManager manager)
        Configures extensions browser shortcuts.
        Parameters:
        manager - manager to be configured.
      • configureSearchBrowserShortcutsAM

        public void configureSearchBrowserShortcutsAM​(ActionsManager manager)
        Configures search browser shortcuts.
        Parameters:
        manager - manager to be configured.
      • removeMainMenuConfigurator

        @OpenApi
        public void removeMainMenuConfigurator​(AMConfigurator configurator)
        Removes configurator from main menu configuration.
        Parameters:
        configurator - configurator to remove.
      • addMainMenuConfigurator

        @OpenApi
        public void addMainMenuConfigurator​(AMConfigurator configurator)
        Adds configurator to main menu. This method should be called before menu becomes visible.
        Parameters:
        configurator - configurator will be added.
      • configureMenuActionsManager

        public void configureMenuActionsManager​(ActionsManager manager)
        Configures main menu.
        Parameters:
        manager - manager to be configured.
      • addCreateDiagramDialogConfigurator

        @OpenApi
        public void addCreateDiagramDialogConfigurator​(AMConfigurator configurator)
        Adds configurator to configure actions inside the dialog which opens when action in main menu or toolbar "Create Diagram" is executed. To configure actions inside context menu please see addDialogActionsConfigurator(String, ActionsManager, AMConfigurator)
        Parameters:
        configurator - actions configurator
      • removeCreateDiagramDialogConfigurator

        @OpenApi
        public void removeCreateDiagramDialogConfigurator​(AMConfigurator configurator)
        Remove configurator to configure actions inside "Create Diagram" dialog.
        Parameters:
        configurator - configurator to be removed
      • configureCreateDiagramDialogActionsManager

        public void configureCreateDiagramDialogActionsManager​(ActionsManager manager)
        Configures "Create Diagram" dialog actions
        Parameters:
        manager - manager to be configured
      • removeDiagramNavigationConfigurator

        @OpenApi
        public void removeDiagramNavigationConfigurator​(AMConfigurator configurator)
        Removes configurator from diagram navigation configuration.
        Parameters:
        configurator - configurator to remove.
      • addDiagramNavigationConfigurator

        @OpenApi
        public void addDiagramNavigationConfigurator​(AMConfigurator configurator)
        Adds configurator to diagram navigation toolbar. This method should be called before menu becomes visible.
        Parameters:
        configurator - configurator to add.
      • configureDiagramNavigationActionsManager

        public void configureDiagramNavigationActionsManager​(ActionsManager manager,
                                                             @CheckForNull
                                                             java.lang.String diagramType)
        Configures diagram navigation toolbar.
        Parameters:
        manager - manager to configure.
      • removeMainShortcutsConfigurator

        @OpenApi
        public void removeMainShortcutsConfigurator​(AMConfigurator configurator)
        Removes configurator for main shortcuts.
        Parameters:
        configurator - configurator will be removed.
      • addMainShortcutsConfigurator

        @OpenApi
        public void addMainShortcutsConfigurator​(AMConfigurator configurator)
        Adds configurator for main shortcuts.
        Parameters:
        configurator - configurator will be added.
      • configureCustomizableShortcutsAM

        public void configureCustomizableShortcutsAM​(ActionsManager manager)
        Configures main shortcuts.
        Parameters:
        manager - manager to be configured.
      • removeCustomizableShortcutsConfigurator

        @OpenApi
        public void removeCustomizableShortcutsConfigurator​(AMConfigurator configurator)
        Removes configurator for main shortcuts.
        Parameters:
        configurator - configurator will be removed.
      • addCustomizableShortcutsConfigurator

        @OpenApi
        public void addCustomizableShortcutsConfigurator​(AMConfigurator configurator)
        Adds configurator for main shortcuts.
        Parameters:
        configurator - configurator will be added.
      • configureMainShortcutsAM

        public void configureMainShortcutsAM​(ActionsManager manager)
        Configures main shortcuts.
        Parameters:
        manager - manager to be configured.
      • addMainToolbarConfigurator

        @OpenApi
        public void addMainToolbarConfigurator​(AMConfigurator configurator)
        Adds configurator to main toolbar. This method should be called before toolbar becomes visible.
        Parameters:
        configurator - configurator will be added.
      • removeMainToolbarConfigurator

        @OpenApi
        public void removeMainToolbarConfigurator​(AMConfigurator configurator)
        Removes configurator from main toolbar.
        Parameters:
        configurator - configurator will be removed.
      • configureMainToolbarAM

        public void configureMainToolbarAM​(ActionsManager manager)
        Configures main toolbar.
        Parameters:
        manager - manager to be configured.
      • addConfigurator

        private void addConfigurator​(java.lang.String name,
                                     ConfiguratorWithPriority configurator)
        Adds configurator with name to map.
        Parameters:
        name - configurator name.
        configurator - configurator to add.
      • addObject

        private static <T> void addObject​(java.util.Map<java.lang.String,​java.util.List<T>> map,
                                          java.lang.String name,
                                          T t)
      • removeObject

        private void removeObject​(java.lang.String name,
                                  ConfiguratorWithPriority configurator)
        Removes configurator from map.
        Parameters:
        name - configurator name.
        configurator - configurator to remove.
      • removeObject

        private static <T> void removeObject​(java.util.Map<java.lang.String,​java.util.List<T>> map,
                                             java.lang.String name,
                                             T t)
      • configureBrowserContextAM

        private void configureBrowserContextAM​(java.lang.String name,
                                               ActionsManager manager,
                                               Tree browser)
        Configures browser menu.
        Parameters:
        manager - manager to be configured.
        name - configurator name used for configuration.
        browser - browser which used for context menu.
      • configureBrowserToolbarAM

        private void configureBrowserToolbarAM​(java.lang.String name,
                                               ActionsManager manager,
                                               Tree browser)
        Configures browser toolbar.
        Parameters:
        manager - manager to be configured.
        name - configurator name used for configuration.
        browser - browser which used for context menu.
      • sortConfigurators

        private static void sortConfigurators​(java.util.List<? extends ConfiguratorWithPriority> configurators)
      • getDiagramToolbarActionProviders

        public java.util.List<CustomizableDiagramToolbarActionsProvider> getDiagramToolbarActionProviders​(java.lang.String diagramType)
        Returns action providers for specified diagram type. Providers registered to super types of diagram type are included.
        Parameters:
        diagramType - diagram type.
        Returns:
        list of action providers.
      • addDiagramToolbarActionsProvider

        @OpenApi
        public void addDiagramToolbarActionsProvider​(java.lang.String diagramType,
                                                     CustomizableDiagramToolbarActionsProvider provider)
        Adds new toolbar provider for given diagram type.
        Parameters:
        diagramType - diagram type.
        provider - action provider to be added.
      • removeDiagramToolbarActionsProvider

        @OpenApi
        public void removeDiagramToolbarActionsProvider​(java.lang.String diagramType,
                                                        CustomizableDiagramToolbarActionsProvider provider)
        Removes action provider for specified diagram type.
        Parameters:
        diagramType - diagram type
        provider - action provider to be removed.
      • newDiagramTypeDefined

        public void newDiagramTypeDefined​(java.lang.String diagramType)
        This method should be called when new diagram type is defined in application. It takes all previously registered "baseDiagram" context and context toolbar configurators and registers for appeared diagram if needed
        Parameters:
        diagramType - diagram type
      • configure

        private void configure​(java.lang.String name,
                               ActionsManager manager)
      • configure

        private <T extends ConfiguratorWithPriority> void configure​(java.lang.String key,
                                                                    java.util.function.Consumer<T> configureFunction)
      • configure

        private static <T extends ConfiguratorWithPriority> void configure​(@CheckForNull
                                                                           java.util.Collection<T> configurators,
                                                                           java.util.function.Consumer<T> configureFunction)
      • collectConfigurators

        @CheckForNull
        private <T extends ConfiguratorWithPriority> java.util.List<T> collectConfigurators​(java.lang.String key)
      • addAll

        private static <T extends ConfiguratorWithPriority> void addAll​(java.util.Collection<T> list,
                                                                        java.util.Collection<T> toAdd)