Class DMNDiagramEditor

  • All Implemented Interfaces:
    org.kie.workbench.common.widgets.metadata.client.KieEditorWrapperView.KieEditorWrapperPresenter

    @Dependent
    public class DMNDiagramEditor
    extends org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor

        org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor.View
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected static int DATA_TYPES_PAGE_INDEX  
      static String EDITOR_ID  
      • Fields inherited from class org.kie.workbench.common.widgets.metadata.client.KieEditor

        alertsButtonMenuItemBuilder, assetUpdateValidator, copyPopUpPresenter, docks, fileMenuBuilder, kieView, metadata, overviewWidget, perspectiveManager, projectController, renamePopUpPresenter, savePopUpPresenter, workbenchContext
      • Fields inherited from class org.uberfire.ext.editor.commons.client.BaseEditor

        baseView, changeTitleNotification, concurrentChangePopup, concurrentDeleteAcceptedEvent, concurrentDeleteIgnoredEvent, concurrentRenameAcceptedEvent, concurrentRenameIgnoredEvent, concurrentUpdateSessionInfo, deletePopUpPresenter, fileNameValidator, isReadOnly, isValidationRunning, makeMenuBarPromise, menuBuilder, menuBuilderManagedInstance, menuItems, menus, metadataOriginalHash, notification, originalHash, place, placeManager, promises, saveAndRenameCommandBuilder, saveWithComments, type, versionRecordManager
    • Constructor Summary

      Constructors 
      Constructor Description
      DMNDiagramEditor​(org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor.View view, javax.enterprise.event.Event<org.kie.workbench.common.stunner.project.client.editor.event.OnDiagramFocusEvent> onDiagramFocusEvent, javax.enterprise.event.Event<org.kie.workbench.common.stunner.project.client.editor.event.OnDiagramLoseFocusEvent> onDiagramLostFocusEvent, org.kie.workbench.common.stunner.core.documentation.DocumentationView documentationView, DMNDiagramResourceType resourceType, DMNEditorMenuSessionItems menuSessionItems, org.kie.workbench.common.stunner.project.client.screens.ProjectMessagesListener projectMessagesListener, org.kie.workbench.common.stunner.core.client.i18n.ClientTranslationService translationService, org.kie.workbench.common.stunner.project.client.service.ClientProjectDiagramService projectDiagramServices, org.jboss.errai.common.client.api.Caller<org.kie.workbench.common.stunner.project.service.ProjectDiagramResourceService> projectDiagramResourceServiceCaller, org.kie.workbench.common.stunner.client.widgets.editor.StunnerEditor stunnerEditor, org.kie.workbench.common.stunner.core.client.api.SessionManager sessionManager, org.kie.workbench.common.stunner.core.client.command.SessionCommandManager<org.kie.workbench.common.stunner.core.client.canvas.AbstractCanvasHandler> sessionCommandManager, javax.enterprise.event.Event<org.kie.workbench.common.stunner.forms.client.event.RefreshFormPropertiesEvent> refreshFormPropertiesEvent, org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorDock decisionNavigatorDock, org.kie.workbench.common.stunner.core.client.components.layout.LayoutHelper layoutHelper, org.kie.workbench.common.stunner.core.client.components.layout.OpenDiagramLayoutExecutor openDiagramLayoutExecutor, org.kie.workbench.common.dmn.client.editors.types.DataTypesPage dataTypesPage, org.kie.workbench.common.dmn.client.editors.included.IncludedModelsPage includedModelsPage, org.kie.workbench.common.dmn.client.editors.search.DMNEditorSearchIndex editorSearchIndex, org.kie.workbench.common.widgets.client.search.component.SearchBarComponent<org.kie.workbench.common.dmn.client.editors.search.DMNSearchableElement> searchBarComponent, org.kie.workbench.common.dmn.client.widgets.codecompletion.MonacoFEELInitializer feelInitializer, org.kie.workbench.common.dmn.client.editors.drd.DRDNameChanger drdNameChanger, org.kie.workbench.common.dmn.client.docks.navigator.common.LazyCanvasFocusUtils lazyCanvasFocusUtils, org.kie.workbench.common.dmn.client.docks.navigator.drds.DMNDiagramsSession diagramsSession, org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorPresenter decisionNavigatorPresenter)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected Integer getCurrentContentHash()  
      Annotation[] getDockQualifiers()  
      String getEditorIdentifier()  
      void getMenus​(Consumer<org.uberfire.workbench.model.menu.Menus> menusConsumer)  
      com.google.gwt.user.client.ui.IsWidget getTitle()  
      String getTitleText()  
      com.google.gwt.user.client.ui.IsWidget getWidget()  
      void hideDocks()  
      void init()  
      void initialiseKieEditorForSession​(org.kie.workbench.common.stunner.project.diagram.ProjectDiagram diagram)  
      boolean isSaveAllowedAfterValidationFailed​(org.kie.workbench.common.stunner.core.validation.Violation.Type maxSeverity)
      Stunner validates diagrams before saving them.
      void onClose()  
      void onDataTypeEditModeToggle​(org.kie.workbench.common.dmn.client.editors.types.listview.common.DataTypeEditModeToggleEvent event)  
      void onDataTypePageNavTabActiveEvent​(org.kie.workbench.common.dmn.client.editors.types.DataTypePageTabActiveEvent event)  
      void onFocus()  
      void onLostFocus()  
      boolean onMayClose()  
      void onMultiPageEditorSelectedPageEvent​(org.uberfire.client.views.pfly.multipage.MultiPageEditorSelectedPageEvent event)  
      void onOpen()  
      void onRefreshFormPropertiesEvent​(org.kie.workbench.common.stunner.forms.client.event.RefreshFormPropertiesEvent event)  
      void onStartup​(org.uberfire.backend.vfs.ObservablePath path, org.uberfire.mvp.PlaceRequest place)  
      void open​(org.kie.workbench.common.stunner.project.diagram.ProjectDiagram diagram, org.kie.workbench.common.stunner.client.widgets.presenters.session.SessionPresenter.SessionPresenterCallback callback)  
      protected void resetEditorPages​(org.guvnor.common.services.shared.metadata.model.Overview overview)  
      protected void resetEditorPagesOnLoadError​(org.guvnor.common.services.shared.metadata.model.Overview overview)  
      void showDocks()  
      • Methods inherited from class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor

        addDocumentationPage, beforeOpen, destroySession, doClose, doStartUp, formatTitle, getContentSupplier, getMenuSessionItems, getSaveAndRename, getSaveAndRenameServiceCaller, getSaveSuccessCallback, getStunnerEditor, getTranslationService, getView, hasUnsavedChanges, hideLoadingViews, isSameSession, loadContent, makeAdditionalStunnerMenus, makeMenuBar, onError, onSave, onSaveSuccess, onSuccess, onValidate, open, save, setOriginalHash, showLoadingViews, showSavingViews, updateTitle
      • Methods inherited from class org.kie.workbench.common.widgets.metadata.client.KieEditor

        addCommonActions, addCopy, addDelete, addDownloadMenuItem, addImportsTab, addPage, addRename, addSave, addSourcePage, addTabBarWidget, buildMenuBar, createOriginalHash, getCouldNotGenerateSourceErrorCallback, getMetadataSupplier, getNoSuchFileExceptionErrorCallback, getRenameValidator, getSelectedTabIndex, init, init, init, init, isEditorTabSelected, isOverviewTabSelected, mayClose, mayClose, onEditTabSelected, onEditTabUnselected, onHideDocks, onOverviewSelected, onRepositoryRemoved, onShowDiagramEditorDocks, onSourceTabSelected, registerDock, resetMetadata, save, saveAction, selectEditorTab, selectOverviewTab, setSelectedTab, showVersions, updateSource, verifyEventIdentifier
      • Methods inherited from class org.uberfire.ext.editor.commons.client.BaseEditor

        addDownloadMenuItem, disableMenuItem, downloadMenuItem, enableMenuItem, getBeforeSaveAndRenameCommand, getCopyServiceCaller, getCopyValidator, getDeleteServiceCaller, getPathSupplier, getRenameServiceCaller, getSaveAndRenameCommandBuilder, getSaveValidator, getValidateCommand, getVersionRecordManager, init, isDirty, isDirtySupplier, onAfterValidate, onBeforeValidate, onRename, onRestore, reload, setMetadataOriginalHash, showConcurrentUpdatePopup
    • Constructor Detail

      • DMNDiagramEditor

        @Inject
        public DMNDiagramEditor​(org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor.View view,
                                javax.enterprise.event.Event<org.kie.workbench.common.stunner.project.client.editor.event.OnDiagramFocusEvent> onDiagramFocusEvent,
                                javax.enterprise.event.Event<org.kie.workbench.common.stunner.project.client.editor.event.OnDiagramLoseFocusEvent> onDiagramLostFocusEvent,
                                org.kie.workbench.common.stunner.core.documentation.DocumentationView documentationView,
                                DMNDiagramResourceType resourceType,
                                DMNEditorMenuSessionItems menuSessionItems,
                                org.kie.workbench.common.stunner.project.client.screens.ProjectMessagesListener projectMessagesListener,
                                org.kie.workbench.common.stunner.core.client.i18n.ClientTranslationService translationService,
                                org.kie.workbench.common.stunner.project.client.service.ClientProjectDiagramService projectDiagramServices,
                                org.jboss.errai.common.client.api.Caller<org.kie.workbench.common.stunner.project.service.ProjectDiagramResourceService> projectDiagramResourceServiceCaller,
                                org.kie.workbench.common.stunner.client.widgets.editor.StunnerEditor stunnerEditor,
                                org.kie.workbench.common.stunner.core.client.api.SessionManager sessionManager,
                                org.kie.workbench.common.stunner.core.client.command.SessionCommandManager<org.kie.workbench.common.stunner.core.client.canvas.AbstractCanvasHandler> sessionCommandManager,
                                javax.enterprise.event.Event<org.kie.workbench.common.stunner.forms.client.event.RefreshFormPropertiesEvent> refreshFormPropertiesEvent,
                                org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorDock decisionNavigatorDock,
                                org.kie.workbench.common.stunner.core.client.components.layout.LayoutHelper layoutHelper,
                                org.kie.workbench.common.stunner.core.client.components.layout.OpenDiagramLayoutExecutor openDiagramLayoutExecutor,
                                org.kie.workbench.common.dmn.client.editors.types.DataTypesPage dataTypesPage,
                                org.kie.workbench.common.dmn.client.editors.included.IncludedModelsPage includedModelsPage,
                                org.kie.workbench.common.dmn.client.editors.search.DMNEditorSearchIndex editorSearchIndex,
                                org.kie.workbench.common.widgets.client.search.component.SearchBarComponent<org.kie.workbench.common.dmn.client.editors.search.DMNSearchableElement> searchBarComponent,
                                org.kie.workbench.common.dmn.client.widgets.codecompletion.MonacoFEELInitializer feelInitializer,
                                org.kie.workbench.common.dmn.client.editors.drd.DRDNameChanger drdNameChanger,
                                org.kie.workbench.common.dmn.client.docks.navigator.common.LazyCanvasFocusUtils lazyCanvasFocusUtils,
                                org.kie.workbench.common.dmn.client.docks.navigator.drds.DMNDiagramsSession diagramsSession,
                                org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorPresenter decisionNavigatorPresenter)
    • Method Detail

      • onStartup

        public void onStartup​(org.uberfire.backend.vfs.ObservablePath path,
                              org.uberfire.mvp.PlaceRequest place)
      • initialiseKieEditorForSession

        public void initialiseKieEditorForSession​(org.kie.workbench.common.stunner.project.diagram.ProjectDiagram diagram)
        Overrides:
        initialiseKieEditorForSession in class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
      • resetEditorPages

        protected void resetEditorPages​(org.guvnor.common.services.shared.metadata.model.Overview overview)
        Overrides:
        resetEditorPages in class org.kie.workbench.common.widgets.metadata.client.KieEditor<org.kie.workbench.common.stunner.project.diagram.ProjectDiagram>
      • resetEditorPagesOnLoadError

        protected void resetEditorPagesOnLoadError​(org.guvnor.common.services.shared.metadata.model.Overview overview)
        Overrides:
        resetEditorPagesOnLoadError in class org.kie.workbench.common.widgets.metadata.client.KieEditor<org.kie.workbench.common.stunner.project.diagram.ProjectDiagram>
      • showDocks

        public void showDocks()
        Overrides:
        showDocks in class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
      • getDockQualifiers

        public Annotation[] getDockQualifiers()
        Overrides:
        getDockQualifiers in class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
      • hideDocks

        public void hideDocks()
        Overrides:
        hideDocks in class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
      • onMultiPageEditorSelectedPageEvent

        public void onMultiPageEditorSelectedPageEvent​(@Observes
                                                       org.uberfire.client.views.pfly.multipage.MultiPageEditorSelectedPageEvent event)
      • onRefreshFormPropertiesEvent

        public void onRefreshFormPropertiesEvent​(@Observes
                                                 org.kie.workbench.common.stunner.forms.client.event.RefreshFormPropertiesEvent event)
      • getCurrentContentHash

        protected Integer getCurrentContentHash()
        Overrides:
        getCurrentContentHash in class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
      • isSaveAllowedAfterValidationFailed

        public boolean isSaveAllowedAfterValidationFailed​(org.kie.workbench.common.stunner.core.validation.Violation.Type maxSeverity)
        Stunner validates diagrams before saving them. If a {@see Violation.Type.ERROR} is reported by the underlying validation implementation Stunner prevents saving of the diagram. DMN's validation reports errors for states that can be successfully saved as they represent a partially authored diagram. Therefore override Stunners behavior and prevent saving of DMN diagrams containing errors.
        Overrides:
        isSaveAllowedAfterValidationFailed in class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
      • onDataTypePageNavTabActiveEvent

        public void onDataTypePageNavTabActiveEvent​(@Observes
                                                    org.kie.workbench.common.dmn.client.editors.types.DataTypePageTabActiveEvent event)
      • open

        public void open​(org.kie.workbench.common.stunner.project.diagram.ProjectDiagram diagram,
                         org.kie.workbench.common.stunner.client.widgets.presenters.session.SessionPresenter.SessionPresenterCallback callback)
        Overrides:
        open in class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
      • onOpen

        public void onOpen()
      • onClose

        public void onClose()
        Overrides:
        onClose in class org.kie.workbench.common.widgets.metadata.client.KieEditor<org.kie.workbench.common.stunner.project.diagram.ProjectDiagram>
      • onFocus

        @OnFocus
        public void onFocus()
      • onLostFocus

        @OnLostFocus
        public void onLostFocus()
      • getTitle

        public com.google.gwt.user.client.ui.IsWidget getTitle()
        Overrides:
        getTitle in class org.uberfire.ext.editor.commons.client.BaseEditor<org.kie.workbench.common.stunner.project.diagram.ProjectDiagram,​org.guvnor.common.services.shared.metadata.model.Metadata>
      • getTitleText

        public String getTitleText()
        Overrides:
        getTitleText in class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
      • getMenus

        public void getMenus​(Consumer<org.uberfire.workbench.model.menu.Menus> menusConsumer)
        Overrides:
        getMenus in class org.uberfire.ext.editor.commons.client.BaseEditor<org.kie.workbench.common.stunner.project.diagram.ProjectDiagram,​org.guvnor.common.services.shared.metadata.model.Metadata>
      • getWidget

        public com.google.gwt.user.client.ui.IsWidget getWidget()
        Overrides:
        getWidget in class org.kie.workbench.common.widgets.metadata.client.KieEditor<org.kie.workbench.common.stunner.project.diagram.ProjectDiagram>
      • onMayClose

        @OnMayClose
        public boolean onMayClose()
      • getEditorIdentifier

        public String getEditorIdentifier()
        Specified by:
        getEditorIdentifier in class org.kie.workbench.common.stunner.project.client.editor.AbstractProjectDiagramEditor<DMNDiagramResourceType>
      • onDataTypeEditModeToggle

        public void onDataTypeEditModeToggle​(@Observes
                                             org.kie.workbench.common.dmn.client.editors.types.listview.common.DataTypeEditModeToggleEvent event)