Class FragmentCreator
java.lang.Object
io.jmix.bpmflowui.view.modeler.impl.FragmentCreator
-
Constructor Summary
ConstructorsConstructorDescriptionFragmentCreator(DialogWindows dialogWindows, Views views, ModelElementsCreator modelElementsCreator, Fragments fragments) -
Method Summary
Modifier and TypeMethodDescriptioncreate(View<?> owner, Object editedEntity, Class<? extends StandardDetailView<?>> fragmentClass) Creates details view as editor fragment, that can be attached to any ui component as ui component Supported BeforeShowEventFragment<?> createFragment(View<?> owner, Class<? extends Fragment<?>> fragmentClass) Creates a plainFragmentto be attached inside a properties panel.createList(Class<? extends StandardView> fragmentClass) Creates details view as list fragment Delegates creation to io.jmix.flowui.Views class<T extends AbstractElementPropertiesComponent<Object>>
TcreatePropertiesComponent(View<?> owner, String jsonEntity, BpmnModeler modeler, @Nullable String elementType, Class<? extends AbstractElementPropertiesComponent> fragmentClass) Creates root fragments for one of bpmn schema elements such as ServiceTask, UserTask, StartEvent etccreatePropertiesFragment(View<?> owner, String jsonEntity, BpmnModeler modeler, @Nullable String elementType, Class<? extends ElementPropertiesFragment> fragmentClass) Creates a root properties panel implemented as a Jmix fragment (seeElementPropertiesFragment) for the selected BPMN element.createView(AbstractElementPropertiesComponent<?> owner, Object editedEntity, Class<? extends AbstractElementPropertiesComponent<?>> fragmentClass) Creates AbstractElementPropertiesComponent fragment (base view that contains one of bpm model)voidfireReadyEvent(View<?> view) FiresView.ReadyEventto applySettings.protected voidinitFragmentSettings(Fragment<?> fragment) Applies and arranges saving of the UI settings of a properties-panel fragment.
-
Constructor Details
-
FragmentCreator
public FragmentCreator(DialogWindows dialogWindows, Views views, ModelElementsCreator modelElementsCreator, Fragments fragments)
-
-
Method Details
-
create
public StandardDetailView<?> create(View<?> owner, Object editedEntity, Class<? extends StandardDetailView<?>> fragmentClass) Creates details view as editor fragment, that can be attached to any ui component as ui component Supported BeforeShowEvent- Parameters:
owner- parent component vieweditedEntity- dataContainer entity holderfragmentClass- class of fragment, that will be created- Returns:
- initialized fragment, before show event fired
-
createList
Creates details view as list fragment Delegates creation to io.jmix.flowui.Views class- Parameters:
fragmentClass- fragmentClass class of fragment, that will be created- Returns:
- ListView initialized class
-
fireReadyEvent
FiresView.ReadyEventto applySettings.- Parameters:
view- view to apply settings
-
createPropertiesComponent
public <T extends AbstractElementPropertiesComponent<Object>> T createPropertiesComponent(View<?> owner, String jsonEntity, BpmnModeler modeler, @Nullable String elementType, Class<? extends AbstractElementPropertiesComponent> fragmentClass) Creates root fragments for one of bpmn schema elements such as ServiceTask, UserTask, StartEvent etc- Type Parameters:
T- model class, that fragment holds inside- Parameters:
owner- modeler viewjsonEntity- raw (json) data of selected element in modelermodeler- modeler instanceelementType- BPMN type of the selected element (e.g.bpmn:EndEvent), passed to fragments implementingElementTypeAwarefragmentClass- class of root fragment- Returns:
- instanced AbstractElementPropertiesComponent Fragment, that root for one of bpmn schema elements
-
createPropertiesFragment
public ElementPropertiesFragment<?> createPropertiesFragment(View<?> owner, String jsonEntity, BpmnModeler modeler, @Nullable String elementType, Class<? extends ElementPropertiesFragment> fragmentClass) Creates a root properties panel implemented as a Jmix fragment (seeElementPropertiesFragment) for the selected BPMN element.- Parameters:
owner- modeler view hosting the paneljsonEntity- raw (json) data of the selected element in the modelermodeler- modeler instanceelementType- BPMN type of the selected element (e.g.bpmn:EndEvent), passed to fragments implementingElementTypeAwarefragmentClass- fragment class implementingElementPropertiesFragment- Returns:
- initialized fragment with the modeler and element model set
-
createFragment
Creates a plainFragmentto be attached inside a properties panel. A stable id is assigned (descriptor processing requires one for a programmatically created fragment).- Parameters:
owner- view hosting the fragmentfragmentClass- fragment class to create- Returns:
- the initialized fragment
-
initFragmentSettings
Applies and arranges saving of the UI settings of a properties-panel fragment.A fragment's settings facet is driven by the host view lifecycle (apply on ready, save on detach), which has already passed when a panel is created on element selection — so settings are applied here explicitly and saved when the panel is removed on the next selection change.
- Parameters:
fragment- properties-panel fragment to process
-
createView
public AbstractElementPropertiesComponent<?> createView(AbstractElementPropertiesComponent<?> owner, Object editedEntity, Class<? extends AbstractElementPropertiesComponent<?>> fragmentClass) Creates AbstractElementPropertiesComponent fragment (base view that contains one of bpm model)- Parameters:
owner- parent view of this fragmenteditedEntity- model instance that contains inside fragment viewfragmentClass- fragment class to craete- Returns:
- instanced AbstractElementPropertiesComponent, that already contains editedEntity
-