Magnolia 5.3 reached end of life on June 30, 2017. This branch is no longer supported, see End-of-life policy.

Page tree
Skip to end of metadata
Go to start of metadata

A choose dialog allows you to select an item from an app, typically from a content app. Below is a choose dialog for choosing a page. The dialog displays the workbench from the Pages app. You typically open a choose dialog by clicking a link field in some other dialog. Configure the choose dialog under the app that manages the items.

Choosing items from content apps

A content app already has a suitable view for choosing items: the workbench of the first subapp. You don't need to configure a choose dialog explicitly. ContentApp  creates a ChooseDialogDefinition programmatically. A  WorkbenchFieldDefinition  and a  ContentConnectorDefinition  are instantiated In the ContentApp#openChooseDialog method. Values for the definition classes are cloned from the first subapp of the app.

Configuring a choose dialog

You don't need to configure a choose dialog when choosing items from a content app. The workbench of the first subapp works as an item chooser automatically.

You can configure a choose dialog explicitly if required. Create a chooseDialog node under the app configuration.

Node nameValue

 <module name>

 

 apps

 

 <app name>

 

 chooseDialog

 

  class

<fully-qualified class name of your ChooseDialogDefinition>

 contentConnector

 

 class

<fully-qualified class name of your ContentConnectorDefinition>

 field

 

  class

<fully-qualified class name of your FieldDefinition>

Properties:

  • class: A choose dialog definition class implementing info.magnolia.ui.dialog.definition.ChooseDialogDefinition
    Its default implementation is info.magnolia.ui.dialog.definition.ConfiguredChooseDialogDefinition (due to registration magnolia-ui-framework/src/main/resources/META-INF/magnolia/ui-framework.xml). Leave out the class property to use the default implementation.
  • contentConnector
  • field:
    • class: A field used to choose the item, typically a workbench. The value must be a subclass of info.magnolia.ui.form.field.definition.FieldDefinition. This means it can be many kind of fields, for instance a SelectFieldDefinition  or a more complex custom field.

Note that ChooseDialogDefinition extends DialogDefinition. This means you can also configure actions (Select and Cancel by default) and an actionArea (optional).

Configuring a workbench

If you want to configure a custom workbench, use info.magnolia.ui.contentapp.field.WorkbenchFieldDefinition as field.

Node nameValue

 chooseDialog

 

 field

 

  class

info.magnolia.ui.contentapp.field.WorkbenchFieldDefinition

  workbench

 

  extends

../../../subApps/browser/workbench

  imageProvider

 

Properties:

  • field
    • classinfo.magnolia.ui.contentapp.field.WorkbenchFieldDefinition
    • workbenchExtend an existing workbench definition or use any properties from the workbench definition.
    • imageProvider: Optional.

 

  • No labels